Non-destructive CSG brush modeling for Unity. Build geometry with boolean operations in real-time.
Real-time face hover, operation-colored wireframes, and click-to-select in the Unity editor.
Not just an editor tool. RuntimeCSG works at runtime for procedural levels, destructible environments, and player-built worlds. Tested across Unity 2022.3, 6000.1, and 6000.3 with 185 passing tests (143 editor + 42 runtime).
Combine simple brushes into complex geometry with real-time boolean operations.
A + B
Merge brushes together. Add geometry to build up your scene.
A − B
Carve and cut. Remove geometry to create holes, doorways, windows.
A ∩ B
Keep only the overlap. Create complex shapes from simple primitives.
Scene overlay toolbar, keyboard shortcuts, and visual feedback so you never leave the viewport.
Chisel-style algorithm processes each brush independently. Fragments are split and evaluated against the full boolean chain.
World-space grid chunking with dirty tracking. Only affected chunks rebuild. Time-sliced across frames for smooth performance.
Full runtime API for procedural generation. Create, modify, and rebuild CSG geometry from code with 42 dedicated runtime tests.
Plane math uses doubles internally. No precision collapse at world-scale distances. Float only at mesh output.
Later-brush-wins tiebreaker prevents z-fighting. No duplicate surfaces or flickering between overlapping faces.
Each chunk generates a MeshCollider automatically. Physics-ready geometry with zero extra setup.
Full Unity Undo integration. Every brush add, shape change, and face drag is undoable.
185 tests passing across Unity 2022.3, 6000.1, and 6000.3. Editor and runtime coverage with CI validation.
Clean runtime/editor assembly split. No dependencies. Drop-in integration for any Unity project.
Start with built-in shapes. Combine them to build anything.
Chisel-style per-brush CSG in four steps.
Each brush's polygons are split against planes of all overlapping brushes, creating convex fragments.
Each fragment is classified as inside, outside, or coplanar relative to every other brush.
The boolean chain is evaluated for both sides of each fragment to determine visibility.
Visible fragments are clipped to chunk bounds and built into Unity meshes with colliders.
CSG at runtime in a few lines.
RuntimeCSG in action across different scenes and workflows.
Editor view with brush hierarchy and real-time preview
Complete scene built with boolean operations
Real-time CSG brush modeling workflow