A procedural character generator that creates unique "candy people" characters — using custom Bézier tube geometry written from scratch to produce organic, non-primitive body shapes with varied accessories and billboard faces.
This project was a solo PCG course project with the goal of generating diverse, appealing characters using entirely procedural geometry — no artist-created meshes allowed. The design direction was "candy people" inspired by Adventure Time: round, colourful, and slightly wobbly.
The most technically interesting aspect is the Bézier tube system, which was written entirely from scratch. Rather than extruding a circle along a straight spine (which would produce rigid tubes), the system curves the spine along a Bézier path — producing the soft, organic limb shapes characteristic of the style.
Custom Bézier Tube CodeWrote a Bézier tube generator from scratch that extrudes a circular cross-section along a curved Bézier spine. This produces continuous, organic body parts — arms with natural curves and wobble — that would be impossible to achieve with Unity's primitive geometry.
Varied Body TypesImplemented multiple body types including the standard round torso and a distinct "donut" variant — each generated procedurally and combined with appropriate limb geometry. The donut body required a separate torus mesh generation routine.
Wobbly Arm GenerationArms are generated with randomized Bézier control points, producing varied poses and shapes for each character — no two characters have the same arm positions or proportions.
Billboard Faces & Prefab HatsCharacters receive procedurally-placed billboard face sprites and randomly selected hat accessories from a prefab pool — giving each character a distinct personality while keeping the system data-driven and extensible.