PDA

View Full Version : Movement Between Keyframes



A.Russell
01-14-2004, 09:09 AM
Right now when I have two key frames;

the first one looks like this: http://www.3dgamesforkids.com/pictures/badanim1.jpg and the next one looks like this: http://www.3dgamesforkids.com/pictures/badanim3.jpg

... the animatoin doesn't go directly from the first to the second, it kind of goes arounjd the bush. The resulting frame in the middle of these two key frames is:

http://www.3dgamesforkids.com/pictures/badanim2.jpg

How do I get the leg to move so it goes directly from its positon at the first key frame to the position at the next one without swinging out like in the picture?

A.Russell
01-15-2004, 07:52 AM
I'm giving this a bump, as I either didn't explain very well, or my title wasn't interesting enough for anyone to want to look

When you have two keyframes in Lightwave, it automatically generates the frames between them. However, it isn't doing so directly:

When there are two keyframes, let's say the first one is at frame 0 and the second at frame 20:

keyframe at 0: http://www.3dgamesforkids.com/pictures/badanim1.jpg keyframe at 20 http://www.3dgamesforkids.com/pictures/badanim3.jpg

It should now make the frames from one to 19 a progresion between these two keyframes automatically, right?

Well, it does, however it move in a strange roundabout motion instead of directly. The frame generated at 10 looks like this: http://www.3dgamesforkids.com/pictures/badanim2.jpg

What I want it to do it moce the geometry along the shortest route like this:

http://www.3dgamesforkids.com/pictures/badanim4.jpg

However, what it is doing now is:

http://www.3dgamesforkids.com/pictures/badanim5.jpg

I hope that makes sense and someone is able to explain and tell me if it can be fixed.

bloontz
01-15-2004, 08:31 AM
I haven't done much animation but aren't those little +'s on the path keyframes? That would seem to indicate that for some reason you have more than two. Try deleting or adjusting the intermediate keframes perhaps.

Matt
01-15-2004, 08:56 AM
Check your motion curve in the Graph Editor, this behaviour is usually because the Tension, Continuity and Bias settings need tweaking.

It happens a lot.

Matt

Matt
01-15-2004, 09:07 AM
Helps explain . . .

A.Russell
01-15-2004, 10:30 AM
Thanks for your replies.

There are no frames between frame 0 and 20 (though there are other frames in the animation which is why you can see the +'s. It animates crazily between them too).

Matt, I tried adjusting the TCB. I also read everything in the manual and Inside LIghtwave on TCB, but couldn't find anything helpful.

I selected all the channels in the Graph editor for my object, then with all keyframes selected I adjusted the fields beside "Incoming Curve. " Mostly nothing much changed. With "stepped" turned on it would not change at all until the next keyframe, otherwise mostly all the changed was the speed with which it changed (but still moving in a wonky motion). With all -1's in TCB Spline it became even more wonky, and that's about all I succeeded in.


Any other ideas? This can't be an uncommon problem, I haven't adjusted any settings, so it animates this badly by default. Someone else must also have a character model with legs flaying around everywhere between frames???




:confused:

Matt
01-15-2004, 11:07 AM
Hmmmm, okay, sounds like it may be an IK setup problem, unfortunately my knowledge of IK is non-existant! Anyone else?

A.Russell
01-15-2004, 11:12 AM
I didn't apply any IK to it. It was animated with Motion Capture.

A.Russell
01-16-2004, 12:06 AM
I not only made certain IK was turned off, but I selected all bones and in Motion Options I made it Unaffected by IK of decendent. It still wobbles just the same.

A lot of game engines have this kind of problem. I find it hard to believe that Lightwave would too.

Could someone please tell me if this is fixable, or if Lightwave can't cut the mustard.

toby
01-16-2004, 12:47 AM
You should show/tell more about what you're animating. Like a picture of a leg bone, selected, with the rotation handle.

The only motion the legs need for this is on the pitch, remove any keys from heading or bank to see if that fixes it.

And make sure you're not using 'world coordinates'.

A.Russell
01-16-2004, 03:10 AM
Thanks Tony. I took a few more screen shots. The animation I posted pics of before got so frustrating I canned it and started again with a dance animatoin, which also wobbles without mercy.

Here are two keyframes of the animation. I've selected a thigh bone, and you can see the HPB values in the lower right of the screen shot:

http://www.3dgamesforkids.com/pictures/baddance1.jpg http://www.3dgamesforkids.com/pictures/baddance5.jpg

Below are screenshots to illustrate how the modl moves between those two keyframes. Notice how the left foot doesn't stay on the ground, and it just kind of floats around and comes back (in fact the whole thing kind of tips over), while the right leg moves in a rounded motion instead of goint directly to its position in the next keyframe:

http://www.3dgamesforkids.com/pictures/baddance1.jpghttp://www.3dgamesforkids.com/pictures/baddance2.jpg
http://www.3dgamesforkids.com/pictures/baddance3.jpghttp://www.3dgamesforkids.com/pictures/baddance4.jpg
http://www.3dgamesforkids.com/pictures/baddance5.jpg

I hope this clarifies the problem. If there are any other screen shot or anything you need, please let me know. Thanks for taking the time to look at this.

bloontz
01-16-2004, 08:37 AM
I had similar problems when I tried to use .bvh files that I downloaded from Motek. I read something about setting up/ mapping the .bvh rest pose but I never figured it out. I had much better luck using Motion Builder but only with the stock motions that came with the program. There has to be a trick to using .bvh.

A.Russell
01-16-2004, 08:51 AM
This is actually from a .lfa (Life Forms) file. However, I also have their game pack for Lightwave with the motion al contained in lws files. The previous wobby run animaton I posted pictures of was one of those. I've got it all mapped so that the everything moves right (at the keyframes!).

The problem is when you I try to thin an animation, or the animatoin comes pre-thinned. In the Lifeforms application the animation using bones from my Lightwave model goes perfectly, thinned or not.

I really think this is a Lightwave problem. You can see in the pictures above that bones are moving when they don't need to between keyframes. For example, look at the left foot. It doesn't need to move, because it is already in the position it should be in the the next keyframe, and yet in floats away and back again.

Doesn't anyone know how to stop this? Or is it just Lightwave, and I should save up and buy Max? I'd really appreciate it, I've been trying to get this working for almost three days solid.

toby
01-16-2004, 03:01 PM
I don't know about that type of motion capture but you have your coordinate system set to 'World Coordinates', I can tell by the rotation handles. If you animate this way it will be a mess.

Set it to 'Parent' under the 'Coord System' drop-down list.

hrgiger
01-16-2004, 03:13 PM
Select the bone that is moving when it shouldn't and then open up the graph editor and zoom in on the two key frames (in the channel it's moving) and show us a screen capture. It just seems to me that the curve is not folowing the path you wish it to.

