_images/carbon_nlattice.png

Carbon N-Lattice

Type

_images/carbon_nlattice.png

Object node.

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.

_images/carbon_nlattice.png

An Carbon N-Lattice.

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.

_images/reference_carbon_plumage_lattice.png

A typical 6x9 lattice. Note the directions of the points numbering and the flipped edges 5-10 and 46-53 to prevent weak corners. Yellow points denote a typical shaft rigid attachment.

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.

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.

Note

This parameter is only available if collision is activated. See Activated.

Self Thickness selfThickness

Self Thickness of the lattices. In scene units.

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\)).

Stretch Viscosity stretchViscosityBase

Lattice’s stretch viscosity (dimensionless).

Stretch Compression stretchCompressionBase

Lattice’s stretch compression, must be strictly greater than 0 and always be smaller than or equal to extension.

Stretch Extension stretchExtensionBase

Lattice’s stretch extension, must be strictly greater than 0 and always greater than or equal to compression.

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\)).

Bend Viscosity bendViscosityBase

Lattice’s angular viscosity (dimensionless).

Yield bendYieldBase

Lattice’s angular yield (\(degree\)), between 0 and 180.

Plasticity bendPlasticityBase

Lattice’s angular plasticity, between 0 and 1.

Bend Limit bendLimitBase

Lattice’s crease angular limit (\(degree\)), between 0 and 180 degree.

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.

Surface Extension surfaceExtensionBase

Lattice’s surface extension, must be strictly greater than 0 and greater than or equal to compression.

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

Surface Pressure

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

Viscous Damping

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

Friction

Dynamic Friction dynamicFriction

Lattice dynamic friction, greater than or equal to 0 and smaller than or equal to static friction.

See also

Friction


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

Aerodynamics

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

Aerodynamics

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

Aerodynamics

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

Physics Draw

Use Color useColor

Tick to enable custom color for the Physics Draw.

Color colorr colorg colorb

Custom color for the Physics Draw.