关于重塑功能和gluperspective功能

时间:2013-02-16 15:58:51

标签: opengl glut

我是OpenGL的新手。我读了简单的代码。我有三个问题。

1-)为什么gluperspective功能用于重塑功能?

2-)重塑功能到底有什么作用?当我使用重塑功能运行程序时没有它真正改变。

3)何时调用重塑函数?如果仅在我们改变窗口大小时调用它,则意味着如果我不改变窗口的大小,则不会调用重塑函数,因此不会调用gluperspective。但是,不需要至少召唤一次吗?

对不好的英语和愚蠢的问题抱歉。

1 个答案:

答案 0 :(得分:0)

  

1-)为什么gluperspective功能用于重塑功能?

因为这些代码通常是由不了解OpenGL的蠢货编写的。设置矩阵(所有这些)都属于绘图代码。

  

2-)重塑功能到底有什么作用?当我使用重塑功能运行程序时没有真正改变。

正确使用重塑功能是执行窗口大小更改时需要执行的一次性操作。例如,重新初始化在后处理FBO等中用作目标的纹理。如果您只是在屏幕上绘制一个三角形,则不需要重塑处理程序。

  

3)何时调用重塑函数?如果仅在我们改变窗口大小时调用它,(...)

在创建窗口时也会调用它,因为这样可以有效地将窗口从无任何内容调整为某个矩形。

  

这意味着如果我不改变窗口的大小,则不会调用重塑函数,因此不会调用gluperspective。

创建一个新窗口也(重新)调整它的大小。

  

但是,葡萄酒不至少需要被召唤一次吗?

如果你的愿望是一个gluPerspective投影,那么是的。从技术上讲,你必须做的是设置一些投影变换,也可以是一个身份。

但是不要在重塑处理程序中设置它。这样做属于绘图代码。

  

和愚蠢的问题

实际上这些都是非常好的问题。他们表明你实际上在考虑代码。我希望更多人这样做:)坚持下去。