3dSynth

Docs / Node Sculptor

Open in the interactive docs reader

Node Sculptor

Welcome to the playground where little nodes hold hands and make big things happen.

Node Sculptor is a node-based procedural modelling module. Instead of stacking effects on a single profile, you wire small pure-function nodes into a graph — curves, fields, transforms, surfaces, SDFs and toolpath operators — and the evaluator flows data rightward until it reaches a single Output node that drives the viewport and the G-code compiler.

It's the most flexible design module in 3dSynth: vases, lamps, functional parts, lattices, custom toolpath post-processors — all without leaving the canvas.

Pipeline Overview

Every Node Sculptor graph follows the same left-to-right flow:

  1. Inputs & curvesNumber, Vector3, Circle, Polygon, Rectangle, Superformula, etc. plant the seed geometry.
  2. Fields & transformsPoint Attractor, Noise Field, Move, Rotate, Array Polar, and friends reshape, displace and duplicate it.
  3. Surfaces & SDFsRevolve, Loft Profiles, Sweep Along Rail, or the signed-distance crowd (SDF · SphereMarching Cubes) turn 2D curves into 3D skin.
  4. ToolpathVase Spiralizer, Layer Stacker, Contour Slice, Modulate Toolpath stack or slice geometry into printable polylines.
  5. Output — The terminal node. Connect a Toolpath for G-code, or a Preview Mesh for viewport + STL export. The top-toolbar's Export button flips between G-code and Export Mesh automatically to match whichever socket you plugged.

The evaluator runs in a Web Worker so the UI stays responsive even when a chunky node (Marching Cubes at high resolution, Mesh Boolean, dense Loft…) is recomputing in the background.

Node Categories

The palette is organised into nine stable categories. The order reflects a typical authoring flow — inputs first, output last — and it's also the order you'll see in the Nodes dock and the Shift + A popup:

Inputs
Constant values and the printer itself \u2014 Number, Vector3, Print Bed.
Math
Scalar arithmetic that fits on one line \u2014 Expression, Binary Op, Unary Op, Sin/Cos, Remap, Graph Mapper, Random.
Vector & Transform
Vector algebra plus geometry transforms \u2014 Construct / Decompose Vector, Vector Op, Length, Move, Rotate, Scale, Mirror, Array Linear, Array Polar.
Curves & Profiles
2D/3D curve primitives and operators \u2014 Line, Arc, Circle, Ellipse, Rectangle, Polygon, Polyline, Interpolate Curve, Superformula, Divide Curve, Closest Point, Evaluate Curve, Offset Curve, Join Curves, Voronoi 2D.
Sets & Lists
Structured point/scalar streams \u2014 Series, Range, List Item, List Length.
Fields
Scalar fields sampled over points and applied to geometry \u2014 Point Attractor, Curve Attractor, Noise Field, Wave Field, Modulate Path, Modulate Toolpath.
Surfaces & Mesh
Surface sweeps, extrusions and signed distance fields \u2014 Tween / Loft Profiles, Revolve, Sweep Along Rail, Pipe Along Path, Extrude, SDF primitives & combinators, Marching Cubes, Mesh Boolean / Shell / Subdivide / Merge.
Toolpath
Slice, stack and post-process toolpaths \u2014 Slice, Layer Stacker, Vase Spiralizer, Contour Slice, Spiralize Contours, Seam Shift, Travel Optimize, Adaptive Layers, Flow Modulate.
Output
The single terminal node. The canvas is seeded with one, and it cannot be deleted \u2014 sorry, Output, you're here forever.

Starter Templates

A fresh Node Sculptor graph opens as Parametric Vase. Starter graphs live in the left dock Nodes tab under Templates \u2014 including a Sculptures group (string art, Peano plate, gyroid brick, trefoil knot) that is not a stacked vessel.

