Daca am un model exportat din 3d studio max, si vreau sa il folosesc in OpenGL as face bine sa aplic fiecarui vertex ce-i apartine o modificare a coordonatelor astfel:
Cod sursă:
vertices[i] = Vertex3D(Vertex.x, Vertex.z, -Vertex.y);
Dar cum convertesc o matrice din max pentru a folosi in OpenGL? Cum ramane cu translatia? Am incercat asa:
Cod sursă:
Point3 row1 = Point3(matrice3DS.GetRow(0).x, matrice3DS.GetRow(0).z,-matrice3DS.GetRow(0).y);
Point3 row2 = Point3(matrice3DS.GetRow(1).x, matrice3DS.GetRow(1).z,-matrice3DS.GetRow(1).y);
Point3 row3 = Point3(matrice3DS.GetRow(2).x, matrice3DS.GetRow(2).z,-matrice3DS.GetRow(2).y);
Point3 row4 = Point3(matrice3DS.GetRow(3).x, matrice3DS.GetRow(3).z,-matrice3DS.GetRow(3).y);
Matrix3 matriceOpenGL(row1,row3,row2,row4);
Point3 trans3DS = matrice3DS.GetTrans();
CVector3 transOpenGL = {vTemp.x, vTemp.z, -vTemp.y};
Dar rezultatele nu sunt corecte