PDA

View Full Version : MotionMixer, problem with slowing animation



vincent1
01-21-2006, 05:47 AM
Greetings,

I did a motion of character walking, then a motion of the same chjaracter lifting up its arm and waving.

Opened motionMixer, did the actor and motions. Put the walk cycle in and added a repeat post behaviour, then 5 secs into the walk cycle, i mixed in the wave motion.

Problem is when the wave motion starts both the walk cycle and wave motion is slowed down and incomplete, as if it is trying to do one or the other half way.

Shouldn't it be the character keeps walking and when it hits the wave motion, it just continues walking and start waving its hand?

What am I missing?

Thanks for any help,
Vincent

vincent1
01-21-2006, 06:00 AM
Also, can anyone confirm that MotionMixer doesn't recognise IK booster keyframes? IK Booster keyframes seems to crash the file or they are just totally ignored when creating a motion.

Wonderpup
01-21-2006, 03:00 PM
Hi vincent1,

It's been a while since I used the motion mixer, but it may be worth setting up two 'actors'- the walking one would include the whole character, while the waving one would only contain say the upper body- so when you create the waving motion, it only effects the upper body and leaves the lower body motions intact. That way you could mix in the wave without messing up the walk.

As regards motion mixer and Ik boost- I do remember reading somewhere about issues between them- it may be worth doing a search either here or on CGtalk.

EDIT- I just remebered that it may be possible to 'exclude' parts from an already defined actor- I sort of remember doing this- if so then setting up motions that effect only parts of an actor would be a matter of simply defining what elements of the actor you want to form part of the motion- a bit like a light exclusion list. Sorry to be a bit fuzzy on detail here, but if you dig around in the mixer options a bit I'm sure this stuff is there.

Tom Wood
01-21-2006, 05:07 PM
I don't know about IK, but I'd try limiting the motions to just the channels involved. That is, the walking motion would include just the legs, and the waving motion would include just the arm. If both motions contain both sets of channels, MM will try to blend them, poorly.

When you create the motions, select the parts of the object you want to move first, then select "Selected Items" in the Create Motion window.

TW

vincent1
01-22-2006, 03:46 AM
Thank you for the pointers. Will see what works. Newbie overload for me.

SplineGod
01-23-2006, 01:21 AM
Im curious why you wouldnt just animate your walk cycle and then add the waving motion when it needs to happen rather then adding another layer of complication by trying to so it with motion mixer. :)

Also IKBoost can be removed from the rig before using motion mixer and its motions will still be there.

vincent1
01-23-2006, 10:17 AM
Hi SplineGod,

Your info online have helped me a lot, so a word of thanks is in order.

I did delete the IK Boost plugin from the object properties panel, but they don't seem to be retained, what did I miss?

I kind of like the idea of motion libraries. So I rather spend a lot of time doing bits of movements which I can later mix and time to the fraction of a second using motion mixer. Also motion mixer allows me to quicken or slow down the animation just by dragging the motion clip, if I read the brochure correctly.

So I'm looking for the most efficient way to do this. Tests I did has shown this can be done by opening the original file, delete the existing animation and animate another sequence and resave it, as 'wave' and then export a .hmot file. Then open the original walk cycle and import the .hmot 'wave' motion.

But surely there must be a more efficient way to this in the original walk cycle file, without having to go to so many opening, exporting and importing steps?

Another reason is if I can learn to get it done efficiently in lightwave, I can then design a rig that will utilise the ton of mocap files I have from 3ds Max.

My workflow I have designed for lightwave is this:

Design only one biped lightwave skelegon/bone rig that will support the mocap files from Max.

Design one efficient biped mesh that will be modified using zBrush for all other characters. Texturing will also be done in zBrush as it is the most amazing texturing experience I have had. I also have bodypaint from Maxon but that was tedious and difficult to grasp. In zBrush, once I had the "aha" moments, I textured things like faces in minutes rather than hours previously, even with Bodypaint.

Do specialised bone animations in Lightwave, e.g. various basic martial art movements for Taichi, tae kwon do, crouches, etc

Mix them all in MotionMixer and hope to be home by Christmas.

Anything you might further suggest would be most welcomed.

vincent1
01-23-2006, 09:57 PM
After taking a closer look, even by saving and animating a separate file and exporting a wave motion .hmot file, Motion mixer still doesn/t work properly.

The wave motion goes full range of motion now, but the walk still slows down during the wave cycle.

What am I missing?

SplineGod
01-23-2006, 10:11 PM
One thing you might be able to do is create a rig that references another rig that is the one that gets the mocap data. WHen you import a bvh file it will create a skelegon for you. If the skelegon comes in a consistant way this could work. From that you could create motion libraries to use with motion mixer. The key is everything importing in a consistant way.

vincent1
01-24-2006, 06:56 AM
Can the rig that references the bvh rig be different? For example, my rig has 61 bones because of fingers, while the skelegon that is created by lightwave mocap skelegon have no fingers and a few other control bones.

So how does one transfer the mocap data from max to my rig?

Tom Wood
01-24-2006, 10:18 AM
I'll defer to Larry on this in general, because, well, he's SplineGod. :)

But maybe the way I've done it in my simpleminded approach will help turn on the proverbial lightbulb.

All the parts of my characters are on separate object layers, parented in place. When I create a motion, I select just the object layers that will be involved in the motion that I want, and generally don't include layers in motions that may occur simultaneously in the MM timeline. (If I do, I have to make them more extreme, knowing that MM will blend them halfway. And then, I have to use a transition that goes from zero to a percentage and back to zero, a no-no in MM.)

Once I have a basic set of motions in a scene with a character, I do a 'replace object' to bring in a new character. MM will give notice that it has to rename things, and that won't be active until the scene is saved and reloaded. Save under a new name and reload, and the new scene works with the new character. Just be sure the new character is constructed the same way as the old one.

HTH

TW

SplineGod
01-24-2006, 05:55 PM
The rigs that reference the bvh rig can be different in a lot of ways. Its the bvh rig that needs to be consistant or else the items being reference can throw everything off.
The orientations (rotations) need to be the on each start pose. Once you setup a rig to reference another youre assuming that the initial rotations and so forth will be consistant between mocap files.
If max can export fbx or bvh files LW can import them. The fbx is probably more tricky. There are problems you can run into when importing mocap on characters who have different proportions and you need to be able to deal with that.
Typically your rig that is referencing the mocap rig should be setup so that you have a way of tweaking or overriding what the mocap is doing. Ive setup rigs that deal with mocap data before. Once you have a process down it should become less painful over time. :)

vincent1
01-25-2006, 10:12 AM
all this is beginning to sound like rocket science. I thought Lightwave 8.5 and 9 is supposed to do away with all that... Ahhh... bloody advertising copywriting. :-) Advertising people are next in line for purgatory after lawyers...

SplineGod
01-25-2006, 11:05 AM
Its definatley not a point and click thing. Its easy to import a bvh file but after that there is some work involved. :)