Jump to content

Some thoughts on Character Animation


Roland
 Share

Recommended Posts

I have been pondering on some ideas on how to implement animation for my Cells game. Currently you can play character animations and as also blend them if I got it right. That's a good thing, but the drawback is that the character feet's tend to float over the ground and climbing footsteps is almost impossible to do. The alternative is having a IK driven character and write some IK solvers (some did I think) and then manage the animations that way. This will probably solve the problem and give some advantage like gripping things etc. The drawback is that you then cant use animations recorded in your external software.

 

I want both standard animations and IK for the legs at the same time. Standard animations as BHV is great, but then we have the problems with having the feet's touch the ground. My idea is to on each frame, after the animation has placed the bones(or joints) at the prerecorded positions, move the feet's in Y-direction so they actually touch the ground. The model must of course have the legs IK-rigged.

 

A Pseudo code for this could be something like

 

OnUpdateFrame:
// I assume the animation has already done its job here
// and the we have a handle to each IK-Leg-Controller (LeftLegController,RightLegController)
Find Y-position of LeftLegController
Find Y-position of terrain at coordinates LeftController.X & Z
Move LeftLegController.Y to TerrainPos.Y
Repeat for RightLegController
Run IK solver.

 

I have not though about the details so far.

What do you think guys and girls. Could this be something?

AV MX Linux

Link to comment
Share on other sites

Chris Paulson has been working on this for the past 3 months or so, but also including much more sophisticated animation blending. I know he's been using a similar technique for the foot placement where he uses picks to determine the ground height and gradient and lets the IK take over for the final foot placement. Makes a huge difference to step climbing too. His animation blending is looking really good but requires a lot of analysis of the skeletal movement to ensure frames from different animation sets are perfectly synced together. He's away on holiday at the moment or I'm sure he would have responded with a lot more info!

 

But yes, you are right. These sorts of techniques make for much more realistic and believable animation.

Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro, Shader Map Pro. Development language: C/C++

Link to comment
Share on other sites

Yeah, they employed this guy after he developed this to put it into Unity. It's just one of many similar systems being developed around the world by various people and companies. Some of the AAA houses have had this capability for some time although it's surprising how many haven't. Just look at Dragon Age for a perfect example, as nice as it is, of feet floating firmly in the air when descending slopes :lol:

 

In many respects the advanced animation blending techniques probably have more visual impact than the IK corrections for foot placement, that's the final icing on the cake!

Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro, Shader Map Pro. Development language: C/C++

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...