Howdy.
I’m updating my old PRR T1 rig to do additional renders, and I really hate the way I had previously set up the rail tracking. I thought there would be a better way to do it via spline IK but I’m having trouble making it work.
How it worked previously is that every rigid wheelbase on the locomotive has a bone, and an IK tracker at the tip of that wheelbase’s radius. Pilot truck at the front axle, engine bed at #1 driver, trailing truck at the rearmost point of the centering device radius, etc. These all had follow path/curve modifiers and thus followed the curvature of the track, and the mechanical rigs all point to their respective handles and functioned appropriately.
However, this is a real bastard to set up as with the follow path modifier these points are relative to both the length of the curve, the duration of the animation and all these bones relative offsets to their respective parents. Meaning all these offsets have to be painstakingly set up by hand, every single time, with a tolerance of at most half an inch. The offset keyframes then also have to be juggled manually if I wanted to alter the speed. This is just a real SOB and a big fat waste of my time.
I also tried “clamp to” for these IK handles, but these don’t inherit rotation of the parent curve which breaks all possible pose constraints and just generally doesn’t work at all.
However, Spline IK has since been added, and the solution seemed obvious. A continuous chain of bones representing each rigid wheelbase, parent the IK handles and root bones to each respective link, and move the chain down the curve, job done.
However, I can’t move the chain along the path. I know this is possible in 3ds/maya, I’ve done it since, but it isn’t happening here. The functionality is already there as the ‘chain offset’ checkbox will move the chain along the curve to match the ref pose, the ability to move it just seems arbitrarily locked off.
I thought maybe parenting it to another bone and moving it relative to the curve would force it to work, but it simply ignored the curve entirely.
Am I daft and this does work and I’m missing something, this seems to be a very self evident use case.