Leaf object generates leaves and needles along the surface of its parent branch object. To create a leaf, select a branch object or some of them and hit the Leaf tool button in the tool control bar, or select the pull down menu Methods/Branch/Leaf. Note that leaves are generated only for the direct parent object - parents of parents are not taken into account. A branch object can have multiple leaf children. All leaf objects are considered active every time the parent branch object determines to insert a leaf. For example, a branch of a rose can have three sub leaf objects: a 'spike', a 'flower' and a 'leaf'. |
![]() |
Leaf object has the following attributes:
Type: Defines the type of leaf geometry. The choices are:
Copy - leaves are generated by copying the sub objects of the leaf. If a leaf has several sub objects, the copy is selected randomly from the sub object list.
2D Particles - Leaves are rendered as ray traced 2D particles. 2D particles are always symmetric by the axis, and therefore this option is mainly suitable for representing needles and spikes. The Size attribute of a 2D particle deaf defines particle's length, its radius at the start and the radius at the end.
3D Particles - Ray traced 3D particle leaves. Each leaf is an elliptic sphere. Thin long particles look like needles, wider flat particles look like leaves.
Particle Quads - This option renders each leaf as a planar UV mapped quadrangle By applying a suitable color texture and a clip map, natural looking leaves can be achieved.
None - Turns leaf creation off (for temporary trunk/branch editing actions etc.).
Own Hierarchy: If set, the actual leaves generated by this leaf object are placed into a separate folder. This can be necessary when the plant object includes multiple leaf objects and you want to attach a unique material map to each type of generated leaves. Size: Size of leaves. The three values represent length, width and thickness. Thickness is irrelevant for flat quadrangles. For 2D particles, the values define length, start and end radius. |
![]() |
Random Size: Randomizes the size definition components. The random factor is multiplicative: a value triplet (1, 1, 1) will give each particle a random size between zero and the defined full size. A value triplet (0.5, 0.1, 0) varies length by 50 % randomly, width by 10 %, and thickness will get no random variation at all.
SeparateRnd: If set, an independent random value scales each leaf dimension. An example: an orange tree has 3D particle leaves as fruits. The maximum leaf size (radius of oranges) can be 0.05 0.05 0.05. Because some oranges are big, some small, the Rnd Size can be (0.5 0.5 0.5) for 50 % size variation. Separate Rnd must not be set, because it would make some oranges long and thin, some flat.
Leaf Angle: The angle between the leaf and the branch from which it is growing. Note: the angle around the branch depends on several other attributes of the parent branch and the leaf itself, such as twist and horizontal spread.
Random Angle: Randomizes the angle between the leaf and its parent branch. Randomization is additive: a random value 1.0 adds a random angle variation between -90 ... +90 degrees to the regular leaf angle.
Horizontal Spread: Guides the leaves to spread out horizontally around the branch. Horizon direction taken from the blue z axis of the object space of the plant root level. Many plants grow this way: the purpose is to catch as much light as possible. Note that will full horizontal spreading level 1.0, leaves may start overlapping unless there is a sufficient amount of position randomization. |
![]() |
Spread by Age: Changes the horizontal spread by the age when leaf started to grow. The actual spread parameter is the sum of the constant spread and the age dependent spread. If Horiz. Spread=0, Spread by Age=1.0, full horizontal spreading is achieved at the end of each branch. If Horizontal Spread is 1 and Spread by Age -1.0, spreading reduces towards the ends of branches.
Random Position: Randomizes the position of leaves. If the value is zero, leaves will grow in regular rows and columns along the branches. Full random level 1 places the leaves to totally random positions. |
![]() |
Shift: Applies regular incremental shift to leaves. Shift is incremented by U direction (= around the parent branch), and moves each leaf along the branch. For example, if U density is 2 and Shift = 1.0, leaves switch the side of the branch regularly. In other words, Shift parameter produces spiral like distribution of leaves around the branches. |
![]() |
Gravity: Guides the leaf orientation to take gravity into account. The direction of gravity is defined by the plant's root object's z axis (blue axis line). The higher the gravity, the more leaves will hang down. A negative gravity value makes leaves to grow upwards (to simulate light attraction etc.). |
![]() |
Age Distribution: The distribution of this particular leaf type in the plant by age. A rapidly ascending curve that starts from x=0.9, y=0 and ends at x=1, y=1 will guide the leaf to grow only at the end of branches. For example, plant flowers can be made to grow only at branch ends this way. |
![]() |
The curve defines a stochastic distribution for the event that the leaf grows at a certain age. For example, if the curve travels at the 50% probability level (y=0.5), about one half of the attempts to grow a leaf of this leaf type will succeed.
![]() |
Note |
---|---|
Each branch object has top-level controls Leaf Density U, Leaf Density V and Leaf Density Curve. These properties control all sub leaves the same way. The Age Distribution curve gives a more detailed, leaf specific control. |
Colors: The From and To fields define a color variation range for leaves. Each leave gets a randomly picked color from the defined range. The age distribution curve below these two fields define another color which depends on leaf's position in the plant (0 at the root, 1 at the end of branches). The final color is the product of the random color and the age dependent color.
Leaf colors variate from yellow to green. Old leaves are darker than young leaves.
Note: Leaf colors are evaluated and stored only when the Set Colors option of the plant's seed object is enabled. If colorization is done using materials and texture maps, which replace the colors computed using the options above, it is wise to turn the Set Colors option off to save some memory.