我对 OpenGL 编程非常陌生。
我知道 NDC 的范围为 [-1, 1] 在两个轴上,中心为 0,0。但我正在尝试增加它的范围,我正在通过 glTranslatef(0,0,-11.0f) 来做这件事,这给了我更多的空间。
但是我不知道在这个 gl 电话之后我的新 NDC 范围是什么。有人可以解释一下吗?
问问题
42 次
1 回答
1
您需要首先尝试了解 OpenGL 管道中顶点的生命周期(此处为示例)。否则你会发现很难理解你在做什么。一开始可能会令人沮丧。
您的问题的简单答案是 NDC 坐标始终在 [-1, 1] 的范围内。你根本无法改变它,你不应该改变它。
不过,您可能确实想要更改的是模型视图和透视矩阵,以便您的对象在屏幕上有更多空间。例如,该glTranslatef(0,0,-11.0f)
命令将您的对象在负 Z 轴上向下移动(默认情况下,“相机”在此处查看,即远离您的眼睛)。由于您的对象距离较远,因此它看起来更小,因此您有更多的屏幕空间。
我个人认为有用的另一组教程是OpenGL ES from the Ground Up(它们适用于 iPhone,但原理相同)
于 2013-07-18T10:53:24.193 回答