Chain Rigger

5 votes
Date Updated: 
Author Name: 
Merlin Prokasky


Tool for creating a rigged chain along a spline.


* create a chain of 1 or 2 different chain segments along a spline
* spline can be animated or linked and the chain will follow
* when spline is closed chain drive can be animated by an objects X-Rotation
* chain drive speed can be ajusted by a radius (of the rotation motor-object)


Please watch video tutorial below.

* create a spline and 1 or 2 chain elements
* run script and select objects
* if chain should be animated choose a motor (rotating object)
* set parameters interactive (optimal count is the number of chainLinks needed to close the chain)
* create chain and play with parameters interactive
* all chain objects are linked to a root-helper so they can be selected easy
* animate the X-Rotation of the selected motor-object to move the chain


ChainLink = objects which the chain is made of
Motor = object which moves the chain by its X-Rotation along the selected Spline
SplineLength = length of the selected spline in system units
ChainLinks = number of links the chain is made of
optimal count = number of links needed to close the chain
ChainLinkSize = distance between the chain elements
wirecolor = wirecolor of the ChainLinks (objects are instances of the choosen ChainLink-objects)
Motor radius = the radius of the gear object
Axis = the direction the ChainLinks look at (depends on the ipvot of the selected ChainLink-object)
Link rotation = rotation of the ChainLinks along the spline
Point size = the size of the helpers which control the chain
Point scale = scale of the helpers and the ChainLinks

I'm looking forward for your feedback!

Additional Info: 

Version 2:
* option to select Motor Rotation Axis
* reworked usability and some bugfixes

Version 4:
* adjust linksize 2
* adjust motorradius via tool
* changeable motor after creating the chain
* cancelable process
* better usability

Version 4.4:
* bugfixes

Version Requirement: 
Max 2013, 2014, 2015
Video URL: 
merlinscripts_chainrigger.mse38.59 KB


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
kukuuuu's picture

Thank you for your patience

Thank you for your patience and reply all the time.

UE4 is ,kind of,strange about importing rigged things.

what I want to talk about is that if all the bones(dummy or rigging things) is parented to a one(root/main) bone(dummy or...),and it is possible to import everything to ue4(I don't known just work...and sorry for my english...)

and of course geometry parenting is not working in UE4......

is "pnt_chainDriver" the main(root) point(list from 000 to.... yeah I ignore the 000,rig from001,still got some wrong weight of a few vertex,and I can fix quickly them manually)?

and afterall , "separatly skin" is just a not essential suggestion,now I can import the chain‘s animation properly and efficiently,GREAT script!!!!!!!!!!!!!!THANK YOU SO MUCH!!!!!!!!!

merlinpy's picture

You need to ignore the

You need to ignore the "pnt_ChainDriver" in the skinning to avoid weight problems.

Skinning them seperatly really makes no sense. If it is possible to import the hole rigg to UE4, everything should work since the chainlinks are parented to the dummies of the rigg. Besides UE4 is not able to handle regular parenting, which I couldn't believe?!

Adding a skin modifier to every link of the chain and connecting them to the rigg wouldn't be usefull in the ChainRiggerTool because it simply doesn't make a difference to parenting them. It's too complicated and causes a lost of performance.

kukuuuu's picture

Thank for your reply!!!!!! It help me a lot!

YOUR method is great!!!finally I can put it in the engine!!!!!!!

but there still some vertex's weight is rigged by neighbors dummy.......

hope the script could skin them separately to corresponding “rigg”(not need to attach in one geometry,separately skin can avoid vertex being rigged by neighbors).


sorry for my english

merlinpy's picture

Hi Kukuuuu, thanks for your

Hi Kukuuuu, thanks for your request!
I'm sorry, but I didn't get your intention... korrekt me when I'm wrong: you're working with UnrealEngine4 and you want to skin a geometry to the ChainRig?
You could create a chain with the tool, attach the parts to one geometry, then add a skin modifier to it and select the rigg as bones for the skin.
Hope that helps you?

kukuuuu's picture

hope one more function could be available pleassssssssssssse!!!!

awesome!!!! it work pretty fine in 2014 version with a great performance!!!!

and hope it could skin the element(ploy) to the dummy (I recently works with UE4 which only support animating rigged things )


sorry for my english and Nice Work!!!!!!!

jgk1981's picture

Can you make a quick tutorial

Can you make a quick tutorial to show how it works?
Thank you!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.