根据学长提供的题自己想了一下答案

一、

① 写出流水线,并描述流水线上各任务的主要作用;6分在这里插入图片描述

Vertex Processor:将对象表示从一个坐标系转换到另一个坐标系,并且计算顶点颜色。
Primitive Assembler:在进行裁剪和光栅化之前,必须将顶点收集到几何对象中。
Clipper:虚拟相机只能看到世界或物体空间的一部分-不在容器内的物体将从场景中剪去。
Rasterizer:为每个对象生成一组片元.
Fragment Processor:对片元进行处理,以确定帧缓冲区中相应像素的颜色.
② 双缓存的意义以及相关opengl代码;
意义:Updating the value of a uniform variable opens the door to animating an application
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE);
glutSwapBuffers();

③ 视见体归一化(Normalization)有什么用
Normalization allows for a single pipeline for both perspective and orthogonal viewing

**

二、

** 从物体坐标到屏幕坐标的转换,10分。在这里插入图片描述

**

三、

** 如何实现绕任意轴v (vx,vy,vz) 旋转,给出变换矩阵。10分 在这里插入图片描述

**

四、

** 拉普拉斯光顺算法简述。10分 在这里插入图片描述Average of the vectors to neighboring vertices

**

五、

**
①描述向上向量是什么,在opengl哪个函数中用到了。4分
The up vector,is the arrow that goes up from the center of the camera.
gluLookAt函数
②正交投影视见体的归一化矩阵 6分
在这里插入图片描述

**

六、

**
这个题算是综合题吧,要求对如何使低质量的网格模型在着色时可以更加平滑、效果更好。(据老师考完试之后说这个答案里应该有一条phong光照模型。我写的答案有法向映射、phong着色、超采样多重采样。)15分
**

七、

** Cyrus-Beck算法,要求描述出裁剪过程。10分
在这里插入图片描述
在这里插入图片描述

**

八、

** 每个10分。①mipmap工作原理 ②z-buffer工作原理。

① 根据对象和视点间的距离使⽤不同级别的细节,把一张贴图按照2的倍数进行缩小,直到到1X1。把缩小的图都存储起来。在渲染时,根据一个像素离视点位置的距离,来判断从一个合适的图层中取出texel颜色赋值给像素。
② 使⽤⼀个名为z或深度缓冲区的缓冲区来存储到⽬前为⽌找到的每个像素处最近对象的深度,渲染每个多边形时,将每个像素的深度与z缓冲区中的深度进⾏⽐较, If less, place shade of pixel in color buffer and update z buffer

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