public SRTContainer[] GetAllLocalSRTValuesForBone(int boneIndex) { SRTContainer[] localSRTValues = new SRTContainer[m_NumFrames]; for (int i = 0; i < m_NumFrames; i++) { localSRTValues[i] = m_AnimationData[boneIndex].GetScaleRotationTranslation(i); } return localSRTValues; }
public SRTContainer[] GetAllLocalSRTValuesForBone(int boneIndex) { SRTContainer[] localSRTValues = new SRTContainer[m_NumFrames]; for (int i = 0; i < m_NumFrames; i++) { localSRTValues[i] = m_AnimationData[boneIndex].GetScaleRotationTranslation(i); } return(localSRTValues); }
public SRTContainer[] GetAllLocalSRTValuesForFrame(int numChunks, int frame) { SRTContainer[] localSRTValues = new SRTContainer[numChunks]; for (int i = 0; i < numChunks; i++) { if (i >= m_AnimationData.Length) break; localSRTValues[i] = m_AnimationData[i].GetScaleRotationTranslation(frame); } return localSRTValues; }
public SRTContainer[] GetAllLocalSRTValuesForFrame(int numChunks, int frame) { SRTContainer[] localSRTValues = new SRTContainer[numChunks]; for (int i = 0; i < numChunks; i++) { if (i >= m_AnimationData.Length) { break; } localSRTValues[i] = m_AnimationData[i].GetScaleRotationTranslation(frame); } return(localSRTValues); }
/* * Returns the SRT matrix for the specified bone for the current frame having been multiplied by all parent transformations */ public Matrix4 GetMatrix(BMD.ModelChunk[] chunks, int boneID, Matrix4[] otherMatrices, int frame) { SRTContainer srt = GetScaleRotationTranslation(frame); Matrix4 ret = srt.m_Matrix; if (chunks[boneID].m_ParentOffset < 0) { Matrix4.Mult(ref ret, ref otherMatrices[boneID + chunks[boneID].m_ParentOffset], out ret); } return(ret); }
/* * Returns the SRT matrix for the specified bone for the current frame NOT multiplied by all parent transformations */ public Matrix4 GetLocalMatrix(int frame) { SRTContainer srt = GetScaleRotationTranslation(frame); return(srt.m_Matrix); }