Shaping
Shaping is taking a structure that grows and bending it toward the form you have in mind. You do it with mapping, which drives any parameter from an attribute, with effectors, which steer the direction of growth, and with posing, both of the placed parts and of the tree itself. This page is about using them together. The Mapping and Effectors pages have the reference.
Mapping
Most shaping starts with a map. The map button beside a parameter turns its value into a Map that reads an attribute, so the value changes across the tree. u is the one you use most: a gradient along a branch from 0 at its base, reaching 1 at the tip once the branch is fully grown. Map from it with Self and each branch is shaped along its own length; map from the parent's u and branches change with where they sit on their parent, such as a branch angle that changes from the bottom of the trunk to the top.
A single parameter can be driven by a whole chain of maps. On a Grow's gravity effector, for example, one map on the branch's own u gives each branch an arc, and a second map on the parent's u, with its Blend Mode set from replace to add, varies that arc from the base of the tree to the crown.
Effectors
Effectors are directions that live on the growing skeleton. A Grow reads each effector in its stack through a mode: Attract, Repel, Flatten (at a plane to the direction) or Orbit (around it). Align (up) and Level (up) don't bend the growth; they turn its up vector toward the direction or level with it, which changes the spiral, and so how the shoots that spawn from it are arranged. That is how you get secondary branches that sit flat to the sky while keeping their spiral.
A Grow can carry several effectors, including more than one of the same kind, and each one's strength can be mapped.
Gravity
The Gravity Effector is one direction, the same everywhere on the tree (Gravity Direction points down by default). On a Grow it pulls growth upright or lets it droop, depending on the mode and direction you pick. It is easy to reason about because it doesn't change from point to point, and it is the effector most trees start with. Map its strength from u for branches that arc rather than bend evenly.
Ancestor
The Ancestor Effector lets a branch follow a direction stored on its parent, grandparent or an ancestor further back (Level). The direction can be the ancestor's own growth direction (N, the default) or another effector stored on it, such as a noise vector, so a twig can follow the same influence that shaped its parent. This gives the likeness between scales that real trees have. The deeper the level, the harder the setup is to reason about, so start at the parent.
Deflection
The Deflection Effector points from each growing tip toward the nearest parts of the same tree, within a Distance, so branches can be steered by how close they are to the rest of the crown. It reads only the tree, not the scene around it.
Magnet
The Magnet Effector takes geometry wired into it, such as a sphere, and gives a direction to it within its Range, with its own Attract/Repel setting. Place the geometry where you want a hero branch to reach, or where a branch should keep out of the silhouette.
Noise
The Noise Effector is a direction that changes smoothly through space. Neighbouring points get similar directions, so a low-strength noise effector on top of gravity adds the irregularity real trees have without the jitter of a random value per point.
Direction
The Direction Effector is one constant direction you set, for any lean that isn't gravity.
Posing the parts
On the Assembly Decoration, the same effectors pose the placed parts. Because the parts are rigged, an effector bends each one through its rig instead of only turning it as a whole, and the parts stay instances.
Map an effector's strength from the part's own u (Self) and it affects the ends of each part more than the base. A gravity effector set to Flatten, mapped this way, lays the leafy ends flat to the sky while the base of each branch keeps its shape.
Situation and environment
A tree's form comes from where it lives. An oak grown in open parkland is a different tree from the same species in a closed forest. In computer graphics trees are usually grown in isolation, which keeps the artist from making something the world has clearly acted on. Because Natsura is a simulation, you can set up a recipe and watch it grow into an environment instead of correcting the result by hand.
Wire scene geometry into the Simulate's Geometry input and the trees can respond to it. Each Grow's Collision Mode decides what its growth does when it meets the environment: block (the default), project onto it, or none. It is a little faster than building the same response from effectors, which give finer control.
The environment also gives the growth new directions and values. Two effectors appear in a Grow's effector menu: Photo Direction (phototropism_direction), for steering toward or away from light, and Thigmo Direction (thigmotropism_direction), the direction to the nearest surface. Maps can read Environment Occlusion (ao_environment), Ambient Occlusion (ao) and Surface Distance (thigmotropism_distance). For growth that follows a surface, Thigmo Direction with a map can give results like project and is easier to control.
The other half of situation is the attributes you give each tree. See Endless variation from one graph.
Interactive tools
Several nodes have a state in the viewport for working by hand. Press Enter in the viewport with the node selected, or click its state button at the top of the parameters.
- The Simulate lets you pose the tree between growth steps. Set Simulation Mode to Generation Slider to stop at a step, change a branch's orientation, and the tree carries on growing from your edit.
- The Assembly Decoration (Launch) and Classify show the trait chart beside the tree. Drag a part on the chart and its placement on the tree updates almost straight away, because decorations run after the growth. See Trait System.
- Pivot Edit (Fix Pivots) lets you drag the pivots of parts to the base of their branches when the automatic rigging needs help, and Assembly Edit lets you edit the rigged parts. Assembly Resource has both as states.
- Import Highpoly walks you through loading a scanned or sculpted mesh.
Status
The Gravity, Direction, Ancestor, Deflection, Magnet and Noise effectors are labelled experimental, and their settings may change.
Simulation
How Natsura grows a plant: the graph you build is a program, written in a small grammar of growth nodes, and the Simulate runs it to grow the skeleton, mesh it, and make many different plants from one recipe.
Trunks & Meshing
How Natsura turns the grown skeleton into geometry: decorations are meshing processes you assign to parts of the tree, and trunks are either swept from the skeleton or brought in from scans and extended.