internal virtual void ApplySceneAnimations()
{
foreach ( AnimationState animState in this.animationStateList.Values )
{
// get this states animation
Animation anim = this.animationList[ animState.Name ];
// loop through all node tracks and reset their nodes initial state
foreach ( NodeAnimationTrack nodeTrack in anim.NodeTracks.Values )
{
Node node = nodeTrack.TargetNode;
node.ResetToInitialState();
}
// loop through all node tracks and reset their nodes initial state
foreach ( NumericAnimationTrack numericTrack in anim.NumericTracks.Values )
{
AnimableValue animable = numericTrack.TargetAnimable;
animable.ResetToBaseValue();
}
// apply the animation
anim.Apply( animState.Time, animState.Weight, false, 1.0f );
}
}