HeadlinesBriefing favicon HeadlinesBriefing.com

Curveball: Rust Tool for Neverball Level Design

Hacker News •
×

Curveball is a new curve generator for the open-source game Neverball, written in Rust and available as a web app or desktop tool. It addresses limitations in Neverball's existing curve.c utility, which only creates circular arcs. The creator built Curveball to enable more complex geometric shapes for level design, hosting the source code on GitHub for community use.

The tool leverages the convex hull algorithm via the chull Rust crate to generate shapes by defining vertices rather than manually positioning points. Curveball uses an extrusion method inspired by CAD software, copying 2D profiles along paths to create 3D curves. This approach allows combining different profiles and paths to produce numerous curve variations, significantly expanding design possibilities for level creators.

A key challenge involved rotating profiles along paths, requiring implementation of the Frenet frame mathematical model to handle torsion and orientation. The tool offers optional rotation controls and supports multiple curve types beyond extrusions. The developer plans to integrate Curveball into active level development, enabling more creative geometry in Neverball's community-driven content.