Posedoll

Members
  • Content count

    1
  • Joined

  • Last visited

Community Reputation

101 Neutral

About Posedoll

  • Rank
    Newbie
  1. Hi, I'm having serious problems converting the orientation matrix from OpenNi to a Direct3D matrix. I'm using my own format for the 3D model and the skeleton and I'm also using just a plain box just to see if it woks independently from the character. It does not. I am as now just rotating shoulder in order to isolate the problem. Standing in T-Pose works ok. Putting arms forward works ok. Moving arms up and down with arms in front of me works ok. However when I move arms up and down the arms rotate instead. What could be the problem? [source lang="cpp"]GetLimbOrientation(&Pos, &Ori, limbid, 0); D3DXMatrixIdentity(&DxMat); DxMat._11 = Ori[0]; DxMat._21 = -Ori[3]; DxMat._31 = Ori[6]; DxMat._12 = -Ori[1]; DxMat._22 = Ori[4]; DxMat._32 = -Ori[7]; DxMat._13 = Ori[2]; DxMat._23 = -Ori[5]; DxMat._33 = Ori[8];[/source] I got the minuses from the "Sinbad" sample that is made for Ogre, It works even worse without them. As I understand it, the difference between an Ogre-matrix and a D3DXMatrix is that the later one is just a transposed Ogre-matrix but I still can't get it to work. Can anyone please help me?