OpenGL: Kamera auf rotierendes Objekt setzten



  • Hallo zusammen,

    folgender Code:

    glPushMatrix();
    
    	// UFO Transformationen
    	glTranslatef(rightLeftShift, 0.0f, 0.0f);
    	glTranslatef(0.0f, upDownShift, 0.0f);
    
    	// Schräge Startansicht
    	glRotatef(-45.0f, 0.0f, 1.0f, 0.0f);
    	glRotatef(10.0f, 1.0f, 0.0f, 0.0f);
    	glRotatef(-4.0f, 0.0f, 0.0f, 1.0f);
    
    	glPushMatrix();
    	glScalef(scale, scale, scale);
    
            tetrahedronBE.draw(recursion_level);
    
    	// Scale M entfernen
    	glPopMatrix();
    
    	// Translate fuer Wuerfel machen
    	glPushMatrix();
    
    	glRotatef(angle, 0.0f, 1.0f, 0.0f);
    	glTranslatef(LENGTH+10.0f, 0.0f, 0.0f);
    	cube.draw(recursion_level, DRAW_GL_BEGIN_END);
    
    	glPopMatrix();
    
    	glPopMatrix();
    

    Dabei rotiert ein Würfel um eine Pyramide. Nun möchte ich meine Kamera auf eine Ecke des Würfels setzten und immer auf eine Ecke der Pyramide schauen.
    Das heißt also, das ich den Würfel so transformieren muß, das die Ecke im Augenpunkt liegt und durch ein paar Rotationen zum gewünschten Punkt geschaut wird.

    Allerdings verwirrt es mich, wo genau ich diese Transformationen durchführen muß.

    Ist das die letzte durchzuführende Trafo oder kann ich die auch ganz am Anfang machen?

    gluLookAt() habe ich auch nicht zum Laufen bekommen.

    Danke für Eure Hilfe schonmal im Voraus!


Anmelden zum Antworten