public DbAnimationState(TransformTimelineState transformState, DisplayTimelineState displayState, FFDTimelineState ffdState) { TransformState = transformState; DisplayState = displayState; FFDState = ffdState; }
// TODO: remove slots/bones internal void UpdateRecursive(TransformTimelineState state) { var parentTransform = Parent?.CurrentGlobalTransform ?? Matrix.Identity; // get the current tween transform _tween = state.GetState(Name); // and update the current transform CurrentGlobalTransform = DbTransform.Combine(Origin, _tween).GetMatrix() * parentTransform; // and all children foreach (var child in Bones) { child.UpdateRecursive(state); } }