A.Russell
01-16-2004, 11:08 PM
I selected the foot that should only move slightly between keyframes at 54 and 66 in the dance sequence I've posted pict of above.

The position coordinates are all flat for this bone in the graph editor and at these values:

x=-0.001 um
Y=-0.0004um
z=454.613mm

The rotation graphs look like this:

http://www.3dgamesforkids.com/pictures/thissucksh.jpg
http://www.3dgamesforkids.com/pictures/thissucksp.jpg
http://www.3dgamesforkids.com/pictures/thissucksb.jpg

http://www.3dgamesforkids.com/pictures/baddance1a.jpg http://www.3dgamesforkids.com/pictures/baddance2a.jpg http://www.3dgamesforkids.com/pictures/baddance3a.jpg http://www.3dgamesforkids.com/pictures/baddance4a.jpg http://www.3dgamesforkids.com/pictures/baddance5a.jpg


Could this be a problem with Lightwave? Some RT3d engines will behave like this, though I'm surprised a high end application like Lightwave does. Should I post it as a bug report?

BTW: Where do you post bugs?

toby
01-17-2004, 03:44 AM
ok... what's the problem with the foot. Does the foot move around too much - it's got keys in all 3 rotation channels, you can bet it will move on all 3 planes.

A.Russell
01-17-2004, 05:13 AM
Take a look at the sequence of frames in my previous post. The first pic is a keyframe and the last pic is a keyframe. Notice how between keyframes the model kind of rolls over. What it should do it move directly toward being in a state like the next keyframe. That way the animaton would look smooth. It's not just the foot, I was using that as an example, every bone is moving incorrectly between keyframes.

I have not been able to correct this by doing anything with IK or TCB or a host of other small things I've tried. This wobbly animation is like what you might encounter in a game engine, but not what I'd expect from a high end application like Lightwave.

I think it must be a bug in Lightwave. To be sure, where do I report it?

toby
01-17-2004, 02:19 PM
OK, I looked at your sequence again and I'm sure it's a world coordinate problem. The leg that you have selected, that you just want to pitch up, should only have motion in one channel, the Y channel. When you change the coordinate system to Parent you will see that the Y rotation handle does not line up with the way you want the leg to turn, so the other channels have to rotate to allow the leg to pitch up.

