meta data for this page
  •  

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
force_object [2023/07/20 12:15] steph.jorgensenforce_object [2023/11/15 10:24] (current) steph.jorgensen
Line 2: Line 2:
 The properties on force objects control how [[kcforces|forces]] affect the model and the scene. The properties on force objects control how [[kcforces|forces]] affect the model and the scene.
  
->**Note:** Forces operate only on [[kcgenerators|Generators]] or [[kcnodes|Nodes]] where the force is enabled in the "Forcesproperty group.+>**Note:** Forces operate only on [[kcgenerators|Generators]] or [[kcnodes|Nodes]] where the force is enabled in the Forces property group.
  
 =====Force===== =====Force=====
 The properties in this group set the basic functionality of force objects. The properties in this group set the basic functionality of force objects.
  
-==Enabled==+====Enabled====
 Use this property to toggle the force's influence on model computation.  Disabling a Mesh force will stop it from influencing the model but it will not take it out of the model if it is set to be included (see "Include in Model," below). Use this property to toggle the force's influence on model computation.  Disabling a Mesh force will stop it from influencing the model but it will not take it out of the model if it is set to be included (see "Include in Model," below).
  
-==Type==+====Type====
 Sets the type of [[kcforces#Force Types|force]]. Sets the type of [[kcforces#Force Types|force]].
  
-==Strength==+====Strength====
 This value controls how much the force influences the model.  This number is multiplied by the value of the force properties on each generator before being applied to the model. This value controls how much the force influences the model.  This number is multiplied by the value of the force properties on each generator before being applied to the model.
  
-==Color==+====Align strength==== 
 +Controls how much the force acts on the initial orientation of the nodes it affects. Each generator has an alignment scalar that combines with **Align strength** to control the alignment behavior. 
 + 
 +====Color====
 Sets the color of the force indicator in the [[tooltree_window|Tree Window]]. Sets the color of the force indicator in the [[tooltree_window|Tree Window]].
  
-==Indicator Scale==+====Indicator scale====
 Sets the size of the icon used to represent the force in the [[tooltree_window|Tree Window]].  This property has no effect on the size of actual mesh forces. Sets the size of the icon used to represent the force in the [[tooltree_window|Tree Window]].  This property has no effect on the size of actual mesh forces.
  
-==Normals projection==+====Normals projection====
 Set whether the force object can influence [[lighting-leaves-and-fronds|global lighting]]. This property is available only when **Type** is set to **Geometry**. Set whether the force object can influence [[lighting-leaves-and-fronds|global lighting]]. This property is available only when **Type** is set to **Geometry**.
  
 ^ **Property** ^ **Description** ^ ^ **Property** ^ **Description** ^
-| Disabled | The force object can’t influence global lighting. | +**Disabled** | The force object can’t influence global lighting. | 
-| Enabled (used by global lighting) | The force object can influence the global lighting of any leaf or frond generators it encapsulates. To adjust lighting relative to this force object, see the **Projectors** property in the [[light#global|global lighting properties]]. |+**Enabled (used by global lighting)** | The force object can influence the global lighting of any leaf or frond generators it encapsulates. To adjust lighting relative to this force object, see the **Projectors** property in the [[light#global|global lighting properties]]. |
  
-=====Mesh===== 
-These properties control the behavior of [[geometry_forces|geometry forces]].  Set the "Type" property above to "Mesh" to make a force act as a force mesh. 
  
-==Include in Model== 
-Enable this property to have the mesh exported as part of the model.  With this property disabled, the mesh will be used to interact with the model but it will not be included in exports. 
  
-==Mesh== +=====Geometry===== 
-Specifies a named [[kcmeshes|mesh asset]].+These properties control the behavior of [[geometry_forces|geometry forces]]. Set the **Type** property above to **Geometry** to make a force act as a force mesh.
  
-==Force action== +====Source==== 
-Specifies how the mesh surface should influence branch spines from the following options:+Choose whether the geometry force is governed by a mesh asset or generator.
  
-^ Avoid | Spines are repelled by the closest spot on the surface of the mesh. | +====Mesh Asset==== 
-^ Attract | Spines are pulled towards the closest spot on the surface of the mesh. | +These properties are visible only if **Source** is set to **Mesh asset**.
-^ None | No action is applied to the spines|+
  
-==Collide Action== +===Mesh=== 
-Specifies what happens when branch spine collides with the mesh surfaceYou may choose from the following options:+Specifies a named [[kcmeshes|mesh asset]].
  
-^ None | No action is taken (spines will go through the mesh). | +===Include in model=== 
-^ Obstruct | Spines are blocked by the surface of the mesh and “crawl” over itattempting to grow in their original direction. | +Enable this property to have the mesh exported as part of the model.  With this property disabled, the mesh will be used to interact with the model but it will not be included in exports.
-^ Prune | Spines are broken when they collide with the mesh. | +
-^ Stop | Spines are considered fully grown where they hit the mesh.  They will be shorter than intended but all of the profile curves will cover the full length of the spine|+
  
-==Keep Action== +===Ambient occluder=== 
-Specifies what happens to spines that are using this mesh from the following options:+When the mesh is not being included in the model, check this property to allow the mesh to contribute to [[kclighting#ambient_occlusion|ambient occlusion]] computations.
  
-^ All | All nodes will be kept regardless of whether they collide with the mesh or not. | +===Display color=== 
-^ Hits | Only nodes that collide with this mesh will be kept (if this force is enabled on the generator). All others will be destroyed. | +Specifies what color is used to render the mesh when no material has been assigned.
-^ Misses | Only nodes that do not collide with this mesh force will be kept (if this force is enabled on the generator). All others will be destroyed|+
  
-==Obstruction Distance== +===Material=== 
-Sets the distance from the base of each spine node where obstruction by the Mesh force is prohibited. It is sometimes desirable to refrain from obstructing the very base of branches so that they are able to begin their growth without being immediately redirected by mesh forces+Assign a material to render the mesh asset.
  
-==Max Iterations== +===Level of Detail=== 
-When a mesh collision is detectedthis property determines how many attempts are made to continue on without going through the mesh.  More iterations mean a better chance of finding a route at the expense of slower computation times.+Specifies which mesh LODif available, is used for the current LOD state.
  
-==Max Angle== +>**Note:** LOD meshes must be assigned to the [[kcmeshes|mesh assets]] for this property to work.
-Specifies the maximum amount a spine can bend to try to get around the mesh.+
  
-==Give up Action== +===Lightmap scale=== 
-Once all of the iterations have failed for a spine that has collided with the mesh, this property specifies what action to take from the following options:+Controls this mesh's influence on the [[kcgameslightmap|lightmap]] in versions where lightmap UVs are computed.
  
-^ None | No action is taken, the spine goes through the mesh. +=====Behavior===== 
-^ Prune | Spines that cannot escape will be pruned at the collision point. | +Specifies how the mesh surface should influence branch spines.
-^ Destroy | The spine will be removed. |+
  
-==Ambient Occluder== +====Actions==== 
-When the mesh is not being included in the model, check this property to allow the mesh to contribute to [[kclighting#ambient_occlusion|ambient occlusion]] computations.+Specifies what happens when a branch spine collides with the mesh surface.
  
-==Level of Detail== +====Name==== 
-Specifies which mesh LOD, if available, is used for the current LOD state.+The name of the action.
  
->**Note:** LOD meshes must be assigned to the [[kcmeshes|mesh assets]] for this property to work.+====Force====
  
-====Material==== +^**Property**^**Description**^ 
-The properties in this group control the appearance of the force mesh.+|**Avoid**| Spines are repelled by the closest spot on the surface of the mesh. 
 +|**Attract**| Spines are pulled towards the closest spot on the surface of the mesh. | 
 +|**None**| No action is applied to the spines. |
  
-==Material== +====Collide==== 
-Specifies a named material from the [[toolmeshesbar|Mesh Asset Bar]]. +Once all of the iterations have failed for a spine that has collided with the meshthis property specifies what action to take.
- +
-==Color== +
-Specifies what color is used to render the mesh when no material has been assigned. +
- +
-===Lightmap=== +
-Controls this mesh's influence on the [[kcgameslightmap|lightmap]] in versions where lightmap UVs are computed.+
  
-==Scale== +^**Property**^**Description**^ 
-Use this value to take up more or less space in the lightmap.+|**None**| No action is taken (spines will go through the mesh). | 
 +|**Obstruct** | Spines are blocked by the surface of the mesh and “crawl” over it, attempting to grow in their original direction. | 
 +|**Prune**| Spines are broken when they collide with the mesh. | 
 +|**Stop**| Spines are considered fully grown where they hit the mesh.  They will be shorter than intended but all of the profile curves will cover the full length of the spine|
  
 =====Attenuation===== =====Attenuation=====
 Causes the force's influence to taper off as the spine gets farther away from the location of the force. Causes the force's influence to taper off as the spine gets farther away from the location of the force.
  
-==Type==+====Type====
 Specifies the type of attenuation from the following options: Specifies the type of attenuation from the following options:
  
Line 110: Line 102:
 ^ Hard | The force effect goes to zero outside the distance specified below. | ^ Hard | The force effect goes to zero outside the distance specified below. |
  
-==Distance==+====Distance====
 This value sets distance around the force where attenuation is applied. This value sets distance around the force where attenuation is applied.
  
-==Falloff Distance==+====Falloff distance====
 Sets the distance from the edge of the attenuation towards the force location at which attenuation begins. Sets the distance from the edge of the attenuation towards the force location at which attenuation begins.
  
-==Indicator== +====Container forces====
-Selects when the attenuation indicator is displayed from the following options: +
- +
-^ Selected | Only display the indicator when the force is selected. | +
-^ Always | Always show the indicator. | +
-^ Never | Never display the attenuation indicator. | +
- +
-====Container Forces====+
 The properties in this group allow you to specify mesh forces to be used to designate the area of effect for this force.  Use these properties to designate regions where forces work based on mesh assets. The properties in this group allow you to specify mesh forces to be used to designate the area of effect for this force.  Use these properties to designate regions where forces work based on mesh assets.
  
-==Include==+===Include===
 Type the name of a Mesh force in this property. That mesh will be used to indicate the only region where this force is applied. Type the name of a Mesh force in this property. That mesh will be used to indicate the only region where this force is applied.
  
-==Exclude==+===Exclude===
 Type the name of a Mesh force in this property. That mesh will be used to indicate the region where this force will not be applied. Type the name of a Mesh force in this property. That mesh will be used to indicate the region where this force will not be applied.
 +
 +====Indicator====
 +Selects when the attenuation indicator is displayed. 
 +
 +^**Property**^**Description**^
 +|**Selected**| Only display the indicator when the force is selected. |
 +|**Always**| Always show the indicator. |
 +|**Never**| Never display the attenuation indicator. |
  
 =====Animation===== =====Animation=====
Line 137: Line 130:
 >**Note:** Only the force's strength can be animated -- its position cannot be animated. >**Note:** Only the force's strength can be animated -- its position cannot be animated.
  
-==Start Frame==+====Start Frame====
 Specifies the frame at which the animation starts. Specifies the frame at which the animation starts.
  
-==Duration==+====Duration====
 Sets how many frames the animation lasts. Sets how many frames the animation lasts.
  
-==Profile==+====Profile====
 Controls the animation, as follows:  The left-hand side of the curve corresponds to the percentage of the force applied at the start frame.  The right-hand side corresponds to the percentage of the force applied at the end of the animation duration. Controls the animation, as follows:  The left-hand side of the curve corresponds to the percentage of the force applied at the start frame.  The right-hand side corresponds to the percentage of the force applied at the end of the animation duration.
  
Line 149: Line 142:
 When using animated growth, controls the strength of the force over the life cycle of the growth animation. When using animated growth, controls the strength of the force over the life cycle of the growth animation.
  
-==Lifetime %==+===Lifetime %===
 Controls the strength of the force over the duration of the growth animation.  The left-hand side of the curve corresponds to the percentage of the force applied at the start of the growth animation.  The right-hand side corresponds to the percentage of the force applied at the end of the growth animation. Controls the strength of the force over the duration of the growth animation.  The left-hand side of the curve corresponds to the percentage of the force applied at the start of the growth animation.  The right-hand side corresponds to the percentage of the force applied at the end of the growth animation.
  
Line 157: Line 150:
 ====Translation==== ====Translation====
  
-==X, Y, Z==+===X, Y, Z===
 Sets the position of the force object. Sets the position of the force object.
  
-==Reset translation==+===Reset translation===
 Positions the force at the origin. Positions the force at the origin.
  
 ====Rotation==== ====Rotation====
  
-==Axis X, Axis Y, Axis Z==+===Axis X, Axis Y, Axis Z===
 Specifies the vector around which the force is rotated. Specifies the vector around which the force is rotated.
  
-==Angle==+===Angle===
 Specifies how much the force is rotated around the axis. Specifies how much the force is rotated around the axis.
  
-==Reset rotation==+===Reset rotation===
 Resets the rotation back to the default settings. Resets the rotation back to the default settings.
  
 ====Scale==== ====Scale====
  
-==X, Y, Z==+===X, Y, Z===
 Sets the scale of the force object on each axis. Sets the scale of the force object on each axis.
  
-==Uniform==+===Uniform===
 When checked, the X, Y, and Z scales are set to the same value as to not distort the shape. When checked, the X, Y, and Z scales are set to the same value as to not distort the shape.
  
-==Reset Scaling==+===Reset Scaling===
 Sets the scale values back to 1.0. Sets the scale values back to 1.0.
-