The Inverse Kinematics Problem

Started by
2 comments, last by Sagar_Indurkhya 20 years ago
I have been doing some work with charecter animation in directx, and have been wanting to use inverse kinematics to generate smoother animation sequences between my frames. Does anybody know how to calculate this stuff, or have any resources? Any help would be greatly appreciated. Thanks Sagar Indurkhya
Advertisement
You probably want interpolation instead of IK.

So look for vertex tweening instead. I think that''s what its call in DX. The simplest one is linear interpolation.
Well, if you''ve got character animation, then you should be using quaternions (really depends on your animation/model format), in which case you can do SLERP. Look it up. I''m using quaternions but I haven''t implemented SLERP yet.

Basically, you have two positions, A and B. Your model should be past A, but not yet to B - what to do? These two frames of animation are relatively ''here'' and ''there'' - and in math, we describe these ''in between'' changes from one point to another as 0.0 to 1.0, capiche? So, off the top of my head a slerp is scaling Frame A quaternions by how far you are from A to B (inbetween), and scaling Frame B quaternions by (1 - inbetween), then multiplying these quaternions together, to get a new set of ''inbetweenAandB'' quaternions, essentially a new frame.

Somebody who''s actually implemented a system like this can now come along and point out the errors of my explanation.
I talked to some other guys, and thats basically what they said too. But I have only a few frames, and my animations aren''t really game based as opposed to research based. I want to simulate the real thing, without taking any shortcuts. everything(almost) is generated on the fly, based on the environment around the charecter.

eg. If the terrain at the desination point of a charecters foot is at 45* angle, the charecters foot will generate a frame with its foot at the target spot with 45* angle. I have very few frames any way. Is it still possible to do this
without applying to a college level math course?

Sagar Indurkhya

This topic is closed to new replies.

Advertisement