I wanted to make realistic tank treads, perhaps for a game, that would not become distorted by the curve modifier. How do I make the links properly follow the curve, only rotating the the joints of the links?

- 145
- 2
- 10
-
https://www.google.com/search?tbm=vid&q=blender%20tank%20tracks – Duarte Farrajota Ramos Jan 05 '18 at 04:21
-
1Also see related https://blender.stackexchange.com/questions/68923/torus-object-stretched-in-array-curve-modifier – Duarte Farrajota Ramos Jan 05 '18 at 04:29
3 Answers
Besides the comments provided, you can also avoid this by not having geometry along the X-axis that lets the object bend.
- 1,379
- 8
- 12
In case someone needs to use bones: You can use 2 curves
- one curve that is your track you want to move your rig along
- the other curve has a deformer modifier on it with the track curve as target
- the Spline IK uses the deformed curve as target
Be sure to add enough subdivisions to the deformed curve
Benjee10 described this on the example of a centipede animation: https://blenderartists.org/t/centipede-animation-test/569469/6
(I'm confused why the developers didn't add an offset value for the Spline IK modifier...)
You can make a rig that has a string of bones, one for each segment of the chain, and then use a Spline IK modifier on the last bone of the chain to make it follow the curve.
To animate it, translate the root of the chain along its Y axis.
Edit: Tried an example so I could provide screenshots. Found, to my dismay, that I couldn't control the Spline IK to have an offset. So the tank tracks will conform to the curve, only deforming at their joints. But they can't animate around the curve, making the solution useless.
However there is an ugly hack, which is to change the curve itself with a hook modifier:
This will let you animate the tracks along the curve for the length of a couple of segments. If the segments are all identical then you can fake the impression of them turning continuously.
Here is a .blend of what I came up with:
- 768
- 3
- 15




