游戏开发期末复习资料 - 图文-_第1页
游戏开发期末复习资料 - 图文-_第2页
游戏开发期末复习资料 - 图文-_第3页
游戏开发期末复习资料 - 图文-_第4页
游戏开发期末复习资料 - 图文-_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目前流行的3D开发环境有两种:OpenGL和Direct3DHAL/插件式软件驱动/参考光栅器硬件抽像层(Hardware Abstraction Layer, HAL1、游戏检查HAL的能力(capability;2、游戏适当地开启或关闭某些特性;3、若某些特性被关闭,便会以一种低效的方法来实现,可能是模拟某个特性。这通常会导致图像质量降低。 HAL有4种不同的顶点处理方法:SW VP(软件顶点处理Mixed VP(混合顶点处理HW VP(硬件顶点处理Pure VP(纯顶点处理插件式软件设备(Pluggable Software Device参考光栅器(Reference Rasterize

2、r:COM(组件对象模型:对一组特定功能的抽像集合,应用程序不能直接访问COM对象,而是必须通过对COM对象的接口(Interface的指针执行COM对象的功能。优点:COM接口永远不会改变; COM是独立于语言的(language-independent;只能访问一个COM组件的方法,而不是它的数据。像素是指:图像在屏幕上显示的最小单元,即屏幕上的一个亮点。它也指在frame buffer(颜色缓冲区中的最小图形单元。分辨率是指:显示设备所能显示的最大像素个数。例如:一个分辨率为1024768的显示屏能够显示水平方向1024个像素,垂直方向768个像素,满屏显示1024768 =786432

3、个像素。顶点就是3D空间中的一个点,它定义了多边形的相交点。Direct3D中能够渲染的所有物体都是由图元构成,而图元都是由顶点构成。D3D中的颜色:像素和顶点的颜色使用RGB表示。使用两种不同类型的结构来保存RGB数据:D3DCOLOR (值0到255 D3DCOLORV ALUE(值0到1,不能作为顶点颜色。为D3DCOLOR进行赋值:D3DCOLOR_ARGB宏D3DCOLOR_XRGB宏注意不能将D3DCOLORV ALUE类型的数据作为顶点颜色成员,因为D3D要求用32位的值来描述顶点颜色。交换链和页翻动(page flipping技术被用于提供帧之间的平滑动画。颜色缓冲区(Fram

4、eBuffer:前台缓冲区(Front Buffer和后台缓冲区(Back Buffer。交换链由两个表面组成:前台缓冲区和后台缓冲区渲染过程:1.渲染后台缓冲区;2.显示后台缓冲区;3.重新循环到1。内存池(Memory Pools主要有:D3DPOOL_DEFAULT:D3D的默认内存池D3DPOOL_MANAGED:在其中的资源由D3D进行管理D3DPOOL_SYSTEMMEM:资源被放入系统内存中D3DPOOL_SCRATCH:资源被放入到系统内存中,设备不能访问在该池中的资源,但是这些资源可以与其它内存池进行交换。灵活顶点格式(Flexible Vertex Format (FVF是

5、用来描述顶点属性的一种格式格式化所有的顶点:位置(未转化或者已转化的x、y、z(浮点数x坐标、y坐标、z坐标。RHW(仅用于已经转化的顶点(浮点数rhw(齐次w值的倒数混合加权值15的浮点数。顶点法线(仅用于未经转化的顶点(浮点数x法线、y法线、z法线。散射光颜色(DWORD扩散色,用RGBA表示。反射光颜色(DWORD反射色,用RGBA表示。纹理坐标集18(浮点数纹理映射的u坐标,v坐标。Direct3D定义的FVF的格式:D3DFVF_XYZ 包含未经转换的顶点坐标D3DFVF_XYZRHW 包含经过转换的顶点坐标D3DFVF_XYZW 包含经过转换和裁剪的顶点坐标D3DFVF_XYZB1

6、D3DFVF_XYZB5包含用于骨骼动画的顶点和顶点对骨骼的权重信息D3DFVF_NORMAL 包含法线信息D3DFVF_PSIZE 指明绘制点的大小D3DFVF_DIFFUSE 包含漫反射的信息D3DFVF_SPECULAR 包含镜面反射的信息D3DFVF_TEX1D3DFVF_TEX8图元是由Direct3D定义的几种基本的图形表示,所有的复杂物体都是由这些基本图元来组合而成的。在Direct3D中采用的是三角形网格的近似表示。图元类型:点列,线列,线带,三角形列,三角形带和三角形扇点列D3DPT_POINTLIST 一组点的集合 线列D3DPT_LINELIST 一组线段的集合 线带D3

7、DPT_LINESTRIP 首尾相连的线段的集合 三角形列D3DPT_TRIANGLELIST 一组三角形的集合 三角形带D3DPT_TRIANGLESTRIP 首尾相连的三角形,有两个顶点重合 三角形扇D3DPT_TRIANGLEFAN 组成扇形的一组三角形 设置背面裁减的函数:SetRenderState(D3DRS_CULLMODE, ValueD3DCULL_NONE:不裁剪D3DCULL_CW:裁剪顶点顺时针排列的三角形D3DCULL_CCW:裁剪顶点逆时针排列的三角形笛卡尔3D坐标系:Direct3D中使用的是左手坐标系3DMax等建模软件则使用的是右手坐标系。D3D中的空间:本地

8、空间,世界空间,视图空间,视口本地空间:本地空间(或者称为模型空间指定义组成物体的三角形列表时所使用的坐标系统。例如:本地空间中创建物体时,不需要考虑物体的位置、大小以及与世界空间中其他物体的关系。世界空间:在完成各种模型的创建后,所有的物体都只在相应的本地空间中,需要把这些模型组合到一起,形成一个场景。这个统一的坐标系统所决定的空间称为世界空间。视图空间:Direct3D允许在场景中设置一个虚拟摄像机,决定我们看到的场景,由虚拟摄像机决定的空间称为视图空间。视口:游戏中,视口经常是整个屏幕,但是视口也可以是屏幕上的矩形区域。可能是屏幕的一部分或者是处于窗口模式下窗口的客户区。视口与其所在的窗

9、口相关并且通过所在窗口的相对坐标来进行描述,通常,视口坐标是按照像素的方式取值的。渲染流水线: 在使用Direct3D来进行转换坐标系时,用户只需要提供描述系统转换的完整转换矩阵,通过IDirect3DDevice-SetTransform方法来实现相应的变换。 渲染流水线的步骤:世界变换,视图变换,投影变换,视口变换,光栅化1.世界变换: 2.视图变换: 设置视图变换: 3.投影变换:正交投影: 透视投影:顶点从均匀化为非均匀。 4.视口变换: 5.光栅化 像素和分辨率的区别:像素:是构成影像的最小单位,在屏幕上通常是单个的染色点。越高位的像素,其颜色越丰富。分辨率:是指显示器显示像素的多少

10、。分辨率越大,显示的像素就越多,画面就越精细。Com和Hal的区别:Com:组建对象模型。一种面向对象的编程模式。它定义了对象在单个应用程序内部或多个应用程序之间的行为方式。Hal:是硬件抽象层。主要是对一些硬件设施进行移植。 纹理位图:是一个二维数组,数组中的每一项都是一个颜色数值,又称为纹理元素(texel。Direct3D纹理就是位图,常见的后缀名为bmp,dds,dib,hdr,jpg,pfm,png,ppm,tga的图形文件都可以用作纹理位图。纹理越小越好。纹理映射:在3D图元上应用纹理时,需要首先将纹理元素地址转换为对象坐标,然后再将对象坐标转为屏幕坐标(像素位置。把纹理元素从纹理

11、空间应用到物体上的过程就称为纹理映射。标准纹理绘制过程分为五步:载入纹理(创建文理分配纹理顶点坐标设置当前渲染纹理设置纹理渲染状态渲染顶点缓冲区纹理过滤(Texture Filtering,是屏幕上的每一个像素从物体的多边形表面获得相应颜色值的过程。常用的纹理过滤类型有:缩小过滤(MinFilter,放大过滤(MagFilter和多纹理过滤(MipFilter。纹理过滤的方式有两种:在某个纹理级别内和在多个多纹理级别之间。常用的采样方式有4种:最近点采样,线性纹理过滤,各向异性纹理过滤,多级渐进纹理过滤。 Direct3D定义了5种纹理寻址模式(Texture Address Mode: 包装纹理寻址(Wrap Texture Address Mode镜像纹理寻址(Mirror Texture Address Mode夹取纹理寻址(Clamp Texture Address Mode边框颜色纹理寻址(Border Color Texture Address Mode 一次镜像纹理寻址(D3DTADDRESS_MIRRORONCE 光照可以分为下列的模型:1.环境光(Ambient

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论