public virtual void Animate(float frame)
{
var action = Object.DefaultAction;
if (action == null) return;
if (frame > action.FrameEnd) frame = action.FrameEnd;
if (frame < action.FrameStart) frame = action.FrameStart;
// bind curves
var values = action.calculateValues(frame);
bindingIndex = 0;
for (int i = 0; i != values.Length; ++i)
{
bindActionDatas[i](values[i]);
++bindingIndex;
}
Matrix3.FromEuler(ref rotation, out rotationMatrix);
}