当前位置:文档之家› 《游戏设计》课程设计指导书

《游戏设计》课程设计指导书

《游戏设计》课程设计指导书编写:蔺广逢适用于:数字媒体专业2011.12游戏设计课程设计任务书设计时间:1周学分数:1.0执笔人:范彩霞编写日期:2008年10月一、课程设计目的游戏设计课程设计是数字媒体技术专业必修的实践环节。

本课程设计是《游戏设计》课程实践环节的深化和延续。

通过该实践环节的训练,使学生能够更加全面和系统的掌握游戏设计的体系结构。

通过对所做游戏的故事梗概、游戏类型以及设计制作过程中所涉及的相关技术的学习和掌握,提高学生的实践能力以及团队协作能力,为在计算机游戏设计这一领域进行深入研究做准备。

二、课程设计的内容与要求本课程设计通过分组来进行,每组3~4人。

对每一个组,都必须设计和实现一个完整的游戏,游戏的类型不限,软件运行环境限为Microsoft Windows,硬件平台限为PC。

在每组进行游戏设计之前必须提供游戏文档说明,包括游戏的故事情节、游戏的类型、游戏界面的设计等。

每组设计的游戏不一定是原创的,但绝不能抄袭已有的游戏。

每组设计的游戏需要有较为完整的情节,要求能体现以下的基本技术:提供使用键盘或鼠标控制视点的朝向和运动的功能;在游戏中至少有一个人物是三维的,并且能产生相应的动画。

必须在某个场景中有配音或者背景音乐;最好能在某一个画面中体现一些特效技术;必须能实时或者准实时运行。

游戏设计完成后对自己所做的游戏进行短评,包括:游戏中的哪一部分是最得意的?对最初的游戏设计作了哪些修改,为什么?在这个游戏项目的实践中获得的经验和教训是什么?如果有更多的时间下一步会怎么做?三、课程设计的报告(论文、作业)的要求课程设计报告是课程设计过程的整理和总结。

因此,编写课程设计报告是课程设计阶段的一个重要组成部分。

课程设计报告的内容和要求根据设计内容而定,对于本课程设计,主要应包括以下内容:封面:封面上应标明“游戏设计课程设计”报告、专业、姓名、学号与时间等;课程设计报告内容主要包括:(1)课程设计的目的;(2)课程设计的内容:主要包括:游戏的故事摘要;游戏的类型;各成员的分工;制作工具;流程图以及如何玩这个游戏。

重点写明设计思想,制作步骤、制作过程中出现的问题、解决方案等;(3)总结:总结成功之处与问题所在,自己通过本次课程设计有什么收获和感悟。

四、课程设计考核与成绩评定根据学生的实验准备、操作能力、实验结果、实验报告质量、实验纪律等综合评定实验成绩。

(1)总分100分:其中考勤10分,作品50分,课程设计报告40分;(2)考勤每天上、下午1次,每次2分;(3)如发现有严重抄袭者,个人成绩以零分计;(4)课程设计报告以准确、规范、认真等指标进行打分,不得抄袭,否则总成绩按零分计。

五、课程设计纪律及注意事项(1)每位参加课程设计的同学必须认真对待,积极参加;(2)从严要求自己,不随意迟到、早退和旷课,有事需例行请假手续,实验室内不得玩计算机游戏;(3)在课程设计中应积极发挥个人主观能动性,勤于思考,虚心向指导教师、实验室教师请教,服从实验室教师的安排;(4)爱护实验室的所有财产,不得私自删除机器上系统文件;(5)保持实验室的整洁卫生。

凡违反课程设计纪律者,指导教师或实验室教师有权进行批评教育或终止其课程设计,成绩以零分记。

DirectX初级教程1. 开发环境 (3)2. 3D基本概念 (3)2.1 几种颜色的变量类型....及其相关函数....应注意区分: (3)2.2 材质 (4)2.3 向量 (4)2.4 光源 (4)2.5 摄像机(camera) (4)3. 创建D3D设备 (5)3.1 Direct3DCreate9 ( ) (5)3.2 CreateDevice ( ) (5)3.3 基本变量 (5)3.4 其他要调用的函数及变量(调用次数较少) (5)4. 基本渲染顶点 (6)4.1 定义顶点格式和FVF; (6)4.2 创建顶点缓冲区并填充之; (6)4.3 D3D进行渲染; (7)5. 使用顶点索引缓冲区 (8)5.1 创建顶点索引缓冲区并填充之 (8)5.2 将顶点索引缓冲区设置到渲染管道流水线 (9)6. 摄像机 (10)6.1 D3D中使用的几种常用的向量 (10)6.2 D3D相机中使用的几种常用的关于向量的函数 (10)6.3 点和向量的区别 (11)6.3 Camera相机矩阵计算问题 (11)7.基本纹理应用 (12)7.1 纹理尺寸 (12)7.2 纹理坐标 (12)7.3 基本纹理添加步骤以及所使用的函数 (12)8.模型加载 (14)1.装载模型 (14)2.填充纹理和材质 (14)3.渲染 (14)1. 开发环境注意,一定要把新加的SDK路径移动到目录列表的最上方,因为VC是按顺序搜索路径的。

最基本的DX定义规范:I开头的是接口;D3D开头的一般是定义的一些结构;D3DX是封装了操作的扩展结构;2. 3D基本概念2.1 几种颜色的变量类型....应注意区分:....及其相关函数D3DCOLOR、D3DXCOLOR、D3DCOLORV ALUE。

