I try, to figure out, what the new animation system dos mean.
In the change log is written:
New Animation System
This adds support for MyAvatar to use the new animation system. This is disabled unless the user has “Avatar > Use Anim Graph” enabled at start up. The current graph is a simple state machine that switches between the standard idle and walk animations.
The animGraph is hosted as a Gist for testing purposes.
The new animation system drives the avatar’s joints, however it’s not fully functional especially w.r.t. to scripting. Here’s a list of the APIs/method calls that aren’t working and suggested approaches to fix or deprecate.
- startAnimation / stopAnimation - Will add support, by overlaying the user specified animation over the current state machine. Stop will resume / reveal the underlying state machine. We should depreciate the priority though.
- startAnimationByRole / stopAnimationByRole - Will add support, by overlaying the user specified animation but ONLY for the specified sub-state. We’ll need to define a set of standard roles, for example “idle” “walk” “run” “fly” etc. We should deprecate priority though.
- getAnimationDetails / getAnimationDetailsByRole - deprecate.
- setJointRotations, setJointData - currently should still work, but we need to preserve this functionality as it is used by walk.js
- clearJointData - depreciate.
I think is still useful, so I would like to preserve it, however in the short term we might what to hide this dialog until it is working again.
Procedural Animation / IK
Currently this works because the existing IK / spine controllers take affect after the new animation is run. However, we want to move these systems into the new animation system. This is something we will do piece by piece over the next week.
Eventually, all of the old animation system will be removed, here are the classes marked for deprecation.
Also, full support for the new animation system should be exposed to our users.
- An avatar’s animGraph should be an entry in the fst file.
- Access to and freedom to manipulate the anim graph variables.
Well I have used the old functions in my scripts and they have worked well for me. They are usefully for adjusting poses.
"setJointRotations, setJointData - currently should still work, but we need to preserve this functionality as it is used by walk.js "
Yes I can set the joint data until now, but getJointsRotations doesn’t work right in the moment.
So some more information, example and maybe also some discussion would be nice.