關鍵詞摘要:
深度缓冲(又称Z-buffer)的作用是确保多边形能够正确地显示在它们本来的深度(相对于摄像机)上。深度缓冲能确定哪个对象在另一个对象的前面,正确的将被渲染。
COM 就是 Component Object Model, 组件对象模型。COM 接口和C++的抽象类相似(但不一样),就像抽象类没有与之相关的实际代码一样,COM描述了一套符号和语法而非实现过程。
Page Flipping (页翻动)我们把要显示的物体通通绘制到一个不可见的页上,我们称这个页为“后缓冲区”。绘制完后,快速的把它翻动到可见的“前缓冲区”上,并重复这个过程。当用户正在观看新绘制的可见页(前缓冲区)时,程序要降下一幅要显示的东西绘制到“后缓冲区”上。快速而连续的重复次过程,用户就会看到像电影一样连续的图像了。
Devices (设备)就是你的3D卡。 你得创建一个接口来代表设备,然后使用那个接口来绘制东西。
Game Loop (游戏循环)游戏循环是一段代码,在游戏退出之前循环执行的代码。这段代码在每次循环中都要:在屏幕上绘制物体(或场景人物随便什么)、处理游戏的逻辑过程(如:物体的移动、人工智能等等)、处理Windows的消息等等。
Vertices (顶点) 顶点就是3D空间中的一个点。
3D Primitives就是设备所支持的原始的类型。它包括:点列、线列、线代、三角形列、三角形带 和 三角扇形。使用3D primitive 完成上述的图形是很方便的。以后我们会用3D primitive 来绘制图形。下面的一些例子演示了上述的各种方式:Point Lists
(点列)
Fig 2.5
Line Lists
(线列)
Fig 2.6
Line Strips
(线带)
Fig 2.7
Triangle Lists
(三角形列)
Fig 2.8
Triangle Strips
(三角形带)
Fig 2.9
Triangle Fans
(三角扇形)
Fig 2.10
Flexible Vertex Format (FVF) (灵活顶点格式)是用来描述顶点属性的一种格式,而这种格式是可以由我们自定义的,所以称它为“灵活顶点格式”。至此,我们至少知道了顶点有三种属性:x值、y值和z值。其实顶点还可以有其他属性,例如颜色与亮度
Vertex Buffers (顶点缓冲)顶点缓冲就是一块用于保存顶点的内存缓冲区。
Backface Culling (背面拣选) 所有的三角形面,面向我们的面将会被渲染出来(可见),否则将不被渲染(不可见,被拣选出来了)。
垂直回扫周期或屏幕空白周期当电子束从上至下完成了屏幕上的每一行水平回扫后,会被暂时关闭,回到屏幕的左上角;此过程所需的时间
纹理就是3D图形中的2D贴图(位图),能应用到三角形(或一定数目的三角形)上,用来增加真实感
Materials (材质)用于描述对象(三角形)的反光性能,使它看起来有没有光泽和带有什么颜色。
Diffuse Reflection (漫反射)物体的漫反射颜色,能使物体看起来是什么颜色。
Ambient Reflection (环境反射)这也是一个颜色值,用于描述对象反射环境光的数量。你甚至可以指定它根本不反射环境光,这意味着它将不可见,除非接收到其它类型的光。
Specular Reflection and Power镜面反射的值,可以用镜面反射和高光强度设置对象,使它看起来发亮。
Emission (放射)使物体自发光,但不会影响到场景内的其它物体。
Normals (法线)法线是垂直于三角形面的一个向量,它的方向是由三角形的顶点定义顺序所决定的。
Index Buffer(索引缓冲)索引缓冲就是内存中的一块用于索引顶点的区域。
缓冲数据就是在专用的缓冲区中存储的输入设备的数据。
即时数据就是指设备当前的状态。