




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章 构建游戏引擎框架内容提纲 3.1游戏引擎框架的构建3.1.1 引擎框架的设计3.1.2 T_Config头文件的定义3.1.3 屏幕分辨率的改变及恢复3.1.4 引擎类的定义和实现3.2引擎类应用实例3.2.1 编写引擎框架测试代码3.2.2 为框架测试代码增加绘图处理任务第3章 构建游戏引擎框架本章以构建游戏引擎框架为起点,以游戏窗口处理为主要实现内容。后续的章节将以本章的代码框架和窗口处理为基础,逐步完成一个初步的游戏引擎的实现,并在实际游戏中运用该游戏引擎。3.1 游戏引擎框架的构建在游戏开发时,对于某一类游戏共享的、相对固定的代码,往往会进行抽象化,以代码重用为目的,以类的形式
2、进行封装,这样封装起来的代码,也就是所谓的游戏引擎。游戏引擎预先调用某些功能相对固定,但实现细节由具体游戏才能确定的模块,这些模块可以以纯虚函数的方式封装在抽象类中。函数名称是确定的,且被游戏引擎自动调用,但函数的具体实现则由该抽象类的派生类进行实现。使用引擎时,先实现一个该抽象类的派生类,然后完成这些纯虚函数的具体实现。这样一来,这些纯虚函数实际上充当了接口函数的功能。本章将首先涉及游戏引擎框架的构建和游戏窗口的处理。 3.1 游戏引擎框架的构建3.1.1 引擎框架的设计TinyEngine的架构:3.1 游戏引擎框架的构建引擎由11个类和一个共享的头文件构成。全部的引擎文件都是以“T_”开
3、头。1. T_Config头文件2. T_Display显示类3. T_Engine引擎类其中定义了GameInit()、GameLogic()、GameEnd()、GamePaint()、GameKeyAction()、GameMouseAction()这6个纯虚函数,本类是专门用于派生的抽象类4. T_Graph图形类5. T_Menu菜单类6. T_Layer图层类7. T_Sprite精灵类8. T_AI智能类9. T_Util工具类10. T_Map地图类11. T_Scene场景类12. T_Audio声音类3.1 游戏引擎框架的构建3.1.2 T_Config头文件的定义T_Co
4、nfig头文件是整个游戏引擎共用的头文件,它首先会被T_Engine类引用。这个文件只有.h的头文件,没有对应的.cpp源文件。文件中主要是一些数据结构定义、常量定义,以及所需系统头文件的引用等。除了已经给出的定义外,您还可以根据开发的需要自己增加所需要的数据结构定义、数据类型定义、常量定义等。T_Config.h文件完整定义请参见教程3.1 游戏引擎框架的构建3.1.3 屏幕分辨率的改变及恢复处理游戏的分辨率是游戏引擎必备的功能1.修改分辨率的API函数ChangeDisplaySettings()函数,其原型定义如下: LONG ChangeDisplaySettings (LPDEVMODE lpDevMode, DWORD dwflags);2.将分辨率处理功能封装成类1) T_Display类的定义:请参见教程2) T_Display类的实现:请参见教程3.1 游戏引擎框架的构建3.1.4 引擎类的定义和实现T_Engine引擎类的定义和接口函数声明在T_Engine.h头文件中完成;类成员函数的定义及类的静态数据成员的初始化则在T_Engine.cpp源文件中实现。T_Engine类的定义:请参见教程T_Engine类的实现:请参见教程3.2 引擎类应用实例3.2.1 编写引擎框架测试代码具体实现请参见教程和代码工程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年绿色金融产品创新模式与风险管理分析报告
- 现场作业讲评课件
- 上海市嘉定区嘉定二中2026届高三上化学期中预测试题含解析
- 2025年营养师考试模拟试卷:冲刺阶段营养干预方案设计
- 2025年电气工程师考试试卷:电气自动化控制专项训练
- 2025年银行从业资格考试 银行法律法规专项训练试卷
- 2025年电气工程师考试重点难点 电气设计专项训练试题集
- 2025年小学数学毕业升学考试综合题型冲刺试卷
- 2025年小学数学毕业升学考试易错题型解析与应用模拟试卷
- 新疆伊宁生产建设兵团五校联考2026届化学高一上期中复习检测试题含解析
- 纸品供应及质量保证措施
- 2025年北京市中考物理试卷真题(含答案)
- 2025年安徽高考地理试卷真题(含答案)
- 安全数据脱敏技术
- 膝关节损伤康复护理讲课件
- 社区儿童主任培训课件
- 工厂行车吊装方案(3篇)
- 私企公司车辆管理制度
- 2025年上海市中考语文试卷真题(含答案及解析)
- 2025-2030年中国油田服务行业市场运行分析及竞争格局与投资发展研究报告
- 交房活动仪式策划方案
评论
0/150
提交评论