rendered paste bodyMT_Matrix3x3 xOrient, yOrient, zOrient; float maskVector[3] = {1,0,0}, tempMatrix[3][3]; VecRotToMat3( maskVector, 0, tempMatrix); xOrient.setValue(&tempMatrix[0][0]); printf("xOrient:"); for (int i=0; i < 3; i++) { printf("["); for (int j=0; j < 3; j++) { printf("%f, ", xOrient[i][j]); } printf("]\n"); } maskVector[0] = 0; maskVector[1] = 1; maskVector[2] = 0; VecRotToMat3( maskVector, 0, tempMatrix); yOrient.setValue(&tempMatrix[0][0]); printf("yOrient is: %s", yOrient); maskVector[0] = 0; maskVector[1] = 0; maskVector[2] = 1; VecRotToMat3( maskVector, 0, tempMatrix); zOrient.setValue(&tempMatrix[0][0]); MT_Matrix3x3 newOrient = xOrient * yOrient * zOrient; ob->SetLocalOrientation(newOrient);