if (isSkinned) { // if ((effect.Parameters["Bones"] != null) && isSkinned) if ((effect.Parameters["BoneRotations"] != null) && isSkinned) { // effect.Parameters["Bones"].SetValue(bones); // s̕ Quaternion[] rotation = new Quaternion[bones.Length]; Vector3[] translation = new Vector3[bones.Length]; Vector3 scale; for (int i = 0; i < bones.Length; i++) { bones[i].Decompose(out scale, out rotation[i], out translation[i]); } effect.Parameters["BoneRotations"].SetValue(rotation); effect.Parameters["BoneTranslations"].SetValue(translation); } }