C ++ / OpenGL - Drehen eines Rechtecks

Für mein Projekt musste ich ein Rechteck drehen. Ich dachte, das wäre einfach, aber ich bekomme ein unvorhersehbares Verhalten, wenn ich es laufen lasse.

Hier ist der Code:

<code>    glPushMatrix();
    glRotatef(30.0f, 0.0f, 0.0f, 1.0f);
    glTranslatef(vec_vehicle_position_.x, vec_vehicle_position_.y, 0);
    glEnable(GL_TEXTURE_2D);
    glEnable(GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    glBegin(GL_QUADS);

        glTexCoord2f(0.0f, 0.0f);
        glVertex2f(0, 0);
        glTexCoord2f(1.0f, 0.0f);
        glVertex2f(width_sprite_, 0);
        glTexCoord2f(1.0f, 1.0f);
        glVertex2f(width_sprite_, height_sprite_);
        glTexCoord2f(0.0f, 1.0f);
        glVertex2f(0, height_sprite_);

    glEnd();
    glDisable(GL_BLEND);
    glDisable(GL_TEXTURE_2D);
    glPopMatrix();
</code>

Das Problem dabei ist, dass mein Rechteck während des Drehens irgendwo im Fenster eine Übersetzung erstellt. Mit anderen Worten, das Rechteck behält nicht die Position bei:vec_vehicle_position_.x undvec_vehicle_position_.y.

Was ist das Problem ?

Vielen Dank

Antworten auf die Frage(4)

Ihre Antwort auf die Frage