0

OpenGL では、立方体を回転 (および平行移動) して、これら 2 つの画像のように見えるようにする必要があります。キューブ

変換なしで、正面を向いた赤い顔だけが表示されます。それを回転させて(画像のように上部と右側が見えるように)、赤い顔を完全に正方形に保つ方法がわかりません。

左下に移動することも考えましたが、それは赤い四角が移動するだけで、他の面は表示されません。

私は使用していますglFrustum(-20, 20, -20, 20, -1, -10);

4

2 に答える 2

1

透視投影を使用していて (実際にそうです)、立方体の前面が xy 平面に平行である場合、立方体が完全に目の空間の 1 つの象限にある場合にのみ、他の 2 つの面が表示されます。つまり、ウィンドウを半分に分割する水平線と垂直線がある場合、立方体は結果として得られる 4 つの長方形の 1 つに完全に収まらなければなりません。

他の 2 つの面を表示するその他のオプションは次のとおりです。

  • 等角図法を使用する
  • 立方体を回転させて、他の面を表示します。

これを視覚化するために、Minecraft (たとえば) をプレイし、さまざまな方法で動き回って、さまざまなブロックのさまざまな側面がどのように見えるかを確認してみてください。

于 2012-05-20T11:06:54.320 に答える
1

それはローテーションではありません。

2 番目の図は正射図法 ( glOrtho) のように見えますが、これは偶然かもしれません。

どちらの場合でも、立方体が原点から左下に向かって移動した場合にのみ、そのような画像を取得できます。

于 2012-05-20T11:07:01.933 に答える