2012-05-20 56 views
0

在OpenGL中,我必須旋轉一個立方體(並將其翻譯),使其看起來像在這兩個圖像中。 cubes旋轉立方體,使面向前的面保持正方形

沒有任何轉換,只有面朝前的紅臉是可見的。我只是不明白我如何旋轉它(使圖像中的頂部和右側可見),並保持紅色的臉部完美的正方形。

我曾考慮將它翻譯爲左下角,但只能移動紅色方塊,而不會使其他面部可見。

我使用glFrustum(-20, 20, -20, 20, -1, -10);

+0

」它不會使其他臉部可見。「 - >然後使用透視投影,它應該工作。 – Calvin1602

回答

1

如果您使用的是透視投影(你是)和你的立方體的正面是平行於XY平面,那麼你將只能看到其他兩個面,如果立方體完全位於眼睛空間的一個象限內;也就是說,如果有水平線和垂直線將窗口切成兩半,則立方體必須完全位於四個所得矩形之一內。

爲了使其他兩個面的其他選項顯示是

  • 使用等角投影
  • 旋轉立方體帶來的其他面進入視野。

爲了幫助可視化,請嘗試播放Minecraft(比如說)並以不同的方式移動以查看不同塊的不同側如何進入視圖。

1

這不是輪換。

第二張照片看起來像是正射投影(glOrtho),但這可能是巧合。

無論在哪種情況下,只有在立方體爲譯文遠離原點朝向左下方時,才能獲得像這樣的圖像,正如您所建議的那樣。 「

+0

+1:這是一個翻譯。但第二張圖片不是正投影。這是一個騎士投影。 – Calvin1602