Skeletons. BoneNodes. Joint constraints. Rewriting my previous inverse kinematics engine. But really, instead of doing all the hard work I've decided to use a physics engine. I was going to integrate my own IK and animation engine with some physics library after the fact but after some thought I've realised that may be the long way round. If I'm integrating at some point, it may as well be as soon as possible.
Ah, the folly of not thinking far enough ahead. It's ok, though, this should speed me up considerably. All I have to do is make sure that I can layer my own stuff decently on top of the physics engine (for example the skinning system which places a visual of the character on top of a skeleton) and also tie it into the animation system.
Using the animation system will mean I can teach it the basics of how to move and then code in the rest. So walking will mean moving a character's arms in time with it's feet. But if it's holding a gun, it will only move it's arms slightly and keep the gun pointing somewhere. The ideas behind how I want to animate this (or at least procedurally animate this) are very similar to the way the Euphoria engine works. Instead of just having a ragdoll getting tossed around on screen when a character "dies" (generally this happens even if they are just falling), I want the ragdoll to attempt to move. People don't just collapse when they get knocked, they stumble, try to right themselves, or trip and push their arms out to brace for impact or shorten the fall. In short, ragdoll stuff is amateur, old school. Nothing really happens like that in life unless the character is completely dead (as opposed to just slightly dead) when the ragdolling is applied.
On another note, what's with these "idle animations" that people keep making for various games? Pop open whatever game you have lying around and fire it up. If you leave your character standing still, they will general experience some heavy breathing and massive wavy warm effect. Even though they can run nonstop for an infinite distance, they will stand there breathing excessively heavily as if they're about to have a heart attack. But they don't - I checked.
Nobody does that sort of thing when standing still. Have a look at a queue when you're next at the shops, or in a bank or being afflicted by some form of horrifying beaurocracy. People either don't move much at all (besides occasionally looking around), or they move into a new stance and then relax in that without moving much again. I certainly haven't seen people moving their shoulders up and down like crazy. Admittedly this has gotten a bit better over time, but I still see games animated like this occasionally. It just feels so awkward.