public AnimationPlayer(SkinningData skinningData)
{
if (skinningData == null)
throw new ArgumentNullException("skinningData");
skinningDataValue = skinningData;
bone_matrices = new Matrix[skinningData.BindPose.Count];
world_matrices = new Matrix[skinningData.BindPose.Count];
skin_matrices = new Matrix[skinningData.BindPose.Count];
keyframe_matrices = new Matrix[skinningData.BindPose.Count];
bone_transforms = new Transform[skinningData.BindPose.Count];
skinningDataValue.BindPose.CopyTo(bone_matrices, 0);
for (int i = 0; i < bone_matrices.Length; i++)
bone_transforms[i] = new Transform(bone_matrices[i]);
}