GLU#gluPerspective( GL10 gl, float fovy, float aspect, float zNear, float zFar )
gluPerspectiveは視野角、奥行きの最大、最小距離を設定します。
gluPerspectiveで設定した範囲外のポリゴンは基本的に描画されません。
gl | 使用するGL10のインスタンスを指定します。 |
fovy | 縦の視野角を”度”単位で設定します。 |
aspect | 縦に対する横方向の視野角の倍率を設定します。 |
zNear | 一番近いZ位置を指定します。 |
zFar | 一番遠いZ位置を指定します。 |
aspectは通常 スクリーン幅 / スクリーン高さ を入れます。
gluPerspectiveで決定される視界は↓図のようになります。
gluPerspective( gl, 60.0f, 1.8f, 1.0f, 10000000.0f );
とした時。
これを基準とします。
gluPerspective( gl, 120.0f, 1.8f, 1.0f, 10000000.0f );
とした時。
縦の角度が2倍になったのでモデルが小さく見えるようになります。
また、横の角度は縦の角度との比で決まるので横の角度も広がります。
gluPerspective( gl, 60.0f, 3.6f, 1.0f, 10000000.0f );
とした時。
横の角度を2倍にしたので横が縮んだように見えます。
縦は影響を受けません。
zNearとzFarは見た目に変化が出ません。
奥行きの切れ方が変わるのでパフォーマンスと遠くの方の見た目によって決めるといいでしょう。