Simulate

The solver node. Traverses the Apex graph, executes growth logic, resolves mappings, and generates the final geometry.

The Simulate node is the engine of Natsura. It takes the abstract graph recipe and executes it to generate geometry.

  • Execution: Traverses the graph, running the logic defined by Grow, Split, Repeat, etc.
  • Resolution: Evaluates all mappings, effectors, and conditions.
  • Generation: Produces the final skeleton and decoration geometry.

Concept

Build vs. Run In Natsura, you first build a graph (using Grow, Split, etc.) and then run it with Simulate. The graph defines the "DNA" of the plant; Simulate grows the plant.

Solver Loop Simulate runs a feedback loop. In each step:

  1. Active tips grow (Grow nodes).
  2. Conditions are checked (Switch, Prune).
  3. Attributes are updated (Wrangle, Repeat).
  4. New tips are spawned (Split, Fork).

Inputs

  • Input 0 — Graph The Apex graph to simulate.
  • Input 1 — Parms (Optional) Global parameter dictionary.
  • Input 2 — Points (Optional) Source points for "Grow from Points" mode.

Parameters

Simulation

  • Max Steps: Safety limit for the simulation loop.
  • Seed: Global random seed.

Output

  • Output Skeleton: Generates the line graph.
  • Output Decorations: Generates instanced geometry (leaves, etc.).

Attributes

Simulate outputs standard attributes on the generated geometry:

  • id, parent_id, generation
  • u, age, width, radius
  • orient, scale, variant (on decorations)

Workflow

  1. Construct your graph using Grow and other nodes.
  2. Connect the end of the graph to Simulate.
  3. (Optional) Connect scatter points to Input 2 to grow many instances.
  4. Visualize the output.

NodeRelationship
GrowDefines the growth logic
BakeConverts simulation output to static mesh