Overview
Manifest is a touch-first 3D tool where kids can draw a shape to make a solid, then sketch directly on the model to grow new parts. It exports clean GLB/GLTF/OBJ/STL so creations open in Blender or head to a 3D printer. The goal: an accessible, intuitive path from finger drawing to real 3D.

Idea
I wanted to build a playful 3D tool where kids make shapes the way they naturally think—by drawing. Instead of juggling menus, you draw a 2D outline to create a base, then tap the model and draw again to add perpendicular patches that stick out from the surface. It encourages curiosity and gives a path to real 3D that works in Blender.
Process & Design
I studied beginner-friendly 3D tools and focused on freehand input that still maps to solid geometry. A transparent draw canvas sits above the WebGL view:
- Touch-first: big buttons, simple Draw / Orbit, and a Reset View if you get lost.
- No surprise camera moves: the view recenters only for the first object; later edits don’t jump.
- Must-touch rule: new parts only add if the stroke starts on the model (no floating bits).
- Perpendicular by construction: a local paint plane is built at your tap; extrusion follows its outward normal.
- Cross-sections & loft for curvier forms; section outlines remain visible and deletable.
- Export: GLB/GLTF/OBJ/STL for Blender and printing.
Testing & Play
Friends (and kids) figured it out quickly—draw an abstract outline, release then orbit, and a new form appears. Interestingly, large amounts of interaction were purely to enteratin how random shapes would form, specifically considering their placement.
What I learned:
- Being forgiving matters—wobbly strokes should still create confident forms.
- Diagonal/curved surfaces are common; a robust local-plane normal plus a tiny offset prevents “absorbed” patches.
- A short onboarding card (“draw to make a shape, tap the model to add more”) speeds first-time success.
How it Works
- Stroke capture: a top canvas records your path and shows it immediately.
-
Raycasting on first tap:
- Hit the model → build a local paint plane (Z = outward normal; flipped by view if needed).
- No hit & first object → project to the floor under your stroke and make the base there.
-
Geometry:
- Extrude/Lathe for bases (auto-close if endpoints are near).
- Perpendicular patches extrude along plane +Z with a tiny epsilon offset (no z-fighting).
- Loft resamples section loops and stitches them with caps.
- Camera: OrbitControls; inputs route to drawing in Draw mode. Reset View frames the build.
- Selection: In Orbit mode, tap a part/section outline to select & delete.

What’s Next
- Smoother stroke cleanup and optional rounded bevels.
- Simple booleans (cut/union) for advanced edits.
- Save/load projects and a kid-friendly gallery.
- Guided builds (“Make a mug,” “Make a rocket”) for classrooms.
- Teacher mode for sharing prompts and collecting results.
Why this project
I want to build educational tools that turn playful gestures into real creative power. Manifest explores how to make 3D feel as natural as drawing—while keeping an on-ramp to professional workflows like Blender.