Carbon N-Lattice¶
Description¶
This node defines a Carbon N-Lattice simulation object, its import geometry, and the N-Lattice parameters.
A Carbon N-Lattice is a hybrid object, containing multiple lattices, each made of several Carbon dynamic elements. It can be used for a wide range of applications such as feathers, hair, fur, foliage, plants, …etc.
A lattice must be a grid-like geometry with each of its points numbered from left to right and bottom to top.
Each lattice is made of a rigid shaft that is welded to a soft body.
This must be specified through a shaft
point attribute painted on the
reference lattice where rigidity to the joint attachment of the lattice is
required.
A N-Lattice reference geometry contains the complete set of lattices, which can be authored individually. This geometry can be animated when needed.
Warning
When using a N-Lattice setup, you must carefully set the Lattice Width parameter. For example, the 6x9 lattice above being a grid of 6 points in width will require a Lattice Width of 6. Using an acceptable but wrong value (such as the grid height instead of width) will not give an error but yield a visual result that will simulate incorrectly.
See the N-Lattice User Guide for more in depth information.
Inputs¶
Input #1 - N-Lattice Geometry
N-Lattice Geometry.
Note
This must be the lattices in normal configuration when a Groom Geometry with individual lattice angles is provided.
Input #2 - Lattice Geometry
Lattice’s geometry.
Input #3 - Groom Pose (Optional)
Pose defining the N-Lattice Groom Angles. This parameter is required in order to have a Swing Lead-In to the individual lattice angles and have access to the Groom Angles Angle Limit.
Parameters¶
Activation activation
Enable this object. Use 0 to disable, any other value to enable.
Stasis stasis
Tick to place this object into stasis mode. Can be animated.
Stasis Mode triggers a dynamics integration that ignores all action forces and wipes out all kinetic energy, reducing motion and deformation to only result from the reaction forces generated by constraints, such as collision, joints, or soft body primitives.
Note
If the Carbon Simulation’s Lead Simulation parameter Stasis Mode is toggled on, this node will also be in Stasis mode during the Lead Simulation, even if this node’s Stasis parameter is toggled off.
N-Lattice¶
Animated Geometry geometryAnimated
Enable animated N-Lattice geometry.
Note
It is a good practice to leave this toggled off
when not using
animated parameters because it impacts performance.
Root Offset rootOffset
Lattice root offset in surface normal direction. Must be greater or equal to the Collider Outer Fatness positioned underneath the lattices if any.
Growth Lead-In leadScales
The lead-in time in number of frames spent growing the lattices.
Note
Any value different than 0 will force the Animated flag during the growth lead-in.
Swing Lead-In leadAngles
The lead-in time in number of frames spent swinging the lattices to their reference angles/positions.
Note
Either a Groom Pose geometry or the Override Angles mode must be specified for the Swing Lead-In to be activated.
Animated Angles anglesAnimated
Enable animated parameters for this section by evaluating and updating the values at every frame.
Note
It is a good practice to leave this toggled off
when not using
animated parameters because it impacts performance.
Groom Angles
Extract all lattices’ resting angles from the Groom Pose.
Angle Limit angleLimit
Angular swing limit per lattice.
Note
A Groom Pose geometry must be specified for the Angle Limit to be activated.
Override Angles
Override all angles described by the Groom Pose, if any, and set all lattices to conform to the same resting angle.
Angle angle
Lattice’s resting angle, set equally for all lattices.
Animated Springs springsAnimated
Enable animated N-Lattice springs controlling the lattices’ orientation.
Note
It’s good practice to leave this toggled off
when not using
animated parameters because it impacts performance.
Base Parameters
Swing Stiffness swingStiffnessBase
The joint swing angular stiffness.
Swing Viscosity swingViscosityBase
The joint swing angular viscosity.
Twist Stiffness twistStiffnessBase
The joint twist angular stiffness.
Twist Viscosity twistViscosityBase
The joint twist angular viscosity.
Painted Attribute Range
Swing Stiffness swingStiffnessRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Painted primitive attribute name: swingStiffness
Swing Viscosity swingViscosityRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Painted primitive attribute name: swingViscosity
Twist Stiffness twistStiffnessRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Painted primitive attribute name: twistStiffness
Twist Viscosity twistViscosityRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Painted primitive attribute name: twistViscosity
Lattice¶
Shaft Point Group groupA
Points to weld to the rigid shaft.
Lattice Width latticeWidth
Number of points in the lattice grid horizontal direction. The lattice points are numbered from left to right and bottom to top and the lattice grid should at least be 2x2 points in resolution.
Warning
It is important to set the correct value for this parameter so that the lattices’ position and center of mass can be correctly calculated. Using an acceptable but wrong value (such as the grid height instead of width) will not give an error but still yield a visual result that will simulate incorrectly.
Collision
Activated collisionActivated
Untick this box to remove all collision between this N-Lattice and itself and all other Carbon nodes in the same simulation.
If unticked, all other Collision parameters will be disabled, as well as all Collision Material and Aerodynamics parameters.
Note
A N-Lattice without collision activated cannot interact with any Carbon Flow nodes.
Self Collide selfCollide
Enable self-collision for the lattices against themselves.
Note
This parameter is only available if collision is activated. See Activated.
Thickness thickness
Thickness of the lattices. In scene units.
See also
Note
This parameter is only available if collision is activated. See Activated.
Use Self Thickness useSelfThickness
Tick to use a Self Thickness for self-collision for the lattices. If left unticked, the Thickness value will be used for Self Thickness. In scene units.
See also
Note
This parameter is only available if collision is activated. See Activated.
Self Thickness selfThickness
Self Thickness of the lattices. In scene units.
See also
Note
- This parameter is only available if Self Thickness if toggled.
- This parameter is only available if collision is activated. See Activated.
Mass
Mass mass
Lattices’ mass in kg.
Welding
Base Parameters
Welding Radius weldingRadiusBase
Lattice’s soft-welding radial limit, how far a lattice is allowed to move away from its rigid attachment points.
Note
It is recommended to use at least a small radius for most applications. Soft-welding is a simple way to handle over-constrained situations, reducing jiggling and increasing stability.
Welding Stiffness weldingStiffnessBase
Lattice’s soft-welding stiffness coefficient, keeps the lattices from moving away from their rigid attachment points.
Note
Enabled when the Welding Radius (Base or Range) is greater than zero.
Welding Viscosity weldingViscosityBase
Lattice’s soft-welding viscous ratio, the damping of the lattices moving around their rigid attachment points.
Note
Enabled when the Welding Radius (Base or Range) is greater than zero.
Painted Attribute Range
Welding Radius weldingRadiusRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Welding Stiffness weldingStiffnessRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Enabled when the Welding Radius (Base or Range) is greater than zero.
Welding Viscosity weldingViscosityRange
The multiplier of the painted primitive attribute values that add up to the base parameter.
Note
Enabled when the Welding Radius (Base or Range) is greater than zero.
Painted Attribute Names
Radius radiusName
Lattice’s geometry point attribute name used as this parameter’s painted values.
Stiffness stiffnessName
Lattice’s geometry point attribute name used as this parameter’s painted values.
Viscosity viscosityName
Lattice’s geometry point attribute name used as this parameter’s painted values.
Stretch
Base Parameters
Stretch Stiffness stretchStiffnessBase
Lattice’s stretch stiffness (\(mass/time^2\)).
See also
Stretch Viscosity stretchViscosityBase
Lattice’s stretch viscosity (dimensionless).
See also
Stretch Compression stretchCompressionBase
Lattice’s stretch compression, must be strictly greater than 0 and always be smaller than or equal to extension.
See also
Stretch Extension stretchExtensionBase
Lattice’s stretch extension, must be strictly greater than 0 and always greater than or equal to compression.
See also
Range Parameters
Stiffness stretchStiffnessRange
Painted point attribute name: stretchStiffness
The multiplier of the painted point attribute values that add up to the base parameter.
Viscosity stretchViscosityRange
Painted point attribute name: stretchViscosity
The multiplier of the painted point attribute values that add up to the base parameter.
Compression stretchCompressionRange
Painted point attribute name: stretchCompression
The multiplier of the painted point attribute values that add up to the base parameter.
Extension stretchExtensionRange
Painted point attribute name: stretchExtension
The multiplier of the painted point attribute values that add up to the base parameter.
Equilibrium stretchEquilibriumRange
Painted point attribute name: stretchEquilibrium
The multiplier of the painted point attribute values that add up to the base parameter.
Bend
Base Parameters
Bend Stiffness bendStiffnessBase
Lattice’s angular stiffness (\(mass * length^2 / time^2 / degree\)).
See also
Bend Viscosity bendViscosityBase
Lattice’s angular viscosity (dimensionless).
See also
Yield bendYieldBase
Lattice’s angular yield (\(degree\)), between 0 and 180.
See also
Plasticity bendPlasticityBase
Lattice’s angular plasticity, between 0 and 1.
See also
Bend Limit bendLimitBase
Lattice’s crease angular limit (\(degree\)), between 0 and 180 degree.
See also
Range Parameters
Stiffness bendStiffnessRange
Painted point attribute name: bendStiffness
The multiplier of the painted point attribute values that add up to the base parameter.
Viscosity bendViscosityRange
Painted point attribute name: bendViscosity
The multiplier of the painted point attribute values that add up to the base parameter.
Yield bendYieldRange
Painted point attribute name: bendYield
The multiplier of the painted point attribute values that add up to the base parameter.
Plasticity bendPlasticityRange
Painted point attribute name: bendPlasticity
The multiplier of the painted point attribute values that add up to the base parameter.
Limit bendLimitRange
Painted point attribute name: bendLimit
The multiplier of the painted point attribute values that add up to the base parameter.
Surface
Base Parameters
Surface Compression surfaceCompressionBase
Lattice’s surface compression, must be strictly greater than 0 and smaller than or equal to extension.
See also
Surface Extension surfaceExtensionBase
Lattice’s surface extension, must be strictly greater than 0 and greater than or equal to compression.
See also
Surface Pressure surfacePressureBase
Lattice’s pressure. Unit in \(mass/length/time^2\).
Describes the force per area over a surface map exercised by a virtual fluid.
Warning
Explicit force, so high values can produce instability.
See also
Painted Attribute Range
Surface Compression surfaceCompressionRange
Painted point attribute name: surfaceCompression
The multiplier of the painted point attribute values that add up to the base parameter.
Surface Extension surfaceExtensionRange
Painted point attribute name: surfaceExtension
The multiplier of the painted point attribute values that add up to the base parameter.
Surface Pressure surfacePressureRange
Painted point attribute name: surfacePressure
The multiplier of the painted point attribute values that add up to the base parameter.
Viscous Damping
Base Parameters
Viscous Damping viscousDampingBase
Lattice’s viscous damping (\(1/time\)), damping control over the nodes’ group cohesion.
See also
Painted Attribute Range
Viscous Damping viscousDampingRange
Painted point attribute name: viscousDamping
The multiplier of the painted point attribute values that add up to the base parameter.
Collision Material
Static Friction staticFriction
Lattice static friction, greater than or equal to 0 and greater than or equal to dynamic friction.
See also
Dynamic Friction dynamicFriction
Lattice dynamic friction, greater than or equal to 0 and smaller than or equal to static friction.
See also
Aerodynamics
Note
This section is only available if collision is activated. See Activated.
Warning
Aerodynamics / Carbon Flow does not currently work properly with Carbon Simulation Simulation Space. When using Aerodynamics in a Carbon Simulation that has a non-default Simulation Space, it will neither take the Simulation Space’s transform, nor its local velocity from the animation into account.
Base Parameters
Form Drag formDragBase
Aerodynamics form drag. Shapes with a large apparent cross section exposed to the air flow and with a high form drag coefficient will receive more drag than thinner ones.
Warning
Explicit force, so high values can produce instability.
See also
Skin Drag skinDragBase
Aerodynamics skin drag. Friction of the skin against the air flow. Usually much smaller, and never bigger than form drag.
Warning
Explicit force, so high values can produce instability.
See also
Lift liftBase
Aerodynamics lift. Lift force coefficient.Aerodynamic force that is perpendicular to the direction of the oncoming air flow.
Warning
Explicit force, so high values can produce instability.
See also
Range Parameters
Form Drag formDragRange
Painted point attribute name: formDrag
The multiplier of the painted point attribute values that add up to the base parameter.
Skin Drag skinDragRange
Painted point attribute name: skinDrag
The multiplier of the painted point attribute values that add up to the base parameter.
Lift liftRange
Painted point attribute name: lift
The multiplier of the painted point attribute values that add up to the base parameter.
Physics Draw¶
Warning
Carbon N-Lattice Physics Draw can noticeably slowly down your scene due to the large amount of geometry being generated by the N-Lattice Physics Draw.
Physics Draw physicsDraw
This dropdown menu provides different drawing options.
See also
Use Color useColor
Tick to enable custom color for the Physics Draw.
Color colorr
colorg
colorb
Custom color for the Physics Draw.