0

我有一个 NSOpenGLView 设置并且工作得很好,但是我需要绘制一个总是完全填充视图并且没有被剪裁的矩形(这有意义吗?)。我有一个始终为 1100x850 像素大小的视图。基本上,我想要做的是找到一种方法来确保 0.4 的 y 值始终将对象绘制在视图的最顶部,在底部绘制 -0.4 等。我也需要它有一些透视感,所以我做不到glOrtho

有没有办法做到这一点?

如果我没有很好地解释它,这就是我的意思:

---------
|   |   |
|   |   |
---------
  • 该中心线的 x 值始终为 0.0。

  • 左行的 x 值为 -0.55,右行的 x 值为 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

不要求您绘制的所有内容都使用相同的投影矩阵。使用透视矩阵绘制场景的“透视”部分,然后切换到正交矩阵并绘制四边形。

确保禁用第二部分的深度测试,因为与透视值相比,正交值没有任何意义。

于 2012-10-19T21:40:43.267 回答