A professional node-based procedural 3D modeling tool with real-time workflows and parametric control.
⚠️ Early Development: Nodo is actively being developed. Features and APIs may change. Use for experimentation and provide feedback!
Nodo brings Houdini-inspired procedural modeling to everyone:
- 🔥 Visual node-based workflow - Connect nodes to build complex geometry
- ⚡ Real-time updates - See changes instantly as you work
- 🧠 Expression system - Parameter-driven workflows with math expressions
- 🎯 Production-ready - 44+ nodes for complete modeling workflows
- Generators: Box, Sphere, Cylinder, Torus, Grid, Line
- Modifiers: Extrude, Subdivide, Smooth, Noise, Bevel, Mirror, Bend, Twist
- Transform: Transform, Array, Copy to Points, Scatter, Align
- Boolean: Union, Intersection, Difference, Merge, Split
- Attributes: Wrangle (expressions), Color, Normal, UV Unwrap
- Groups: Create, Delete, Combine, Promote, Expand, Transfer
- Advanced: Geodesic, Remesh, Parameterize, Curvature, Repair
- Utility: Switch, Null, Output, File I/O
- Parameter expressions:
$F * 0.1,ch("../box/size") - Math functions:
sin(),cos(),rand(),noise() - Channel references: Link parameters across nodes
- Graph parameters: Expose controls for entire graphs
- Real-time preview: See changes as you modify parameters
- Undo/Redo: Full history with Ctrl+Z/Ctrl+Y
- Keyboard shortcuts: Professional workflow navigation
- File format: OBJ import/export with full attribute support
- CLI tool: Headless batch processing (nodo_cli)
Nodo is in active development with a stable core feature set.
See ROADMAP.md for upcoming features and long-term vision.
# 1. Install Conan
pip install "conan>=2.0"
# 2. Clone and build
git clone https://github.com/dehnda/nodo.git
cd nodo
conan install . --build=missing
cmake --preset conan-debug
cmake --build --preset conan-debug --parallel
# 3. Run the application
./build/Debug/nodo_studio/nodo_studioSee BUILD.md for complete instructions including:
- Platform-specific setup (Linux, Windows)
- Debug vs Release configurations
- Enabling tests
- Troubleshooting common issues
- Windows release packaging
include/nodo/
├── core/ # Core data structures (Mesh, Point, Vector)
├── geometry/ # Mesh generation and boolean operations
├── gpu/ # GPU acceleration (OpenGL compute shaders)
├── nodes/ # Node-based procedural system
└── io/ # Import/export functionality (OBJ, future: STL, glTF)
src/
├── core/ # Core implementations
├── geometry/ # Geometry processing implementations
├── gpu/ # GPU compute implementations
├── nodes/ # Node system implementations
└── io/ # I/O implementations
examples/ # Usage examples and demos
tests/ # Unit tests (44 passing tests)
Comprehensive documentation is available:
- 📖 Online Documentation - Complete user guide and API reference
- ROADMAP.md - Development roadmap and future plans
- BUILD.md - Build instructions for all platforms
MIT License - Copyright (c) 2025 Daniel Dehne
This project is open source and free to use. See LICENSE for full details. Third-party components are used under their respective licenses (see THIRD_PARTY_LICENSES.txt).
