User Tools

Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

batched_leaf_generator [2017/09/15 12:32]
batched_leaf_generator [2021/04/27 09:19] (current)
Line 1: Line 1:
 +====== Batched Leaf Generator ======
 +{{::batchleaf.jpg?80 |}}
 +
 +The Batched Leaf generator creates leaves in almost exactly the same manner as [[leaf_mesh_generator|Leaf Mesh]] generators with one major exception: the results cannot be node edited.  Batched Leaf generators flood the model with leaves in an optimized fashion.  They are orders of magnitude faster than leaf meshes but can be controlled only as a group.
 +
 +>**Note:** geometry created by Batched Leaf generators cannot be node edited and does not participate in the [[lod|dynamic LOD system]] or the [[growth|growth]] system.
 +
 +===== Generation =====
 +The [[generation_properties|properties]] in this group control how many leaves are generated and where they are placed.
 +
 +===== Forces =====
 +This properties in this group control how forces affect the nodes created by this generator.  Forces affect only the orientation, not the position, of leaf meshes.
 +
 +== Allow Forces ==
 +When enabled, all forces that are checked will act on the generator.
 +
 +== Forces ==
 +Each [[forces|force]] in the scene has an entry here.  Check the box next to the name to enable the force for this generator.  The value set here is multiplied by the strength of the force before being applied to the branch.  The profile curve controls have no effect on leaves.
 +
 +>**Note:** Click on the force name to edit the force's properties.
 +
 +===== Random Seeds =====
 +Properties that have [[variance_editor|variance]] are given random values based on a seed value in this group.  Vary the seeds in this group to randomize only the properties associated with the seed type. 
 +
 +== Randomize All ==
 +Randomizes the value for all seeds used to compute this generator. 
 +
 +===== Leaves =====
 +The properties in this group control the type, size, and initial placement of the leaf nodes.
 +
 +== Size ==
 +This property sets the size of the leaf nodes.  By default, mesh assets are treated as unit meshes and then scaled by this amount when placed on the model.
 +
 +== Use Actual Size ==
 +When enabled, the size parameter is ignored and the mesh is used at exactly the size at which it was modeled.
 +
 +== Flip ==
 +When enabled, randomly selected leaf nodes are flipped over the Y axis.
 +
 +== Weld ==
 +When enabled, leaves will be placed directly on the skin of their parent (as opposed to being anchored on their spine).
 +
 +== Cross ==
 +When enabled, leaves are rotated so that they are perpendicular to the original leaf placement. This is a short cut for creating crossed, intersecting meshes that have the same position.
 +
 +== Fix Winding ==
 +When enabled, the face winding of the polygons in the final mesh is adjusted to match the direction of the surface normals.  This correction is applied after vertex deformation and lighting adjustments.
 +
 +==== Type ====
 +The properties in this group specify the materials and meshes for the leaf.  Meshes must be assigned to the material on the [[materials_assets_bar|Material Bar]] to be used on the leaf.  Materials are chosen based on their weights and [[seasons|season]] settings.
 +
 +== Material ==
 +This property specifies a named material from the [[materials_assets_bar|Material Bar]]. If "None" is selected or the chosen material has no assigned mesh, a simple square will be used as placeholder geometry.
 +
 +== Weight ==
 +Sets the probability that a node will receive this material index (this weight ÷ sum of all weights).
 +
 +==== Resolution ====
 +The properties in this group influence the resolution of the mesh.
 +
 +== Size Increase % ==
 +This curve controls the increase in size of the leaf nodes as the [[resolution|resolution]] changes.  It is often desirable to increase the size of the leaves at lower resolutions to make up for a lower number of leaves.
 +
 +== Mesh LOD ==
 +This curve sets which mesh version (High, Medium or Low) is used based on the active resolution. It is often desirable to use lower quality meshes at lower resolutions.
 +
 +== Mesh LOD offset ==
 +When set to a value other than '0', the mesh currently assigned will go up or down a mesh resolution (High, Medium, or Low). Use this property (especially in conjunction with its parent curve) to adjust mesh resolution throughout the model.
 +
 +>**Note:** "Mesh LOD" and "Mesh LOD offset" both require meshes assigned in at least two of the three [[meshes|mesh asset]] LOD slots.
 +
 +===== Local Orientation =====
 +The properties in this group are the first stage of orienting the leaf.  The orientation actions are performed in the order in which the properties are listed.
 +
 +== Unification ==
 +Uses the anchor to orient itself "out" before the rest of the orientation adjustments are performed.  The "Out" direction is considered to be the vector from the anchor point through the node's attachment point. Options for setting the anchor point are as follows:
 +
 +^Global|The anchor point is located where the node's highest ancestor hits the ground.|
 +^Deep|The anchor point is the base of a node very near (and sometimes exactly on) the root of the node's ancestors.|
 +^Intermediate|The anchor point is somewhere in the middle of the node's ancestors.|
 +^Local|The anchor point is very near where the node is attached.|
 +^None|No anchor point is computed, and no unification is done.|
 +
 +== Sky Influence ==
 +Controls how much the leaves point toward the sky. Higher numbers result in the Z axis of each mesh pointing straight up.
 +
 +== Fold ==
 +Rotates leaves up or down around the parent's growth direction.
 +
 +== Align ==
 +Rotates the tip of the leaves toward or away from the parent's growth direction.  Use this property to point leaves in the direction the parent is growing.
 +
 +== Face ==
 +Spins leaves around their "stem" so that their "up" vector points in the direction of the parent's growth.  Use this property to make the leaves face out relative to their parent.
 +
 +>**Note:** Interval and Phyllotaxy generation modes work best with these properties.  These modes give each leaf an idea of which side they're on.  Doing so makes a positive value for "Align," "Face," and "Fold" all work the same, regardless where the leaf was generated.
 +
 +===== Sensitivity =====
 +The properties in this group control the second stage of leaf orientation.
 +
 +==== Parent ====
 +Parent sensitivity refers to orienting the leaf based on where it is positioned relative to its ancestors.
 +
 +== Amount ==
 +Determines the amount that the bottom of the leaf is turned to face the point set by Anchor.
 +
 +==Anchor==
 +This property picks a spot on one of the leaf's ancestors, depending on which of the following options is selected:
 +
 +^Global|The anchor point is located where the node's highest ancestor hits the ground.|
 +^Deep|The anchor point is the base of a node very near (and sometimes exactly on) the root of the node's ancestors.|
 +^Intermediate|The anchor point is somewhere in the middle of the node's ancestors.|
 +^Local|The anchor point is very near where the node is attached.|
 +^None|No anchor point is computed, and no parent sensitivity is added.|
 +
 +==Sky==
 +Rotates the mesh around its central axis to get its Z axis as close to up as it can.  Think of it as the leaves rotating around their stem to face the light.
 +
 +===== Final Adjustments =====
 +These edits are applied to the leaf meshes as a group, after Local Orientation and Sensitivity are computed.
 +
 +== Up ==
 +Rotates each mesh around its local X axis.
 +
 +== Right ==
 +Rotates each mesh around its local Y axis.
 +
 +== Out ==
 +Rotates each mesh around its local Z axis.
 +
 +===== Deformation =====
 +The properties in this group alter the shape of the the leaf mesh. It is important to remember that these properties work best when there are enough vertices in the mesh to reveal the changes.
 +
 +>**Note:** Using these properties on low resolution meshes can produce undesirable results.  You should always have at least one vertex near the center of the mesh for the best results.
 +
 +==Fold==
 +Folds both sides of the leaf, lengthwise, along the Y axis of the mesh. A negative value bends down, while a positive value bends up.
 +
 +==Curl==
 +Curls the leaf around the mesh's X axis.
 +
 +==Twist==
 +Twists the leaf around the mesh's Y axis.  The farther away a vertex is from the X axis, the more it is rotated.
 +
 +==== Vertex ====
 +The properties in this group perform a noise-based deformation of each vertex in the mesh.
 +
 +== Amount ==
 +This property controls the amount of noise applied to each vertex.
 +
 +== Noise ==
 +This value controls the tightness of the noise pattern. Higher values result in more localized deformations.
 +
 +== Seed ==
 +Vary this parameter to randomize the noise pattern.
 +
 +====Scale====
 +The properties in this group scale the mesh.  The scale is performed in each leaf's local orientation.
 +
 +==X==
 +Scales the mesh by this amount in the X axis.
 +
 +==Y==
 +Scales the mesh by this amount in the Y axis.
 +
 +==Z==
 +Scales the mesh by this amount in the Z axis.
 +
 +===== Lighting =====
 +The properties in this group modify the vertex normals to change the lighting behavior of the mesh.
 +
 +>**Note:** These properties are not typically necessary for high detail VFX models but they can significantly improve the lighting on meshes that represent [[clusters|clusters]] of leaves in real-time models.
 +
 +==== Parent Puffiness ====
 +== Amount ==
 +Value scale that controls how much the normals on each individual leaf should face "out," depending on the assigned anchor point. A value of 1.0 makes each normal line up with the vector that goes from the anchor through the vertex.
 +
 +>**Note:** Click on a leaf with hints on to see the "Parent puffiness" vectors.  
 +
 +==Anchor==
 +This property picks a spot on one of the leaf's ancestors according to the following options.
 +
 +^Global|The anchor point is located where the node's highest ancestor hits the ground.|
 +^Deep|The anchor point is the base of a node very near (and sometimes exactly on) the root of the node's ancestors.|
 +^Intermediate|The anchor point is somewhere in the middle of the node's ancestors.|
 +^Local|The anchor point is very near where the node is attached.|
 +^None|No anchor point is computed, and no parent puffiness is added.|
 +
 +== Puffiness ==
 +After all normal adjustments have been performed, this value “sphere-izes” the normals around the center of the mesh, making the geometry have a more puffy appearance.
 +
 +==Unify==
 +This property causes all vertex normals to point in the average direction of all of the vertex normals.  Use this property to align the normals to help localize specular effects.
 +
 +==== Adjustments ====
 +The properties in this group rotate the normals of each leaf without rotating the geometry.  These properties are commonly used when creating [[clusters|clusters]].
 +
 +>**Hint:** Apply variance to these properties to make leaves in a cluster appear jumbled when lit in the final model.
 +
 +== Up ==
 +This property rotates vertex normals around the local X axis.
 +
 +== Right ==
 +This property rotates vertex normals around the local Y axis.
 +
 +== Out ==
 +This property rotates vertex normals around the local Z axis.
 +
 +===== Wind =====
 +The properties in this group influence how leaves are animated in wind simulations.
 +
 +==Scalar==
 +Use this property to scale how much the leaf moves during wind simulations.  The amount and frequency of motion is set on the [[fan|Fan]] object.  The left hand side of the profile curve corresponds to the pivot point.  The right hand side corresponds to the vertex farthest away.
 +
 +>**Note:** The left hand side of the profile curve must be zero to avoid disconnections from parent.
 +
 +==Group==
 +In many wind styles, multiple wind groups are available.  Use this property to specify which group the leaves belong to.  The most common use of this feature is to have separate animation parameters for leaves and fruit.
 +
 +==Seed==
 +Vary this parameter to randomize wind characteristics.
 +
 +===== Season =====
 +The properties in this group control how leaves transition in the [[seasons|Seasons]] system.
 +
 +== Start offset ==
 +Leaf transitions are determined by looking up season curves based on the position of the season slider.  This value provides an offset on that curve lookup.  Use variance on this property to randomly shift when neighboring leaves begin their transition.
 +
 +== Time scale ==
 +Scales how fast time passes relative to a single leaf.  Higher values make leaves transition faster.
 +
 +== Drop time ==
 +Controls how long the leaf will remain attached.  A leaf can drop no matter what material is assigned.
 +
 +== Droop ==
 +Use this value to make leaves droop as they transition.
 +
 +== Curl ==
 +Use this value to make leaves curl as they transition.
 +
 +== Fold ==
 +Use this value to make leaves fold as they transition.
 +
 +==== Fallen ====
 +When "Show Dropped Leaves" is checked on the Season Slider, the properties in this group influence the behavior of leaves on the ground (or ground mesh).
 +
 +== Ground Duration ==
 +Sets the amount of time the leaves stay on the ground before disappearing.
 +
 +== Spread ==
 +This value controls how far from the point directly under the tree the leaf may travel before hitting the ground.
 +
 +== Flatten ==
 +Sets the amount of deformation removal ("Season:Curl" and "Season:Fold") applied to the fallen leaves.
 +
 +== Jumble ==
 +Randomizes the orientations of leaves on the ground.
 +
 +== Slope limit ==
 +If you have a force mesh applied to the leaf generator, fallen leaves will adhere to it instead of the ground.   In that circumstance, use this property to keep leaves from gathering on slopes.
 +
 +===== Collision =====
 +The properties in this group influence how leaves in this generator interact with the [[collision|Collision]] system.
 +
 +== Style ==
 +Use this property to set how the leaves behave during collision computations with the the following options:
 +
 +^Everything | Leaves in this generator collide with each other and all other leaves.|
 +^Ignore Siblings | Leaves in this generator ignore siblings but collide with everything else.|
 +^Knock out others only | Leaves in this generator cannot be removed, but they can eliminate leaves in other generators.|
 +^Nothing |These leaves do not participate in collision computations.|
 +
 +== Take parent ==
 +When enabled, if a leaf in this generator is removed, its parent is also removed.  Use this option to take away twigs supporting leaves that are removed.
 +
 +== Weight ==
 +When leaves collide, the one with the higher weight wins.  Use this property to set the weight.
 +
 +== Pivot Threshold ==
 +This property sets how far away from pivot (as a percentage of size) a collision has to happen in order to count.  Use this property to eliminate unwanted removals of leaves anchored near each other.
 +
 +== Sphere Threshold ==
 +When using spherical leaf collision tests, this value scales the size of the spheres used during the test.  Spheres are initially sized based on leaf size.
 +
 +===== Vertex Color =====
 +The properties in this group control how vertex colors are computed.
 +
 +>**Note:** "Vertex colors" must be enabled on the [[tree_generator#Compute Flags|Tree]] generator for these properties to work.
 +
 +====Red====
 +The properties in this group control how the red component of the color is computed.
 +
 +==Style==
 +This property controls how the red portion of the color is computed from the following options:
 +
 +^Set | Sets the color directly using the "Value" property (parent colors are ignored). |
 +^Offset from parent | The "Value" property is added to the the vertex color inherited from the parent. |
 +
 +==Value==
 +This property adds to, subtracts from, or directly sets this color component.
 +
 +====Green====
 +The properties in this group control how the red component of the color is computed.
 +
 +==Style==
 +This property controls how the red portion of the color is computed from the following options:
 +
 +^Set | Sets the color directly using the "Value" property (parent colors are ignored). |
 +^Offset from parent | The "Value" property is added to the the vertex color inherited from the parent. |
 +
 +==Value==
 +This property adds to, subtracts from, or directly sets this color component.
 +
 +====Blue====
 +The properties in this group control how the red component of the color is computed.
 +
 +==Style==
 +This property controls how the red portion of the color is computed from the following options:
 +
 +^Set | Sets the color directly using the "Value" property (parent colors are ignored). |
 +^Offset from parent | The "Value" property is added to the the vertex color inherited from the parent. |
 +
 +==Value==
 +This property adds to, subtracts from, or directly sets this color component.
 +
 +====Mesh Asset====
 +The properties in this group control how vertex colors stored in the [[meshes|mesh asset]] are combined with the computed vertex colors.
 +
 +==Style==
 +This property controls how mesh asset vertex colors are used from the following options:
 +
 +^Interpolate | The "Contribution" value is used to blend from the computed to color (0.0) to the color stored in the asset (1.0). |
 +^Add | The "Contribution" value is used to scale the mesh asset vertex color and the result is added to the computed vertex color. |
 +
 +==Contribution==
 +This value sets how much influence the mesh asset vertex color has on the final vertex color.
 +
 +
 +===== Lightmap =====
 +The property in this group affects the influence leaves in this generator have on the [[lightmap|Lightmap]].
 +
 +>**Note:** Not all versions of the Modeler support lightmap UV computation.
 +
 +==Weight==
 +Use this property to increase or decrease the importance of the leaves in the lightmap of this generator – in relation to the lightmap weight of all other objects – before lightmap packing is determined. Note that your Weight value may not be honored exactly or may get so large as to exhibit unexpected results. Use “Tools→Reset lightmap scalars” to go back to default values for the whole model.