免费获取|
论文天下网
  • 论文天下网 |
  • 原创毕业论文 |
  • 论文范文 |
  • 论文下载 |
  • 计算机论文 |
  • 论文降重 |
  • 论文排版 |
  • 外文翻译 |
  • 免费论文 |
  • 开题报告 |
  • 心得体会 |

当前位置:论文天下网 -> 免费论文 -> 电子专业

基于XML脚本驱动的DirectX游戏引擎(三)

游戏厂商所购买。并且一次授权只能用于一款游戏,就是说同一厂商要开发两款游戏就必须购买两次授权,可见其商业价值不可估量。

基于DirectX 的游戏引擎概述

2.1  游戏引擎开发目标和结构描述

 本游戏引擎基于Microsoft DirectX 9C SDK的基础上,探讨和分析了自制3D游戏此外,本游戏引擎还具有魔法系统类(CMagic)、地形自动生成系统类(CTerrain)、游戏环境渲染系统类、粒子系统类、用户事件响应系统、DirectX 3D异常类(D3DException)、3DSMAX 模型对象驱动控制类。考虑到实际运行的需要,本引擎还支持游戏对象动态生成。以上的所有系统,都进行了面向对象的封装,使得和游戏引擎的框架(DXUT)、脚本解析引擎完美的融合在一起。

 2.2  Microsoft DXUT框架简介

         本游戏引擎是运行在DXUT框架的基础上,DXUT是微软为了简化DirectX在Win32平台下的开发而实现的一套框架。由于该框架较为复杂,本着实用为主的精神,本人对其中重要的部分进行了打包,包名为Microsoft。下面我就对DXUT中的一些重要的函数和整个框架调用API的顺序进行一个简单介绍。
     程序启动:InitApp →MsgProc →IsDeviceAcceptable →ModifyDeviceSettings OnCreateDevice →OnResetDevice → 渲染主循环  
     渲染主循环: OnFrameMove → OnFrameRender  
     改变设备:   ModifyDeviceSettings → OnLostDevice →根据需要调用
 OnDestroyDevice → OnResetDevice → 渲染主循环  
     程序退出:   OnLostDevice →OnDestroyDevice  
 
 下面是DXUT下各函数的作用: 
 InitApp 初始化一些图形控件和GUI的消息处理函数 
OnCreateDevice     创建设备时的回调函数,用于创建D3DPOOL_MANAGED资源 
OnResetDevice      重设设备时的回调函数,用于创建D3DPOOL_DEFAULT资源 
OnFrameMove      动画实现处,常用于矩阵转换等操作 
OnFrameRender      渲染实现处,常用于渲染场景 
OnLostDevice       设备丢失时的回调函数,释放由OnResetDevice创建的资源 
OnDestroyDevice     设备析构时的回调函数,释放由OnCreateDevice创建的资源 
IsDeviceAcceptable   创建设备时用来对所有可用设备进行过滤的函数 
ModifyDeviceSettings 更改设备时的回调函数,用于实现更改设备时所需做的其他操作 
MsgProc            安排各空件处理消息的顺序 
OnGUIEvent         程序控件绑定的消息处理回调函数 

掌握了以上的基本函数后,就可以把游戏引擎中的一些函数架设在此基础之上了。

 

 

 

 

 

 

 

  游戏引擎开发包D3DUtility简介

 D3DUtility开发包是本游戏引擎的核心部分,里面封装的许多类库,提供给DXUT框架调用,下面展现一下该工具包的具体内容。更加详细的UML建模,参看附件的Tiny.gif。
 
CMagic:是负责魔法系统的基类,它的派生类是CCrystalMagic、CBlazeMagic。
CCrystalMagic:产生水晶魔法效果的类。
CBlazeMagic:产生火焰魔法效果的类。
DirectX3DObject:是D3D对象的基类,它的派生类是DirectX3DDotXObject。
 ID3DObjectFactory:是负责产生D3D对象的工厂类,是一个接口,D3DDotXFactory实现了它。
 IControlDirectX3DObject:是负责控制D3D模型对象具有的抽象行为,它是一个接口。
 DirectX3DDotXObject:是用来驱动和控制3DSMAX模型对象的类,它实现了IControlDirectX3DObject,且从DirectX3DObject派生而来。
 ……………………………….
 
  游戏引擎文件的组织结构

 本引擎的文件组织参考了Java包结构的组织形式,结构清晰易于管理。主要有D3DUtility包和Microsoft包,Microsoft包中打包好了DXUT框架下的常用类库,最后是主文件D3DMain.cpp和stdafx.h。
 

一款基于DirectX 游戏引擎的实现及主要类库说明

3.1  开发环境
IDE:Microsoft Visual Studio 2005 Professional Edition (Visual C++ 2005)
DirectX SDK:Microsoft DirectX 9C SDK
游戏引擎脚本IDE:XMLSpy
建模工具:Rational Rose 2003
Windows Platform:Windows XP (Service Pack 2)

3.2  游戏引擎功能描述
 初步实现了用鼠标控制人物模型的移动(基于骨骼模型驱动),绚丽的魔法效果,地形的自动生成,灵活的视角移动。驱动3DSMAX模型文件(.x)的功能,及其对模型文件进行控制响应,同时还配备一个游戏脚本解析引擎。下面就争对该引擎在设计过程中的几个重要类进行一下简单的介绍。

  工

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 3/8/8

相关论文
上一篇:机电一体化的发展与应用 下一篇:基于80C51的温湿度控制系统.
推荐论文 本专业最新论文
Tags:基于 XML 脚本 驱动 DirectX 游戏 引擎 2010-03-22 23:47:35【返回顶部】

相关栏目

自动化相关
计算机论文
工程管理论文
法律论文
医学论文
人力资源
电子专业
电气工程
英语论文
行政管理
电子商务
社科文学
教育论文
物流专业
金融专业
财务管理
会计专业
化学化工材料科学
电子通信
环境科学
经济类
机械模具类
报告,总结,申请书
其他专业论文


关于我们 | 联系方式 | 论文说明 | 网站地图 | 免费获取 | 钻石会员 | 原创毕业论文

 

论文天下网提供论文检测,论文降重,论文范文,论文排版,网站永久域名WWW.GEPUW.NET

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 893628136@qq.com

Copyright@ 2009-2017 GEPUW.NET 论文天下网 版权所有