从游戏引擎构建到实际应用 教学课件 万立中 万立新 Chapter
本文关键词:游戏程序设计教程——从游戏引擎构建到实际应用,由笔耕文化传播整理发布。
网友ouyangxiahe近日为您收集整理了关于新游戏程序设计教程——从游戏引擎构建到实际应用 教学课件 万立中 万立新 Chapter_03的文档,希望对您的工作和学习有所帮助。以下是文档介绍:在线教务辅导网:课件及动画素材请查阅在线教务辅导网QQ:349134187 或者直接输入下面地址:游戏程序设计教程——从游戏引擎构建到实际应用第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 游戏引擎框架的构建在游戏开发时,对于某一类游戏共享的、相对固定的代码,往往会进行抽象化,以代码重用为目的,以类的形式进行封装,这样封装起来的代码,也就是所谓的游戏引擎。–游戏引擎预先调用某些功能相对固定,但实现细节由具体游戏才能确定的模块,这些模块可以以纯虚函数的方式封装在抽象类中。–函数名称是确定的,且被游戏引擎自动调用,但函数的(来源:[])具体实现则由该抽象类的派生类进行实现。–使用引擎时,先实现一个该抽象类的派生类,然后完成这些纯虚函数的具体实现。–这样一来,这些纯虚函数实际上充当了接口函数的功能。本章将首先涉及游戏引擎框架的构建和游戏窗口的处理。3.1 游戏引擎框架的构建3.1.1 引擎框架的设计TinyEngine的架构:3.1 游戏引擎框架的构建引擎由11个类和一个共享的头文件构成。全部的引擎文件都是以“T_”开头。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_Config头文件是整个游戏引擎共用的头文件,它首先会被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类的实现:请参见教程
1
播放器加载中,请稍候...
系统无法检测到您的Adobe Flash Player版本
建议您在线安装最新版本的Flash Player 在线安装
本文关键词:游戏程序设计教程——从游戏引擎构建到实际应用,由笔耕文化传播整理发布。
,本文编号:75745
本文链接:https://www.wllwen.com/wenshubaike/mishujinen/75745.html