User Tools

Site Tools


Differences

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

Link to this comparison view

fin_generator [2017/09/07 14:57]
fin_generator [2021/04/27 09:19] (current)
Line 1: Line 1:
 +====== Fin Generator ======
 +{{:fin.jpg?80 |}}The Fin Generator attaches meshes to parent branches.  Meshes will be anchored along the X axis and are expected to grow in the direction of the Y axis.  All vertices along the X axis will be welded to the parent.  Use this generator to make fungi, peeling bark, or any other thin geometry protrusions growing from a branch. 
 +
 +===== Generation =====
 +The [[generation_properties|properties]] in this group control how many fins are generated and where they are placed.
 +
 +===== Forces =====
 +The properties in this group control how forces affect the nodes created by this generator.  Only forces that influence season behavior work on fins; all others are ignored.
 +
 +== Allow Forces ==
 +When enabled, all forces that are checked will act on the generator.
 +
 +===== Random Seeds =====
 +Properties that have [[toolvariance_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. 
 +
 +=====Fins=====
 +The properties in this group control the type, size, and initial placement of the fin nodes.
 +
 +==Size==
 +This property sets the size of the fins relative to the radius of the parent at the point where they are attached.
 +
 +==Flip==
 +When enabled, randomly selected fin nodes are flipped over the Y axis.
 +
 +====Type====
 +The properties in this group specify the materials and meshes for the fin.  Meshes must be assigned to the material on the [[kcmaterialsassetsbar|Material Bar]] to be used on the fin.  Materials are chosen based on their weights and [[kcseasons|season]] settings.
 +
 +== Material ==
 +This property specifies a named material from the [[kcmaterialsassetsbar|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.
 +
 +== 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 one 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 [[kcmeshes|mesh asset]] LOD slots.
 +
 +=====Orientation=====
 +The properties in this group control how the fins are situated on their parent.
 +
 +==Style==
 +This property sets the style of the initial orientation of the fins from the following options:
 +
 +^Protrusion|Meshes default to pointing directly away from the parent.|
 +^Peeling bark (all up)|Meshes default to pointing straight up the parent branch.|
 +^Peeling bark (all down)|Meshes default to pointing straight down the parent branch.|
 +^Peeling bark (up and down)|Meshes randomly point up or down the parent branch.|
 +
 +==Start angle==
 +This property rotates the mesh around its X axis.  Angle direction is adjusted so that positive values move the mesh toward being perpendicular to the parent when peeling bark is the selected "Style".
 +
 +==Roll==
 +This property rotates the fin around its Y axis.
 +
 +===== Deformation =====
 +The properties in this group alter the shape of the 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 fin, lengthwise, along the Y axis of the mesh. A negative value bends down, while a positive value bends up. 
 +
 +==Curl==
 +Curls the fin around the mesh's X axis.
 +
 +==== Vertex ====
 +The properties in this group perform a noise-based deformation of each vertex in the mesh.
 +
 +== Amount ==
 +Controls the amount of noise applied to each vertex.
 +
 +== Noise ==
 +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 fin'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 adjust the mesh vertex normals to change the fin's lighting behavior.
 +
 +==Puffiness==
 +This value “sphere-izes” the normals around the center of the mesh, giving the geometry a more puffy appearance.
 +
 +==Match Surface==
 +This value bends the normals so that they match the surface normal of the parent.  Use this property to reduce harsh lighting artifacts where the fin meets the parent.  Use the profile curve to fade back to the regular normals as the vertices move away from the parent.
 +
 +===== Wind =====
 +The property in this group influences how fins are animated in wind simulations.
 +
 +==Ripple scale==
 +Use this property to scale how much the fin 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 disconnections from parent.
 +
 +>**Note:** Fins are treated as leaves in wind simulations.
 +
 +===== Growth =====
 +The properties in this group control how the model behaves during animated growth.  In general, you create the model in the fully grown state and use these properties to control how it gets there.
 +
 +== Speed Scale ==
 +The speed at which a fin 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 fin's total growth time. For example, ease in and out of the growth animation by using an "S-curve."
 +
 +==== Transitions====
 +== Size ==
 +This curve controls how the size increases over the course of the fin's growth time.
 +
 +== Orientation ==
 +This value controls how much to rotate the fin about its local X axis at the start of its growth period.  The profile curve controls how it transitions to the final orientation.  The rightmost point of the profile curve must be at 1.0 to match the model as it appears when growth is disabled.
 +
 +== Curl ==
 +Adds additional curl to the fin at the start of the growth.  The profile curve sets how much of the additional curl is added during the growth cycle of the fin.
 +
 +== Fold ==
 +Adds additional fold to the fin at the start of the growth.  The profile curve sets how much of the additional curl is added during the growth cycle of the fin.
 +
 +==== Timing ====
 +== Style ==
 +Sets the conditions under which the fin will start growing. The Start % property works according to the option selected here. Options include:
 +
 +^In Place | The fin 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 fin 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's Start and End | The growth of this fin will start and stop in perfect synchronization with its parent. Start % has no effect.|
 +
 +== Start % ==
 +Causes fins to start early (0.0) or late (1.0) according to the "Style" property as described above.
 +
 +== 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 fins. 
 +
 +>**Note:** It is almost never a good idea to go negative with this value (fins can't grow earlier than the structure will allow). A good practice is to have a value of something like 10 and a variance of 10 as well. That way the earliest any fin will start is when it was supposed to, but some will be delayed.
 +
 +
 +===== Season =====
 +The properties in this group control how fins transition in the [[kcseasons|seasons]] system.
 +
 +== Start Offset ==
 +Fin 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 fins begin their transition.
 +
 +== Time Scale ==
 +Scales how fast time passes relative to a single fin.  Higher values make fins transition faster.
 +
 +== Curl ==
 +Use this value to make fins curl as they transition.
 +
 +== Fold ==
 +Use this value to make fins fold as they transition.
 +
 +===== Dynamic LOD =====
 +The properties in this group control the [[kclod|LOD]] behavior of the fins.
 +
 +==Weight==
 +Use this value to increase or decrease the likelihood that fins in this generator will survive the LOD process (vs. decorators in other generators).  Use the parent curve to target specific areas of the model.
 +
 +>**Note::** Fins are considered decorators in the [[kclod|LOD]] system.
 +
 +==Mesh Index==
 +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.
 +
 +===== Collision =====
 +The properties in this group influence how fins in this generator interact with the [[toolcollision|collision]] system.
 +
 +>**Note:** Fins are considered leaves in the [[toolcollision|collision]] system.
 +
 +== Style ==
 +Use this property to set how the fins behave during collision computations from the the following options:
 +
 +^Everything | Fins in this generator collide with each other and all other fins.|
 +^Ignore Siblings | Fins in this generator ignore siblings but collide with everything else.|
 +^Knock out Others Only | Fins in this generator cannot be removed, but they can eliminate fins in other generators.|
 +^Nothing |These fins do not participate in collision computations.|
 +
 +== Weight ==
 +When fins and 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 fins anchored near each other.
 +
 +===== Lightmap =====
 +The property in this group affects the influence fins in this generator have on the lightmap.
 +
 +>**Note:** Not all versions of the Modeler support lightmap UV computation.
 +
 +==Weight==
 +Use this property to increase or decrease the importance of this generator's fins in the lightmap -- 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.