wenn CubeObj.draw() ist Ihre Zeichenfunktion Würfel (wahrscheinlich ein Aufruf an glVertexPointer dann glDrawElements),
glPushMatrix(); //save the current matrix
glTranslatef(translatex, translatey, translatez);
//glRotatef(), glScale, etc.
CubeObj.draw();
glPopMatrix(); //restore the matrix
die glPush/PopMatrix() Anrufe sicherzustellen, dass Transformation im Block-Befehle nur dann angewendet werden dieser bestimmte Würfel.
Sie können die Zeichenfunktion Ihres Objekts mehrmals aufrufen, ohne das Objekt zu rekonstruieren. Das heißt, Sie könnten eine andere Kopie des obigen Codes haben und die Transformationsbefehle ändern, und Sie scheinen 2 separate Würfel zu haben.
Hoffe das half.
EDIT:
stellen Sie sicher, um einen Anruf zu glLoadIdentity haben() an der Spitze Ihrer Anzeigefunktion
Sie so viel Dank. Ich werde das Push/Pop-Setup ausprobieren! – Eugene