如何在OpenGL中声明gluPerspective?

时间:2009-12-14 18:28:49

标签: opengl

我如何实际宣布gluPerspective

我的意思是我正在画一个螺旋线,我在开始时设置z = -50并循环直到圆圈完成。那么gluPerspective的声明是什么?

3 个答案:

答案 0 :(得分:2)

要在源文件的顶部某处使用gluPerspective

#include <GL/glu.h>

然后您可以毫无问题地使用gluPerspective

答案 1 :(得分:0)

我不确定你的意思。gluPerspective()通常在程序启动时使用一次,然后每当调整窗口大小时,定义基元投影到屏幕的方式。

你这样做:

glMatrixMode(GL_PROJECTION);                        // Select The Projection Matrix
    glLoadIdentity();                                   // Reset The Projection Matrix
    gluPerspective(60,screenWidth/screenHeight,0.1,1000);

答案 2 :(得分:0)

我强烈建议您查看官方OpenGL红皮书第3章Viewing。在那里你会找到一个很好的透视投影介绍。


评论后编辑:

如果你仔细阅读这一章,你会读到这个:

  

您可以通过多种方式制作观看转换,如下所述。您还可以选择使用视点的默认位置和方向,其中位于原点俯视负z轴

  

void gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble near,GLdouble far);
  创建对称透视视锥体的矩阵,并将当前矩阵乘以它。 fovy是x-z平面中视场的角度;其值必须在[0.0,180.0]范围内。 aspect是平截头体的纵横比,其宽度除以其高度。 near和far值视点与剪裁平面之间的距离,沿负z轴。他们应该永远是积极的。