Shaping

How you control the form of a tree in Natsura: mapping, effectors and posing, the environment a tree grows in, and the viewport tools for working by hand.

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.