Style Updates 10 - Inverse Kinematics In Toonboom

Overview

Sometimes you receive a blessing so great that in the moment you might lose your wits. This almost happened to me in the beginning / middle of August. After my last blog about these updates, I went back to my to-do list to see what I wanted to work on next. What caught my interest the most was a task about fixing the FK (or forward kinematics) of the puppet.

For those that don’t know, FK is basic layer parenting animation process, where layers that are connected, can move other layers connected to them via transform properties like rotation and position.

The following explanations are very simplified, I’m not a programmer.

As an example, if I create 3 layers: hand, forearm and upper arm and link the together, if i were to move the upper arm, both the forearm and hand would move. If on the other hand i move the forearm, *only* the forearm and hand would move, not the upper arm.

All of that to say, while i initially wanted to fix the FK system in my puppet, I ultimately would sidestep that (though eventually  I would update the FK) in favor of creating an IK system (Inverse Kinematics). Simply, IK is an upgraded linking system to FK, where if we take the same layers I mentioned (hand, forearm and upper arm), if I were to move the hand, the program would calculate where the forearm and upper arm would go but if I moved the upper arm, I wouldn’t affect the rest of the rig. This system is often used for legs to simplify bending a character or for walking. Instead of adjust like 20 layers, you really only have to worry about a few.

Remember, I’m not a programmer, so these are simplified explanations to a very technical topic.

Modern rigs don’t do IK for the most part these days, and I didn’t build the initial puppets ever thinking it would be implemented. So with the desire to make my life easier when animating, I researched whether there were any new ways to implement IK in Toonboom. I found out that some animators developed a method of IK in Toonboom using constraints (I’m not describing that this blog is too long already). A little bit more research led me to this video on Youtube:

It looked like a lot of work, but it was worth it. I spent a few hours working on the legs merely as a curiosity, but then things started to just… work. Mission accomplished. It wasn’t perfect, but it sure beat my old method. The puppet was able to crouch and bend fairly well with relatively little adjustment.

Once I finished the legs, I began to work on the arms after some hesitation. I knew doing so would set me back by a few days, but after fixing up the legs I figured it would be worth it. After all I wanted to add as many quality of life improvements to this puppet as I could possibly make, and this turned out to be the right move.

It turns out the addition of these IK elements have dramatically improved the animation process. The puppet has turned out to be a massive improvement over what I initially planned to do, and it’s so much more versatile with this change. In addition I was also able to fix the FK pegs like I wanted to.

With all of this in mind, I can say that these puppets are capable of using almost every method of animation that Toonboom has to offer. Whether it’s IK, deformers, traditional layers and so on, this update makes it all of these methods accessible.

Outro

Finally I can say that my dream of creating a super rig, or ‘omni-puppet’: a rig that can fluidly change and adapt to multiple forms of animation, is finally here. This might be the most exciting thing I’ve made in years and I can’t wait until the new puppets are deployed

-Until next time-

Next
Next

Animation Short - Burritos Before The Bathroom