How to blend two animations so they are not 50/50% ?

The place for artists, modellers, level designers et al to discuss their approaches for creating content for OGRE.
Post Reply
Vido
Halfling
Posts: 63
Joined: Thu Feb 26, 2015 3:48 pm
x 1

How to blend two animations so they are not 50/50% ?

Post by Vido »

Hi all
So basically I have two animations walk_upper for upper body of character and walk_lower for lower body of character
and when I play them they hands go in middle position of two animations. I tried to do Alt + S, Alt + G and Alt + R on hands
to set they values to 0 but still animations blend in between, one arm goes to left from like from T pose but in between
so how can I disable this behavior ?

EDIT: So how can I exclude hands from animation data, clearing LocRotScale of arm controler to 0 does not do the trick

Last edited by Vido on Wed Sep 28, 2022 9:00 pm, edited 1 time in total.
Vido
Halfling
Posts: 63
Joined: Thu Feb 26, 2015 3:48 pm
x 1

Re: How to disable blending two animations ?

Post by Vido »


and

Vido
Halfling
Posts: 63
Joined: Thu Feb 26, 2015 3:48 pm
x 1

Re: How to disable blending two animations ?

Post by Vido »

How ogre mascot "The Simbad" drawSword from his back it does not seams that's that animation 50% idle and 50% drawSward animation ?

Vido
Halfling
Posts: 63
Joined: Thu Feb 26, 2015 3:48 pm
x 1

Re: How to blend two animations so they are not 50/50% ?

Post by Vido »

If anyone has same problem here is solution

https://github.com/OGRECave/ogre/blob/m ... ler.h#L193

User avatar
sercero
Bronze Sponsor
Bronze Sponsor
Posts: 449
Joined: Sun Jan 18, 2015 4:20 pm
Location: Buenos Aires, Argentina
x 156

Re: How to blend two animations so they are not 50/50% ?

Post by sercero »

Also, the Sinbad character has different animations for the upper body and the lower body.

You have walk-up and walk-down and you have to play them both at the same time because they influence different bones in the body.

There is also a blendmask feature for bones where you can choose how much an animation influences the bones:
To create a blend mask on an animation state:

Code: Select all

animstate->createBlendMask(numberOfBones, initialWeight);

Then you can manually set values to any bone using:

Code: Select all

animstate->setBlendMaskEntry(boneid, weight);

Here is more information if you are interested:
https://github.com/OGRECave/blender2ogr ... imation.md

Post Reply