2011-06-02 191 views
1

我很可能有這個錯誤,但在我的相機類中,我旋轉並翻譯相機周圍的整個場景,使其看起來像相機實際上正在移動。這很好,因爲我遊戲中的所有框都是軸對齊的。我現在想旋轉其中一個盒子,但由於我正在相機中使用旋轉場景,glRotate不起作用。有沒有人知道旋轉整個場景然後單獨旋轉一部分的方法?OpenGL旋轉盒

回答

1

當您繪製要旋轉的對象時​​,可以執行推矩陣,旋轉,繪製和彈出矩陣。

void display() { // display callback function 
    glPushMatrix(); 
    glRotate(...); // rotation 
    myObject.draw(); // draw the objects you want to rotate 
    glPopMatrix(); 
} 

之前你推矩陣:

您可能首先需要從改變投影矩陣模式模型視圖或調用glLoadIdentity();

+0

爲清晰起見進行了編輯。您可以按下並彈出顯示回調函數,並在兩次調用之間繪製要旋轉的對象。 – Nate 2011-06-02 03:27:50

+0

嗯,我正在做你說的一切,但它仍然沒有旋轉:/ – Matt 2011-06-02 03:32:19

+0

沒關係,我明白了!謝謝! – Matt 2011-06-02 03:34:45