You must animate with the Parent coordinate system. Notice the handles with the world system, no pointer, they don't rotate with the bone, and if you grab one handle and rotate it will add value to all 3 channels - it's impossible to work this way.

As an example, take a bone that is Gimbal locked (which you can only see in Parent), change it to World and animate the channel that was previously locked. You will get wobbly animation even with straight motion paths because it's turning on 3 axees(?).

Motion capture is notorious for causing problems like this, even Gollum was eventually hand-keyed because the mo-cap wasn't working.

A.Russell
01-17-2004, 09:57 PM
Thanks for the reply. Actually I do have it set to Parent coordinates. I tried switching to World coordinates as well, and it didn't make any difference.

I tried these same sequences in another app and the motion was good between keyframes, so if it's a gimble lock problem, then it only occurs once imported to Lightwave.

SO thanks, but I'm not convinced it isn't a problem with Lightwave.

toby
01-17-2004, 11:38 PM
Switching coordinate systems after you've animated won't change anything.

So how was this animation made, did you do it, is it mo-cap, or does it happen either way?

Care to post a scene file?

A.Russell
01-17-2004, 11:50 PM
The animation is Mocap from Life Forms (Credo). You can download it here:

http://www.3dgamesforkids.com/downloads/dammit2.lws

Thanks for taking the trouble to look.

BTW: It was set to Parent coordinates before I applied the mocap.

toby
01-17-2004, 11:55 PM
I'm loading it now...dammit! :)

A.Russell
01-18-2004, 01:06 AM
I've put an original mocap file, made especially for Lightwave up for you to look at too.

Try thinning the animation. You'll get the same wobble I've illustrated. The more frames you thin out the worse the wobble.

http://www.3dgamesforkids.com/downloads/run.lws

toby
01-18-2004, 01:29 AM
OK, well, as you can see here the main bone, at the top of the heirarchy, is Gimbal locked. When the bone is bent to the side, it has to rotate on it's heading or bank in order to reach the new position, and when it does that, the whole body does it too. I'm sure that's happening to a lot of the other bones at the same time. This bone should not have been animated at all, it moves every other bone with it.

This thing doesn't make a lot of sense. Look at the transition from frame 20 to 37. The main bone pitches forward quite a bit and every other bone pitches back to compensate, so that they move correctly.

The only way to thin this animation and have it work is to make sure that the joints are aligned on an axis and not gimbal locked. The rotation of the bones at each key are different enough and doesn't match up with the axis-es of the bones, so funky movement is inevitable.

So why not leave the raw keyframe data?

A.Russell
01-18-2004, 02:25 AM
Thank you, Toby. Removing the mapping from that bone got rid of the wobbles.

If I could indulge just one more answer from you. How can you get rid of gimble lock on mocap animated bones? I've tried to use Record Pivot Animation both before and after applying mocap motion. It always results in the bones waving around in the air.

The reason I want to thin the keyframs is so that I can tweak and make changes to the animation, plus clean up anything that doesn't look so good. Forr example, I might want to move the fingers so the hands are fists, karate chop pose, or maybe splayed out when the character is thrown backwards. Doing this on every single frame for several hundred frames would be incredibly tedious.

Thanks again for finding the source of the problem. It has been driving me crazy for a while now.

toby
01-18-2004, 02:54 AM
Alas, there's no simple way to do character animation - that's why it pays well (6 figure salary I hear)

You can experiment with Rotate Pivot Point, but you'll have to adjust the all of the animation accordingly, and it just might not work. You're not supposed to change the pivot point after animating - maybe you can do it before you bring in the mo-cap?

I've heard complaints about mo-cap before, and not just with LW. I've been working with the person who animated Gollum, the movie studio won't admit it, but their mo-cap for the character didn't work.

I have a friend who worked with mo-cap on the Starship Troopers cartoon in LW, if I talk to him in the near future I'll get his opinion.

A.Russell
01-18-2004, 03:31 AM
Thanks again. Messed up gimbles or not, at least things are in some semblence of working now. (I've tried getting rid of gimble lock before and after applying mocap, and the bones just point in the air). Pretty much at the mercy of Lightwave the way the gimbles turn out.

If you find out anything else, I'll be keen to know.

bloontz
01-18-2004, 10:09 AM
I'm assuming you've read this right?

http://www.ultirender.com/pages/ohjelmistot/credo_interactive/LightWave3D.pdf

I've never used Life Forms so I have no clue...

A.Russell
01-18-2004, 12:15 PM
Yes, I have. It wasn't hugely helpful, and Credo Interactive don't offer customer support.