hi im a bit of a newb to rigging and maxscript so i appologise in advance
im attempting to create a method so i can have my rig breather (rotate the chest bone) on a looping animation that i can then have a control for that allows me to change the speed at which he breaths
i currently have
2 dummys - one for manual breathing animation, the other with a looping animation on - both with orientation constraints to the bone so that i can blend between the manual and auto breathing systems
the part im stuck on is attempting to change the speed of the looping animation
i though i could attempt to wire the rotational values, but that doesnt increase the speed it just increased the rotation so not good
[QUOTE=Mephiston;8396]hi im a bit of a newb to rigging and maxscript so i appologise in advance
im attempting to create a method so i can have my rig breather (rotate the chest bone) on a looping animation that i can then have a control for that allows me to change the speed at which he breaths
i currently have
2 dummys - one for manual breathing animation, the other with a looping animation on - both with orientation constraints to the bone so that i can blend between the manual and auto breathing systems
the part im stuck on is attempting to change the speed of the looping animation
i though i could attempt to wire the rotational values, but that doesnt increase the speed it just increased the rotation so not good
anyhelp greatly appreciated[/QUOTE]
I’m a bit of a “newb” myself, but I suppose that you could create another “looping” auto breathing node. The first node could be animated to loop at the lowest desirable breathing frequency, and the second looping node could be animated to loop at the highest desirable looping frequency. You could then create a custom attribute (on whatever node seemed most convenient) that could serve as a blend factor of sorts between these two extremes.
though ive now seen it doesnt completly fix it… it works fine at either end but the blend is confused, its kinda the slow turn and a smaller fast turn at the same time not a progressive speed increase
[QUOTE=Mephiston;8400]though ive now seen it doesnt completly fix it… it works fine at either end but the blend is confused, its kinda the slow turn and a smaller fast turn at the same time not a progressive speed increase :([/QUOTE]
How are you doing the blending between the two extremes?
[QUOTE=Mephiston;8400]though ive now seen it doesnt completly fix it… it works fine at either end but the blend is confused, its kinda the slow turn and a smaller fast turn at the same time not a progressive speed increase :([/QUOTE]
Yeah, I think my earlier suggestion was a bit of a wild goose chase. : ( Another approach would be to animate the “driving” node via the sin function. With such an approach, the breathing frequency could be controlled rather intuitively by modifying the frequency of the controlling sin wave. Check out the example file below for an idea of how this might be implemented. In my test file, the transitions in breathing speed are still a bit rough, but perhaps this’ll give you some ideas.
Note: I’m using a rotation script controller to animate the “driving” node. This node contains the following Maxscript:
quat -1 0 0 (amplitude * (((sin(F * me.breath_frequency)) + 1) / 2))
–amplitude is a constant (set to 1.0 at the moment)
–me is the driver node
–breath_frequency is a custom attribute on the driver node