注意:1. D3DCOLOR属于DWORD型的变量,其定义包含在d3d9types.h文件中;2. D3DXCOLOR属于结构体类型,其定义包含在d3dx9math.h中:typedef struct D3DXCOLOR{FLOAT r;FLOAT g;FLOAT b;FLOAT a;} D3DXCOLOR; // r, g, b, a的范围在0.0f-255.0f之间3.D3DCOLORV ALUE同属于结构体类型,其定义包含在d3d9types.h文件中:typedef struct _D3DCOLORV ALUE {float r;float g;float b;float a;} D3DCOLORV ALUE; // r, g, b, a的范围在0.0f-1.0f之间与各个变量相对应的函数或宏也包含在与变量相对应的头文件中(带有x的变量其对应头文件也包含x,方便记忆)。

下边介绍相关函数及宏。

1. 与D3DCOLOR相对应的宏有以下4个:1. #define D3DCOLOR_ARGB(a , r, g, b) \((D3DCOLOR)((((a)&0xff)<<24)|(((r)&0xff)<<16)|(((g)&0xff)<<8)|((b)&0xff)))2. #define D3DCOLOR_RGBA(r, g, b, a) D3DCOLOR_ARGB(a,r,g,b)3. #define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b)其中该宏的Alpha值定义为255,完全不透明。

4. #define D3DCOLOR_COLORV ALUE(r,g,b,a) \D3DCOLOR_RGBA((DWORD)((r)*255.f),(DWORD)((g)*255.f),(DWORD)(( b)*255.f), \(DWORD)((a)*255.f))前三个宏的r,g,b,a值均为整型数,最后一个必须是从0.0到1.0的浮点型数。

2.2 材质材质的定义是:材质typedef struct _D3DMA TERIAL9{D3DCOLORV ALUE Diffuse; // 漫反射光D3DCOLORV ALUE Ambient; // 环境光,理解为整体亮度D3DCOLORV ALUE Specular; // 镜面反射,一般用于光滑的平面D3DCOLORV ALUE Emissive; // 放射光,一般用于自发光体(太阳、灯…)对于材质设置,自发光不应太强。

float Power; // 指定镜面高光的强度}D3DMATERIAL9;2.3 向量typedef struct _D3DVECTOR {float x, y, z;} D3DVECTOR; 该定义包含在d3d9types.h头文件中。

2.4 光源typedef struct _D3DLIGHT9 {D3DLIGHTTYPE Type; // 光源类型,有点光源、聚焦光源、方向光源3种D3DCOLORV ALUE Diffuse; // 漫反射光颜色D3DCOLORV ALUE Specular; // 镜面反射光颜色D3DCOLORV ALUE Ambient; // 环境光颜色D3DVECTOR Position; // 光源位置(对方向光源无效,如果创建方向光源可忽略)D3DVECTOR Direction; // 方向(对点光源无效,如果创建点光源无效可忽略。

可以是非单位向量,但是不能是0向量)float Range; // 光的范围,就是能照多远(对方向光无效,如果创建方向光源可忽略)float Falloff; // 聚光内外光圈的径向强度衰减,一般为1.0f (只针对聚焦光源)float Attenuation0; // 距离衰减0(创建方向光源可忽略,非方向光源一般3个距离衰减均取取0.0f)float Attenuation1; // 距离衰减1(创建方向光源可忽略,非方向光源一般3个距离衰减均取取0.0f)float Attenuation2; // 距离衰减2(创建方向光源可忽略,非方向光源一般3个距离衰减均取取0.0f)float Theta; // 指定聚光内圈的夹角大小(0-Phi)(只针对聚焦光源)float Phi; // 指定聚光外圈的夹角大小(0-pi)(只针对聚焦光源)} D3DLIGHT9;注:1. 这里非方向光源.....指点光源和聚焦光源。

2. 添加光照并开启光照..,光源才起作.........,而且必须为模型或面添加了法向量...及材质用。

即光照三要素:光照、材质、法向量。

2.5 摄像机(camera)摄像机的确定有两个主要参数:一个位置和一个方向。

将摄像机设置到场景中要用到SetTransform( D3DTS_VIEW, &m_matView ); // m_matView就是摄象机的观察矩阵。

3. 创建D3D设备所需的主要的2.个函数...(其余函数根据所需变量的填充要求而定)...和3.个变量3.1 Direct3DCreate9 ( )其原型为IDirect3D9 * Direct3DCreate9 ( UINT SDKVersion);SDKVersion为SDK版本值,函数及SDKVersion的定义包含在d3d9.h中,编译过程中需要d3d9.lib链接库。

3.2 CreateDevice ( )HRESULT CreateDevice ( UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS *pPresentationParameters,IDirect3DDevice9** ppReturnedDeviceInterface);参数解释:UINT Adapter一般使用D3DADAPTER_DEFAULT代表主适配器(即显示器);D3DDEVTYPE DeviceTypeD3DDEVTYPE_HAL代表使用硬件加速方式,D3DDEVTYPE_REF代表使用软件仿真方式;HWND hFocusWindow代表要创建D3D设备的窗口的句柄DWORD BehaviorFlags处理标识:最常用的选项有D3DCREATE_HARDWARE_VERTEXPROCESSING硬件处理D3DCREATE_SOFTW ARE_VERTEXPROCESSING软件处理D3DCREATE_MIXED_VERTEXPROCESSING软硬件结合处理D3DPRESENT_PARAMETERS *pPresentationParameters描述设备显示参数的结构体,一般要调用其他函数来填充该结构体;IDirect3DDevice9** ppReturnedDeviceInterface用于返回D3D的设备对象指针。

相关主题