##### Leaf Generator

The Leaf Generator is responsible for generating leaf nodes. Leaves can be of two types: leaf cards (billboards) or leaf meshes (arbitrary mesh object).

# Generation

## enumeration Style

### Absolute

Generation: Frequency and Steps: Number values are set explicitly.

### Relative

Generation: Frequency and Steps: Number values are computed based on the length of the parent node.

## percentage First

The lowest point on the parent where nodes can occur.

## percentage Last

The highest point on the parent where nodes can occur.

## integer / float Frequency

The number of nodes generated.

If Generation: Style is set to relative, this integer becomes a float and the actual number of nodes generated is computed based on the length of the parent.

## curve Pruning

Removes leaves systematically after generation (post-balance and stepping).

## float Size Scalar

Scales not only the size of the nodes, but also their distance values.

## enumeration Degradation Style

### Default

If degradation is enabled, the frequency scalar will only affect this generator if it is the topological end of a generator chain (i.e. it has no children).

### Always

If degradation is enabled, the frequency scalar will always affect this generator.

### Never

If degradation is enabled, the frequency scalar will never affect this generator (useful for something like roots, which often have no children but do not slow down compute).

## boolean Orientation: Balanced

Nodes can be balanced radially (equally spaced) by enabling this property.

Changing the Generation: Frequency or Generation: Step: Number properties will result in positional shifting in order to maintain equal spacing.

## enumeration Orientation: Alignment

### None

Nodes have a random orientation.

### Align

The first node in each step is centered vertically on its parent.

### Center Align

Each step is re-aligned so the Sweep range is centered vertically on its parent.

If Steps are disabled, the initial generation angle is centered vertically on the parent node instead.

## float Orientation: Offset

The computed angle for each node is offset [+/-] between 0 and this amount.

## percentage Orientation: Sweep

The arc around the parent node where nodes are eligible.

Balance is applied after the sweep arc is defined.

## float Orientation: Roll

Each node is rotated this absolute amount from its computed angle.

## boolean Steps: Enabled

When enabled, nodes are grouped into lengthwise "steps" along the parent node. Balance, angle offset, and other properties will be applied per step.

Each step contains approximately (Generation: Frequency ÷ Generation: Step: Number) branches.

## integer / float Steps: Number

The number of steps to distribute the computed frequency among.

If Generation: Style is set to relative, this integer becomes a float and the actual number of steps generated is computed based on the length of the parent node.

## percentage Steps: Spread

The maximum amount of lengthwise node spacing allowed from the center of each step to its extents.

## boolean Steps: Per Step Frequency

The number of nodes per step is equal to the value for generation:frequency, rather than the frequency value being distributed among all the steps.

# Forces

## boolean Allow Forces

When enabled, all forces that are checked will act on the generator.

## View force definitions Forces

### Enabled (checkbox)

While all forces in the scene are listed in this group, only enabled forces affect this generator.

Click on the colored square to the right of the force name to edit its properties.

# Random Seeds

## integer Random Seeds

Various seed values are used to procedurally generate nodes. Each random number has been separated out into groups of like properties.

###
Randomize button

Seeds can be incremented with the spinner or chosen at random via the Randomize button. All seeds can be randomized at once with 'Randomize all'.

# Placement

## float Max Distance

The maximum distance from the parent spine where leaf nodes are eligible.

If Generation: Style is set to relative, increasing Max Distance results in higher leaf node frequencies in order to ensure full canopy coverage.

## float Min Distance

The minimum distance from the parent spine where leaf nodes are eligible.

## percentage Angle

The angle between the parent spine and the vector used to offset each leaf from the parent spine.

## float Exponent

The exponent applied to the computed placement distance. Greater values will pack leaf nodes near the parent spine and vice versa.

## float Spread Scalar

Scales the spread factor value set in the leaf collision properties.

## float Cull Scalar

Scales the cull tolerance value set in the leaf collision properties.

# Leaves

Multiple leaf types can be defined and applied to nodes at random. Use the button controls to add [+] or remove [-] leaf types.

## float Size

The size of the leaf nodes.

## boolean Flip

When enabled, randomly selected leaf nodes are flipped over the X-axis.

## enumeration Type: Geometry

### Cards

camera-facing billboarded planes will be used for this leaf type.

### Named mesh

A named mesh from the mesh bank will be used for this leaf type. Meshes are two-sided and do not rotate to face the camera.

## enumeration Type: Material

Named material from the material bank to be applied to this leaf type.

## float Type: Weight

Probability that any node will receive this leaf type (this weight ÷ sum of all weights).

# Cards

## percentage Aspect Ratio

The aspect ratio of leaf cards (width ÷ height).

## float Jitter

The amount of offset for each vertex from its default coplanar position.

## percentage [+/-] X Pivot Offset

The horizontal distance from the center to position the leaf pivot point.

## percentage [+/-] Y Pivot Offset

The vertical distance from the center to position the pivot point.

# Meshes

## percentage Alignment

Attempts to align the top of each mesh with the world "up" direction while respecting the existing Up Rotation. Used to eliminate upside-down meshes.

## percentage Hang

Interpolates mesh orientation between the local Z-axis (0.0) and the world Z-axis (1.0).

## percentage Up Rotation

Rotates each mesh around the local X-axis.

## percentage Out Rotation

Rotates each mesh around the local Z-axis.

## percentage Right Rotation

Rotates each mesh around the local Y-axis.

# Lighting

## percentage Global Reference

The position along the assigned parent level used for calculating Global Smoothing.

By enabling Tree Rendering: Style: Show Extras, the global reference points are drawn as orange cross-hairs on the assigned parent level.

## percentage Global Smoothing

Interpolation between globally smoothed (1.0) and locally smoothed (0.0) leaf normals.

Global smoothing aligns leaf normals with the vector drawn from the Global Reference position to the leaf position, resulting in a predictably smooth lighting gradation.

## percentage Local Smoothing

Interpolation between locally smoothed (1.0) and individual node (0.0) leaf normals.

Local smoothing aligns leaf normals with the vector drawn from the percentage along the parent spine where the leaf node occurred to the leaf node position, resulting in a staggered lighting gradation.

## percentage Card Smoothing

Pushes leaf card normals away from the center of each leaf card.

## percentage Range

Range controls the maximum range that normals are allowed to span vertically. A linear growth curve uses the entire range from normals pointing completely down to normals pointing completely up. Raise the low end to keep leaves from having normals that point straight down.

#
Ambient Occlusion

## percentage Dimming

Uniformly darkens interior leaf nodes.

Dimming is applied in a cascading manner down to the start node, affecting the interior of major branches the most.

## percentage Offset

An offset for the calculated amount of ambient occlusion. Increasing this value lessens the affect of ambient occlusion.

## percentage Contrast

The difference in brightness from the heaviest possible ambient occlusion to no ambient occlusion.

## percentage Min

This value clamps the darkness of ambient occlusion allowed.

## percentage Max

This value clamps the brightness allowed.

#
Wind

## percentage Scalar

Scalar for wind distance from the center of each leaf (profile curve) and for the generator as a whole (green curve).

# Level of Detail

## percentage Size Scale

The amount to increase the size of kept leaves from highest LOD to lowest LOD.

Size increase has no effect on the highest LOD state.

## threshold Keep

The threshold for leaf node reduction as the LOD state decreases.

## float Position Influence

The likelihood that a leaf node will survive LOD reduction based on its location in the tree.

## percentage Size Influence

An interpolation between Position Influence and the leaf size ratio for determining which leaf nodes survive LOD reduction.

## float Fuzziness

The randomness of the computation used for determining which leaf nodes survive LOD reduction.