如何通过OpenGL的glOrtho()函数实现正交投影变换?

2026-04-16 22:431阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计266个文字,预计阅读时间需要2分钟。

如何通过OpenGL的glOrtho()函数实现正交投影变换?

我无法理解glOrtho的用法。有人可以解释它的使用方法吗?这是否用于设定x+y和z坐标的限制范围?glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); 这意味着x、y和z的范围是-1到1吗?看看这张图:Graphical Projection。

我无法理解glOrtho的用法.有人可以解释它的用途吗?

是否用于设置x y和z坐标限制的范围?

glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);

这意味着x,y和z范围是-1到1?

看看这张图片: Graphical Projections

glOrtho命令产生一个“倾斜”投影,您可以在底行看到它.无论顶点在z方向上有多远,它们都不会退回到距离中.

每次我需要在OpenGL中做2D图形时都会使用glOrtho(例如健康栏,菜单等)
每次调整窗口大小时使用以下代码:

如何通过OpenGL的glOrtho()函数实现正交投影变换?

glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0.0f, windowWidth, windowHeight, 0.0f, 0.0f, 1.0f);

这会将OpenGL坐标重新映射到等效的像素值(X从0到windowWidth,Y从0到windowHeight).请注意,我已经翻转了Y值,因为OpenGL坐标从窗口的左下角开始.所以通过翻转,我得到一个更常规的(0,0)从窗口的左上角开始.

本文共计266个文字,预计阅读时间需要2分钟。

如何通过OpenGL的glOrtho()函数实现正交投影变换?

我无法理解glOrtho的用法。有人可以解释它的使用方法吗?这是否用于设定x+y和z坐标的限制范围?glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); 这意味着x、y和z的范围是-1到1吗?看看这张图:Graphical Projection。

我无法理解glOrtho的用法.有人可以解释它的用途吗?

是否用于设置x y和z坐标限制的范围?

glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);

这意味着x,y和z范围是-1到1?

看看这张图片: Graphical Projections

glOrtho命令产生一个“倾斜”投影,您可以在底行看到它.无论顶点在z方向上有多远,它们都不会退回到距离中.

每次我需要在OpenGL中做2D图形时都会使用glOrtho(例如健康栏,菜单等)
每次调整窗口大小时使用以下代码:

如何通过OpenGL的glOrtho()函数实现正交投影变换?

glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0.0f, windowWidth, windowHeight, 0.0f, 0.0f, 1.0f);

这会将OpenGL坐标重新映射到等效的像素值(X从0到windowWidth,Y从0到windowHeight).请注意,我已经翻转了Y值,因为OpenGL坐标从窗口的左下角开始.所以通过翻转,我得到一个更常规的(0,0)从窗口的左上角开始.