0

私は NSOpenGLView をセットアップしており、うまく機能していますが、常にビューを完全に塗りつぶし、クリップされていない四角形を描画する必要があります (それは意味がありますか?)。サイズが常に 1100x850 ピクセルになるビューがあります。基本的に、私がやろうとしているのは、y 値 0.4 が常にオブジェクトをビューの一番上に、-0.4 が一番下に描画されるようにする方法を見つけることです。ある程度の遠近感も必要なので、できませんglOrtho

これを行う方法はありますか?

うまく説明できなかった場合は、次のように言います。

---------
|   |   |
|   |   |
---------
  • その中心線の x 値は常に 0.0 です。

  • 左の線の x 値は -0.55、右の値は 0.55 です。

  • 上の線の y 値は 0.4、下の線は -0.4 の値です

したがって、画面を完全に埋めるが、画面を離れないようにするには、次の頂点を持つ四角形が必要です。

{
  -0.55,  0.40, 0.00,
   0.55,  0.40, 0.00,
   0.55, -0.40, 0.00,
  -0.55, -0.40, 0.00,
}
4

1 に答える 1

2

描画するものすべてに同じ射影行列を使用する必要はありません。遠近マトリックスを使用してシーンの「遠近」部分を描画し、正投影マトリックスに切り替えてクワッドを描画します。

2 番目の部分の深度テストは必ず無効にしてください。正射投影の値は遠近法の値と比べて意味がありません。

于 2012-10-19T21:40:43.267 に答える