meta data for this page
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
card_generator [2021/01/21 09:01] – created sechrest | card_generator [2023/04/03 18:46] (current) – steph.jorgensen | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Card Generator | + | ====== Card generator |
- | {{:leafcard.jpg?100 |{{: | + | {{:card.png?100 |{{: |
- | The Leaf Mesh generator is responsible for generating leaves based on [[kcmaterials|materials]] and [[kcmeshes|mesh]] assets. Leaf Mesh generators (along with [[batchedleaf_generator|Batched Leaf]] generators) are the primary mechanism by which [[kcseasons|season]] transitions occur. | + | The Card generator is responsible for generating |
===== Generation ===== | ===== Generation ===== | ||
Line 8: | Line 8: | ||
===== Forces ===== | ===== Forces ===== | ||
- | The properties in this group control how forces affect the nodes created by this generator. | + | The properties in this group control how forces affect the nodes created by this generator. Forces affect only the orientation, |
- | == Allow Forces | + | ==== Allow ==== |
When enabled, all forces that are checked will act on the generator. | When enabled, all forces that are checked will act on the generator. | ||
- | == Forces == | + | ==== Forces |
- | Each [[kcforces|force]] in the scene has an entry here. Check the box next to the name to enable the force for this generator. | + | Each [[kcforces|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' | + | **Note:** Click on the force name to edit the force' |
===== Random Seeds ===== | ===== Random Seeds ===== | ||
- | Properties that have [[toolvariance_editor|variance]] are given random | + | Refer to [[random-seeds-properties|Random |
- | + | ||
- | == Randomize All == | + | |
- | Randomizes the value for all seeds used to compute this generator. | + | |
===== Leaves ===== | ===== Leaves ===== | ||
The properties in this group control the type, size, and initial placement of the leaf nodes. | The properties in this group control the type, size, and initial placement of the leaf nodes. | ||
- | == Size == | + | ==== Size ==== |
- | This property sets the size of the leaf nodes. | + | 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 == | + | ==== Flip ==== |
- | When enabled, the size parameter is ignored and the mesh is used at exactly the size at which it was modeled. | + | When enabled, |
- | == Flip == | + | ==== Weld ==== |
- | 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). | 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 shortcut 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. | ||
==== Type ==== | ==== Type ==== | ||
- | The properties in this group specify the materials and meshes for the leaf. Meshes must be assigned to the material on the [[kcmaterialsassetsbar|Material | + | The properties in this group specify the materials and meshes for the leaf. Meshes must be assigned to the material on the [[toolmaterialsassetsbar|Materials |
- | + | ||
- | == Material == | + | |
- | This property specifies a named material from the [[kcmaterialsassetsbar|Material Bar]]. If " | + | |
- | == Mesh == | + | === Material === |
- | Use this property | + | This property |
- | == Weight == | + | === Weight |
Sets probability that a node will receive this material (this weight ÷ sum of all weights). | Sets probability that a node will receive this material (this weight ÷ sum of all weights). | ||
Line 60: | Line 45: | ||
The properties in this group influence the resolution of the mesh. | The properties in this group influence the resolution of the mesh. | ||
- | == Size Increase | + | === Size increase |
- | This curve controls | + | Controls |
- | == Mesh LOD == | + | === Mesh LOD === |
- | This curve sets which mesh version ("High", "Medium" | + | Sets which mesh version (High, Medium, or Low detail on the mesh asset) is used based on the active resolution. |
- | == Mesh LOD Offset | + | === Mesh LOD offset === |
- | When set to a value other than 0, the mesh currently assigned will go up or down in mesh resolution ("High", "Medium" | + | When set to a value other than 0, the mesh currently assigned will go up or down in mesh resolution (High, Medium, or Low detail on the mesh asset). Use this property (especially in conjunction with its parent curve) to adjust mesh resolution throughout the model. |
- | >**Note: | + | **Note: |
- | + | ||
- | ===== 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 " | + | |
- | + | ||
- | ^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 ' | + | |
- | + | ||
- | == Fold == | + | |
- | Rotates leaves up or down around the parent' | + | |
- | + | ||
- | == Align == | + | |
- | Rotates the tip of the leaves toward or away from the parent' | + | |
- | + | ||
- | == Face == | + | |
- | Spins the leaves around their stem so that their " | + | |
- | + | ||
- | > | + | |
- | + | ||
- | ===== 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 == | + | |
- | Sets 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 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 sensitivity is added.| | + | |
- | + | ||
- | ==Sky== | + | |
- | Rotates the mesh around its central axis to get its " | + | |
===== Final Adjustments ===== | ===== Final Adjustments ===== | ||
- | These edits are applied to the leaf meshes | + | These edits are applied to the cards as the last transformation before the camera-facing transformation is applied. |
- | == Up == | + | ==== Up ==== |
- | Rotates each mesh around its local X axis. | + | Rotates each mesh around its local x-axis. |
- | == Right == | + | ==== Right ==== |
- | Rotates each mesh around its local Y axis. | + | Rotates each mesh around its local y-axis. |
- | == Out == | + | ==== Out ==== |
- | Rotates each mesh around its local Z axis. | + | Rotates each mesh around its local z-axis. |
===== Deformation ===== | ===== Deformation ===== | ||
- | The properties in this group alter the shape of 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. | + | The properties in this group alter the shape of the leaf card. 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. | + | **Note:** Using these properties on low-resolution meshes can produce undesirable 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. | + | |
==== Vertex ==== | ==== Vertex ==== | ||
The properties in this group perform a noise-based deformation of each vertex in the mesh. | The properties in this group perform a noise-based deformation of each vertex in the mesh. | ||
- | == Amount == | + | === Amount |
- | This property controls | + | Controls |
- | == Noise == | + | === Noise === |
- | This value controls | + | Controls |
- | == Seed == | + | === Seed === |
Vary this parameter to randomize the noise pattern. | Vary this parameter to randomize the noise pattern. | ||
====Scale==== | ====Scale==== | ||
- | The properties in this group scale the mesh. The scale is performed in each leaf's local orientation. | + | The properties in this group scale the mesh. The scale is performed in each leaf's local orientation. |
- | ==X== | + | ===X=== |
- | Scales the mesh by this amount in the X-axis. | + | Scales the mesh by this amount in the x-axis. |
- | ==Y== | + | ===Y=== |
- | Scales the mesh by this amount in the Y-axis. | + | Scales the mesh by this amount in the y-axis. |
- | ==Z== | + | ===Z=== |
- | Scales the mesh by this amount in the Z-axis. | + | Scales the mesh by this amount in the z-axis. |
===== Lighting ===== | ===== Lighting ===== | ||
The properties in this group modify the vertex normals to change the lighting behavior of the mesh. | 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 [[atclusters|clusters]] of leaves in real-time models. | + | **Note:** These properties are not typically necessary for high-detail VFX models but they can significantly improve the lighting on meshes that represent [[atclusters|clusters]] of leaves in real-time models. |
- | ==Smooth== | + | ==== Parent Puffiness ==== |
- | Use this property to compute smooth normals based on the average face normals at each vertex after the deformations have been computed. | + | |
- | ==== Parent Puffiness ==== | + | === Amount |
- | == Amount | + | |
Value scale that controls how much the normals on each individual leaf should face " | Value scale that controls how much the normals on each individual leaf should face " | ||
- | >**Note:** Click on a leaf with hints on to see the " | + | **Note:** Click on a leaf with hints on to see the " |
- | ==Anchor== | + | ===Anchor=== |
This property picks a spot on one of the leaf's ancestors according to the following options: | 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.| | + | ^**Property**^**Description**^ |
- | ^Deep|The anchor point is the base of a node very near (and sometimes exactly on) the root of the node's ancestors.| | + | |**Global**|The anchor point is located where the node's highest ancestor hits the ground.| |
- | ^Intermediate|The anchor point is somewhere in the middle of the node's ancestors.| | + | |**Deep**|The anchor point is the base of a node very near (and sometimes exactly on) the root of the node's ancestors.| |
- | ^Local|The anchor point is very near where the node is attached.| | + | |**Intermediate|The anchor point is somewhere in the middle of the node's ancestors.| |
- | ^None|No anchor point is computed, and no parent puffiness is added.| | + | |**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 == | + | ==== 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. | 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. | ||
==== Adjustments ==== | ==== Adjustments ==== | ||
- | The properties in this group rotate the normals of each leaf without rotating the geometry. | + | The properties in this group rotate the normals of each leaf without rotating the geometry. These properties are commonly used when creating [[atclusters|clusters]]. |
- | >**Hint:** Apply variance to these properties to make leaves in a cluster appear jumbled when lit in the final model. | + | **Hint:** Apply variance to these properties to make leaves in a cluster appear jumbled when lit in the final model. |
- | == Up == | + | === Up === |
- | This property rotates | + | Rotates |
- | == Right == | + | === Right === |
- | This property rotates | + | Rotates |
- | == Out == | + | === Out === |
- | This property rotates | + | Rotates |
===== Wind ===== | ===== Wind ===== | ||
The properties in this group influence how leaves are animated in wind simulations. | The properties in this group influence how leaves are animated in wind simulations. | ||
- | ==Scalar== | + | ====Scalar==== |
- | Use this property to scale how much the leaf moves during wind simulations. | + | Use this property to scale how much the leaf moves during wind simulations. The amount and frequency of motion are 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 disconnecting from the parent. | + | **Note:** The left-hand side of the profile curve must be zero to avoid disconnecting from the parent. |
- | ==Group== | + | ====Group==== |
- | In many wind styles, multiple wind groups are available. | + | 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== | + | ====Seed==== |
Vary this parameter to randomize wind characteristics. | Vary this parameter to randomize wind characteristics. | ||
- | |||
- | ==Lock to parent== | ||
- | When enabled, leaf mesh stay attached to their parent during wind animation but do so by sacrificing their own, independent motion. | ||
- | |||
- | ===== Growth ===== | ||
- | The properties in this group control how the model behaves during animated growth. | ||
- | |||
- | == Speed Scale == | ||
- | The speed at which a leaf will grow is set on the [[tooltimeline|Timeline Bar]]. Use this property to scale that value. The profile curve scales the speed relative to the leaf's total growth time. For example, ease in and out of the growth animation by using an " | ||
- | |||
- | == Smoothing == | ||
- | Leaves can be oriented either based on the current state of their parent (0.0 smoothing), the final state of their parent (1.0 smoothing), or anywhere in between. Increase this value to prevent wild leaf motion during growth. This is especially useful for leaves growing off of a twisted or gnarled parent. | ||
- | |||
- | ==== Transitions==== | ||
- | == Size == | ||
- | This curve control how the size increases over the course of the leaf's growth time. | ||
- | |||
- | == Orientation == | ||
- | This value controls how much to rotate the leaf about its local X axis at the start of its growth period. | ||
- | |||
- | == Curl == | ||
- | Adds additional curl to the leaf at the start of the growth. | ||
- | |||
- | == Fold == | ||
- | Adds additional fold to the leaf at the start of the growth. | ||
- | |||
- | ==== Timing ==== | ||
- | == Style == | ||
- | Sets the conditions under which the leaf will start growing. The Start % property works according to the option selected here. Options include: | ||
- | |||
- | ^In Place | The leaf will start growing exactly when the parent is long enough to reach its starting point in the fully grown model. "Start %" has no effect. This style makes the animation appear to trace out the model.| | ||
- | ^Parent | The growth of this leaf will be based on the growth of the parent. A Start % of 0.0 means start when the parent starts, 1.0 means start when the parent ends. | | ||
- | ^Parent' | ||
- | |||
- | == Start % == | ||
- | Causes leaves to start early (0.0) or late (1.0) according to the " | ||
- | |||
- | == Offset == | ||
- | The start frame is shifted by a constant number of frames (negative means earlier, positive means later). This value is best used to “jumble up” start times of neighboring leaves. | ||
- | |||
- | > | ||
- | |||
- | ====Noise==== | ||
- | The properties in these groups add noise to the growth animation to provide a more organic effect. | ||
- | |||
- | ===Wobble=== | ||
- | ==Amount== | ||
- | Controls how much noise is applied when bringing the orientation into its final position. | ||
- | |||
- | > | ||
- | |||
- | ==Frequency== | ||
- | Increases or decreases the frequency of the noise pattern used for orientation. | ||
- | |||
- | ===Speed=== | ||
- | ==Amount== | ||
- | Controls how much noise is applied to the speed at which the leaf reaches its final position. | ||
- | |||
- | > | ||
- | |||
- | ==Frequency== | ||
- | Increases or decreases the frequency of the noise pattern used for speed. | ||
- | |||
- | ==Seed== | ||
- | Change this value to vary the noise pattern. | ||
===== Season ===== | ===== Season ===== | ||
The properties in this group control how leaves transition in the [[kcseasons|seasons]] system. | The properties in this group control how leaves transition in the [[kcseasons|seasons]] system. | ||
- | == Start Offset | + | ==== Start offset ==== |
- | Leaf transitions are determined by looking up season curves based on the position of the season slider. | + | 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. | + | |
- | + | ||
- | == 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" | + | |
- | + | ||
- | == Ground duration == | + | |
- | The amount of time the leaves stay on the ground before disappearing. | + | |
- | + | ||
- | == Spread == | + | |
- | Controls how far from the point directly under the tree the leaf may travel before hitting the ground. | + | |
- | + | ||
- | == Flatten == | + | |
- | Determines the amount of deformation removal (" | + | |
- | == Jumble | + | ==== Time scale ==== |
- | Randomizes the orientations of leaves | + | Scales how fast time passes relative to a single leaf. Higher values make leaves |
- | == Slope Limit == | + | ==== Drop time ==== |
- | If you have a force mesh applied to the leaf generator, fallen leaves | + | Controls how long the leaf will remain attached. A leaf can drop no matter what material is assigned. |
===== Dynamic LOD ===== | ===== Dynamic LOD ===== | ||
- | The properties in this group control the [[kclod|LOD]] behavior of the leaves. | + | The properties in this group control the [[kcgameslod|LOD]] behavior of the leaves. |
- | ==Weight== | + | ====Weight==== |
- | Use this value to increase | + | Increase |
- | ==Scale | + | ====Scale |
- | Leaves that survive the LOD process grow to fill the vacated space. | + | Leaves that survive the LOD process grow to fill the vacated space. The amount is set in the [[tree_generator# |
- | ==Mesh | + | ====Mesh |
- | This curve controls which mesh LOD (if present) is used for each LOD state. | + | This curve controls which mesh LOD (if present) is used for each LOD state. The left side of the curve corresponds to the highest LOD. The right side corresponds to the lowest LOD. |
- | + | ||
- | ===== Vertex Color ===== | + | |
- | The properties in this group control how vertex colors are computed. | + | |
- | + | ||
- | > | + | |
- | + | ||
- | ====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 " | + | |
- | ^Offset from parent | The " | + | |
- | + | ||
- | ==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 " | + | |
- | ^Offset from parent | The " | + | |
- | + | ||
- | ==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 " | + | |
- | ^Offset from parent | The " | + | |
- | + | ||
- | ==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 [[kcmeshes|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 " | + | |
- | ^Add | The " | + | |
- | + | ||
- | ==Contribution== | + | |
- | This value sets how much influence the mesh asset vertex color has on the final vertex color. | + | |
===== Collision ===== | ===== Collision ===== | ||
The properties in this group influence how leaves in this generator interact with the [[toolcollision|collision]] system. | The properties in this group influence how leaves in this generator interact with the [[toolcollision|collision]] system. | ||
- | == Style == | + | ==== Style ==== |
- | Use this property to set how the leaves behave during collision computations | + | Use this property to set how the leaves behave during collision computations. |
- | ^Everything | Leaves in this generator collide with each other and all other leaves.| | + | ^**Property**^**Description**^ |
- | ^Ignore | + | |**Everything**| Leaves in this generator collide with each other and all other leaves.| |
- | ^Knock out Others Only | Leaves in this generator cannot be removed, but they can eliminate leaves in other generators.| | + | |**Ignore |
- | ^Nothing |These leaves do not participate in collision computations.| | + | |**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 == | + | ==== Take parent |
- | When enabled, if a leaf in this generator is removed, its parent is also removed. | + | 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. |
- | == Ignore parent== | + | ==== Weight ==== |
- | Check this box to have leaves | + | When leaves |
- | == Also remove descendants | + | ==== Sphere threshold |
- | If this leaf is eliminated during collision computations, | + | 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. |
- | + | ||
- | == 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. | + | |
- | + | ||
- | == 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. | + | |
===== Lightmap ===== | ===== Lightmap ===== | ||
- | The property in this group affects the influence leaves in this generator have on the [[lightmap|lightmap]]. | + | The property in this group affects the influence leaves in this generator have on the [[kcgameslightmap|lightmap]]. |
- | + | ||
- | > | + | |
- | ==Weight== | + | **Note:** Not all versions |
- | Use this property to increase or decrease the importance | + | |
+ | ====Weight==== | ||
+ | Use this property to increase or decrease the importance of this generator' |