我是否必须将gl_Position
映射到(-1,-1),(1,1)
以使其显示在屏幕上,或者是什么?即,左上角为(-1,-1)
,右下角为(1,1)
?
在我刚刚使用我的库CreatePerspectiveFieldOfView
之前,它为我完成了所有的转换,但我现在正在编写自己的转换器,而且我不太确定我需要将坐标映射到哪里。 ..
答案 0 :(得分:1)
gl_Position
是一个4向量,因此它不仅仅包含那两个元素,通常命名为x,y,z和w。剪切时,坐标被剪切为[-w,w],或者换句话说,在标准化(将每个坐标除以w)之后剪切为[-1,1]。因此,标准化坐标被立方体(-1,-1,-1) - (1,1,1)剪切(除非您定义了更多剪裁平面)。
有关剪辑的更多信息,请阅读
http://www.opengl.org/documentation/specs/version1.1/glspec1.1/node28.html