- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
福建农林大学计算机与信息学院
课程设计报告
课程名称:
软件工程
课程设计题目:
游戏引擎开发
姓 名:
戴智亮
系:
计算机科学与技术系
专 业:
计算机科学与技术专业
年 级:
2007
学 号:
071150062
承担角色:
主程序员
同组组长:
戴智亮
同组其他成员:
张世强、柯跃宗、梁成地
实验地点:
田家炳楼
指导教师:
王李进
职 称:
讲师
完成起止日期:
2010.12.5-2011.1.9
2011年 1月 10日
福建农林大学计算机与信息学院
课程设计结果评定
评价内容
评价指标
评分权值
评定成绩
业务水平
有扎实的基础理论知识和课程知识;能正确设计实验方案;独立进行实验工作;能运用所学课程知识和技能去发现与解决实际问题
0.2
设计质量
实验正确,分析处理科学;设计结果有应用价值;图纸绘制符合国家标准,质量符合要求;计算及测试结果准确;工作中有创新意识;对前人工作有改进或突破,或有独特见解;
0.4
工作量、
工作态度
按期完成规定的任务,工作量饱满,难度较大;工作努力,遵守纪律;工作作风严谨务实
0.2
报告质量
文字通顺,技术用语准确,符号统一,编号齐全,书写工整规范,图表完备、整洁、正确;
0.2
合 计
1.0
指导教师签字:
评定日期:
目录
TOC \o 1-3 \h \z \u 1 课程设计概述 1
2 项目的可行性研究与需求分析 2
3 项目设计的基本原理和采用的主要方法与技术 3
3.1 系统组成 3
3.2 模块化分解 4
4 本人实现项目的过程与步骤 5
4.1 驱动核心模块 5
4.2 文本模块 5
4.3 2D模块 5
4.4 界面模块 5
4.5 音频模块 6
4.6 网络模块 7
4.7 3D模块 7
4.8 脚本模块 7
4.9 辅助模块 7
5 个人遇到的困难与获得的主要成果 8
6 课程设计完成结果分析与个人小结 9
7 附录 10
参考文献 10
游戏引擎开发
课程设计概述
假想客户(以下简称客户)是具有一定开发能力,从事或试图从事Windows平台的C++游戏开发,但又不想接触复杂死板的 HYPERLINK DirectX和Win32 API,因此需要一个能提供简单灵活接口的游戏引擎类库。客户对该类库的功能要求大致可归纳为:
方便重用的驱动核心。包括处理游戏窗口创建、主线程、消息处理等。
2D图形渲染。能读取并绘制流行图片格式,为了美工方便必须能以贴片形式绘制一张图片的某部分,并且支持图片的旋转缩放通道混合等。
3D图形渲染。能读取并渲染流行3D建模工具导出的网格模型,并提供网格模型基本的操作如旋转缩放和动画控制等。
音频处理。能对ogg vorbis进行读取解析播放。
玩家输入处理。能处理来自于键盘、鼠标的玩家输入。
网络功能。能将客户机连接到Internet与其他玩家对战。
文本输入和绘制。能绘制丰富字体的文本,支持接受各种输入法的输入。
方便自定义的UI框架。提供一个UI框架,客户可根据需要改变界面方案为自己的游戏创建独一无二的UI界面。
脚本集成。集成一种强大而简单的脚本。
项目的可行性研究与需求分析
针对客户所提出的要求,结合各方所能提供的API,对各项功能进行逐一分析,初步将引擎分为几大模块,各模块之间相互独立,可单独使用:
驱动核心。处理窗口创建、主线程、消息处理。
音频模块。对DirectX和 HYPERLINK Ogg vorbis的音频处理API,提供加载播放ogg音频的接口。
2D模块。封装了DirectX的纹理绘制API,可绘制2D图形图像。
文本绘制模块。封装了DirectX的字体绘制API,满足游戏中的文本绘制需求。
界面模块。界面绘制基于2D模块,模拟微软MFC框架及其消息机制的一个界面框架,可为游戏提供灵活的交互界面。
网络模块。封装 HYPERLINK Winsock提供的网络API为游戏提供网络功能。
3D模块。对DirectX的3D接口进行封装,包含了.X文件解析,网格控制等。
脚本模块。集成了 HYPERLINK Lua脚本语言,为有剧情发展的游戏提供便利的脚本处理功能。
辅助模块。提供其他便于游戏开发的工具类。
项目设计的基本原理和采用的主要方法与技术
系统组成
游戏引擎的核心部分是驱动核心,包含主线程和消息处理,以及供用户扩展成自定义游戏的初始化、逻辑、渲染、释放等接口,用户的游戏开发主要在驱动核心的接口里调用其他功能模块进行。
游戏引擎业务流程的活动图如下图:
模块化分解
如下图,系统根据功能分为9个模块,其中驱动核心作为核心部分
文档评论(0)