Blank Canvas
No patch \u2014 just the Output node. Hidden from the Nodes-tab list; start from scratch by deleting nodes.
String Art
Board and pegs you can print, plus chord tubes for a slicer. Crossing G-code at one Z is not a print.
Peano Plate
Two offset Peano fills plus a rim, stacked ~5 mm. A maze coaster, not Hilbert infill in a cube.
Gyroid Brick
Gyroid lattice clipped to a box, sitting on a solid floor. Not a cylinder lamp and not tunnels through the bed.
Trefoil Knot
A (2,3) torus knot as a 3D bead on a filled raft. Not a flying wire and not a hollow sliced tube.
Parametric Vase
Circle \u2192 Vase Spiralizer \u2192 Output. The shortest path to a printable spiral vase. Default graph.
Twisted Hex Vase
Hexagonal profile stacked with per-layer rotation and a gentle taper \u2014 the classic twisty vase in three nodes.
Ribbed Vase
Vase with sine-wave radial ribs driven by a Wave Field through Modulate Toolpath.
Wave Cup
Hidden from the Nodes-tab list. Cup whose profile is Z-displaced by a seeded noise field.
Knurled Grip
Cylindrical grip with diagonal knurling: circle profile + Wave Field \u2192 Modulate Path \u2192 rotated Layer Stacker.
Parametric Box
Rectangle \u2192 Extrude \u2192 Output. The minimal "how do I make a box" recipe \u2014 drives the preview and the STL export in one go.
Voronoi Lattice Box
Rectangle \u2192 Voronoi 2D \u2192 Extrude \u2192 Rotate \u2192 Move \u2192 Array Polar \u2192 Mesh Merge \u2192 Output. Voronoi-perforated lattice walls cloned around a base plate \u2014 the canonical Grasshopper "lattice box" demo, as one template.
Attractor Lamp
Hidden from the Nodes-tab list. Lamp-shade silhouette pinched by a Gaussian Point Attractor.
Lattice Lamp
Cylinder \u2229 Gyroid \u2192 Marching Cubes preview mesh. Slice externally for print.

Output Modes

The Output node has two input sockets. Plug one, plug both, plug neither \u2014 the module figures it out:

Toolpath
The primary print socket. Anything you wire here becomes a full G-code program \u2014 Vase Spiralizer, Layer Stacker, Contour Slice all emit Toolpath. The toolbar Export button becomes "G-code".
Preview Mesh
The primary mesh socket. Anything you wire here renders as a shaded surface AND is what STL export writes out. "What you see is what you export." The toolbar Export button becomes "Export Mesh" (STL/OBJ/GLTF).

Keyboard & UI Shortcuts

Shift + A
Open the Add Node popup \u2014 type-to-filter the full catalog, arrow keys to navigate, Enter to place.
Double-click (empty pane)
Drops the same popup at the click point. Discoverable alternative to Shift + A.
Right-click (canvas)
Canvas menu: Add Node, Clear Selection, Zoom-to-Fit, Templates.
Right-click (node)
Node actions \u2014 rename, duplicate, delete, jump to this docs page.
Right-click (edge)
Delete connection. Also works by selecting the edge and pressing Delete.
Right-click (numeric param)
"Add to viewport" pins the slider to the top-left of the 3D preview. See Pinned Parameters in the Interface page.
Middle-drag / Space + drag
Pan the canvas.
Mouse wheel
Zoom. Holding Ctrl zooms the graph rather than the page.
F
Fit view to graph.
Delete / Backspace
Delete selected nodes and edges. The Output node is protected from itself.
Ctrl/Cmd + A
Select everything.
Ctrl/Cmd + Z / Y
Undo / redo. Template applies and big graph rewrites are a single atomic entry.
? bubble (top-right)
Toggles the keyboard-shortcut cheat sheet on the canvas.

Where to Go Next

The Node Sculptor docs fan out from here:

  • Interface & Canvas — split viewport, docks, popups, the viewport HUD, and all the ways to add and connect nodes.
  • Socket Types & Conversions — the nine socket colours, implicit conversions, and the ones the app deliberately refuses to do for you.
  • Graph Evaluation — how the worker walks the graph, caches, cancels and surfaces problems.
  • Starter Templates — one page per template with the recipe and the tagged parameters.
  • Your First Graph — a short guided tutorial that goes from blank canvas to a printable vase.

Each node has its own page too — search the sidebar, or right-click a node on the canvas and choose Open Docs to jump straight to it.