   transforming a point into a characters local space
  Our game moves in the x and z planes but is in a 3D world.Im looking at an implementation of this for 2D and it has C2DMatrix matTransform;double Tx = -AgentPosition.Dot(AgentHeading);double Ty = -AgentPosition.Dot(AgentSide);matTransform._11(AgentHeading.x); matTransform._12(AgentSide.x);matTransform._21(AgentHeading.y); matTransform._22(AgentSide.y);matTransform._31(Tx); matTransform._32(Ty);Does anyone know what needs to be added for 3D? Is it just adding the Up vector to it and z to the rest sodouble Tx = -AgentPosition.Dot(AgentHeading);double Ty = -AgentPosition.Dot(AgentUp);double Tz = -AgentPosition.Dot(AgentSide);matTransform._11(AgentHeading.x); matTransform._12(AgentSide.x); matTransform._13(AgentUp.x);matTransform._21(AgentHeading.y); matTransform._22(AgentSide.y); matTransform._23(AgentUp.y);matTransform._31(AgentHeading.z); matTransform._32(AgentSide.z); matTransform._33(AgentUp.z);matTransform._41(Tx); matTransform._42(Ty); matTransform._43(Tz);Am i right, or gone crazy altogether.   