Skip to content

linkChain Settings

Author: Asaf Ben-Zur

Best used for: Tank-Treads, Bike-Chains, Ferris-Wheel, Tire, Conveyor-Belt

This is a comprehensive module, to create a link-chain style behaviour.

Originally created for tank-treads, but can be used for a range of components.

On creation, based on the number on the numberOfLinks setting, joints will be created on a circle Nurbs curve with shapeSections setting amount.

After creation, the shape can be tweaked to fit any need.

IMPORTANT NOTE: This module requires a joint-struct-rebuild once the Nurbs shape has been tweaked.

Once the joint-struct is revuilt, the joints will be layed out uniformally along the given shape.

Upon construction, a main control will be created for controlling the entire position of the module.

Under, a chain-driver control will be created. Rotating it will drive the joint chain along the curve in both forwards and backwards directions.

Also, use the shape-tweak layer to create a tweak feature for the shape on construction. This will allow manipulation of the shape dynamically while the chain is driven.

Automatic drive based on position is also possible wihin this module using the AutoDrive layer.


splitOrientSpace True If this is set to True, all space switch attributes for this module will split into two spaces- Translate and Orient, for the animator to be able to set different space for tranlation and orientation


Attribute NameDefaultDescription
numberOfLinks 16 Amount of links in the chain. A joint will be created for every link
reverseOffsetDirection False In case the the rotation post construction is reversed, set this attribute to ON
upCurveOffset 5.0 The offset value to generate the up curve, based on a center matrix- the modules root joint
controlShape circle Control shape
slaveControlShape dodecagon Slave control shape
wheelDiameter 20.0 The diameter of your wheel. This is very important to set correctly as the diameter of the wheel is one of the source attributes for the wheels rotation calculation
mapRoatationToAxis 0 Map the rotation action you need to be acted on. This is based on the orientation of your guide
rotationMode 0 In case your chain links are connected to one another- it is recommended to use lookAtNext. In case there isn't a connection between your links, curveTangent might be a better choice
X v
Y v
Z v

Slave control channel-box settings


Attribute NameDefaultDescription
doShapeTweakers False If this setting in set to True, the shape-tweak feature will be created. In case you want to tweak the shape of the closed-shaped link chain curve in animation, turn this feature on
shapeTweakers [' '] Input guides/joints- In order. A closed nurbs-curve shape will be constructed from the inputs and will be used as a tweak to deform the main shape driving the chain. These MUST be Mansur-Rig objects, and a part of the same Block rig.
tweakMethod 1 This attribute will determine the shape tweak method. In Direct-Skin mode, the link chain shape will be directly skinned to all input tweakers. In Build-Transforms-Curve mode a new curve will be constructed based on the curve mode selected and input tweakers, which will be used to deform the master shape indirectly. This mode will allow for a better control over the deformation, as it is based on curve re-generation instead of direct curve deformation. Build transforms curve mode will generate a new closed shape curve based on the input tweak transforms, hence it is order sensative. In case you wish to use this mode, make sure you input the tweakers in order which makes sense to generate a closed curve shape. Rebuild-Then-Skin mode will first rebuild the curve based on the input re-build number of spans attribute, then skin the curve and deform the master curve indirectly
rebuildNumOfSpans 16 relevant only on rebuildThenSkin tweak method. This attribute dectates the amount of sections to rebuild the curve to before skinning
tweakCurveInterpolaion 1 relevant only on mnsBuildTransformsCurve tweak method
tweakCurveDegree 3 relevant only on mnsBuildTransformsCurve, and rebuild then skin tweak methods


Attribute NameDefaultDescription
doAutoDrive False This feature will create an auto-drive mechanism, that will automatically drive the chain when it moves in space
autoDriveWheelDiameter 20.0 The diameter of the driver wheel, whether it exists or not. This diameter is derived from the main gear driving this link-chain. This diameter will be used to calculate the drive of the chain
gearRatio 1.0 In case your main driver is derived from another gear, you can set its ratio here to get accurate results
reverseDirection False In some cases the direction of the drive is flipped. If this is your case, set this setting to True to correct this issue
autoDriveDefault 1.0 Auto-Drive channel default state