glOrthof和glViewPort之间的区别

时间:2011-09-27 16:55:30

标签: android opengl-es 2d orthographic

在OpenGL-ES上,我对设置

之间的区别感到困惑
glOrthof()  
glViewPort()
GLU.gluOrtho2D()

用它的各个参数。因为我相信所有设置的部分你可以看到指定的坐标(宽度,高度)。我应该使用哪种?

1 个答案:

答案 0 :(得分:23)

glViewport确定OpenGL绘制到的窗口部分。这可能是整个窗口或子部分(想想控制台游戏的“分屏”模式 - 每个玩家的不同视口)。

glOrthoforthographic projection应用于当前矩阵,该矩阵通常在此调用之前设置为投影矩阵。投影矩阵与模型视图结合使用,生成一个矩阵,将OpenGL坐标转换为屏幕坐标。

gluOrtho2D

  

这相当于使用near = -1和far = 1调用glOrtho。

我建议this page了解有关如何在OpenGL中查看和转换的详细信息。

你应该使用哪个?视口和正交投影是不同的问题,因此您需要为每个视频调用。 glOrthof和gluOrtho2D大致相同;知道差异并使用其中一种。