OpenGL透视投影函数gluPerspective的参数含义之解析(图示)

首先解释一下透视投影:
**透视投影属于中心投影。**透视投影图简称为透视图或透视,它是从某个投射中心将物体投射到单一投影面上所得到的图形。透视图与人们观看物体时所产生的视觉效果非常接近,所以它能更加生动形象地表现建筑外貌及内部装饰。在已有实景实物的情况下,通过拍照或摄像即能得到透视图;对于尚在设计、规划中的建筑物则作图(手工或计算机)的方法才能画出透视图。透视图以渲染、配景,使之成为形象逼真的效果图。由于是中心投影,因此平行投影中的一些重要性质(如平行性、定比性等)和作图规律,在这里已不适用。
例如:
OpenGL透视投影函数gluPerspective的参数含义之解析(图示)_第1张图片
OpenGL透视投影函数gluPerspective的参数含义之解析(图示)_第2张图片

透视投影函数gluPerspective的参数含义之解析:

OpenGL透视投影函数gluPerspective的参数含义之解析(图示)_第3张图片

gluPerspective这个函数指定了观察的视景体(frustum为锥台的意思,通常译为视景体)在世界坐标系中的具体大小,一般而言,其中的参数aspect应该与窗口的宽高比大小相同。比如说,aspect=2.0表示在观察者的角度中物体的宽度是高度的两倍,在视口中宽度也是高度的两倍,这样显示出的物体才不会被扭曲。

 

gluPerspective
NAME(函数名称)
gluPerspective -- set up a perspective projection matrix (设置透视投影矩阵)
C SPECIFICATION(C语言实现示例)
void gluPerspective(
GLdouble fovy, //角度
GLdouble aspect,//视景体的宽高比
GLdouble zNear,//沿z轴方向的两裁面之间的距离的近处
GLdouble zFar //沿z轴方向的两裁面之间的距离的远处
)
PARAMETERS(参数含义)
fovy
Specifies the field of view angle, in degrees, in the y direction.
指定视景体的视野的角度,以度数为单位,y轴的上下方向
aspect
Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
指定你的视景体的宽高比(x 平面上)
zNear
Specifies the distance from the viewer to the near clipping plane (always positive).
指定观察者到视景体的最近的裁剪面的距离(必须为正数)
zFar
Specifies the distance from the viewer to the far clipping plane (always positive).
与上面的参数相反,这个指定观察者到视景体的最远的裁剪面的距离(必须为正数)

你可能感兴趣的:(计算机图形学,OpenGL,透视投影)