毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

VC++OpenGL的飞行射击游戏设计

更新时间:2010-8-17:  来源:毕业论文

VC++OpenGL的飞行射击游戏设计
1 引言1.1系统开发背景
软件系统名称:飞行射击游戏
本项目是根据毕业设计的要求,经过本人实践及深思熟虑后提出,结合所学知识所作出的最终决定。
OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。OpenGL的前身是SGI公司为其图形工作站开发的IRIS GL。IRIS GL是一个工业标准的3D图形软件接口,功能虽然强大但是移植性不好,于是SGI公司便在IRIS GL的基础上开发了OpenGL。OpenGL的英文全称是“Open Graphics Library”,顾名思义,OpenGL便是“开放的图形程序接口”。Open GL仍然是唯一能够取代微软对3D图形技术的完全控制的API。论文网http://www.lwfree.com
由于 Linux 操作系统平台的大力推广,基于Linux 的各种应用软件也不断壮大,因此基于跨平台图形库的跨平台三维游戏开发也越来越受重视。OpenGL(open graphics library)是一种独立的平台无关的三维图形开发库,在各种语言下进行主框架开发并结合应用OpenGL 函数都可以开发出三维游戏。但是由于框架开发的平台相关性使游戏无法跨平台编译运行,因此glut+OpenGL 的方式成了一种很好的选择。但是在对复杂框架和各种媒体的支持方面,glut 并不理想。在Linux 下可以采用FLTK 等框架平台技术实现包括按钮在内的比较复杂的框架功能,但是需要专门的Linux 开发环境,众多的Window 环境下的KDE 爱好者明显对此无法适从。相反,SDL(Simple DirectMedia Layer)作为免费的跨平台多媒体应用编程接口,已经被人们广泛用于开发二维游戏,其优秀的消息框架支持、文件支持和声音支持等都使得它成为能与微软DirectX 匹敌的最为成熟的技术之一。
1.2项目目的及意义
国内的三维游戏开发技术正处于赶超国外的关键时期,从创意、策划、研究开发与实现,到游戏的运营与维护,都有大量的知识值得学习和摸索。
一个优秀的游戏,不但画面漂亮,游戏性能好,而且游戏有特色,娱乐性好。
性能的好坏是基于良好的游戏架构跟算法,研究开发一个OpenGL游戏能更好的探索和巩固当中的奥秘。
优秀的游戏给人带来娱乐,休闲之余带来更多的乐趣。对计算机要求低,可供更多的游戏玩家享乐。
通过利用OpenGL的三维图形软件包,深入了解运用Visual C++制作一个拥有可供用户自行定义游戏关卡的3D飞行射击游戏。体现人机交互。充分运用项目开发、面向对象、算法等的运用。
1.3项目技术要求
经过对某些游戏亲身体验,分析和研究后,运用计算机技术,结合飞行射击游戏的实际特点,开发了这飞行射击游戏。一个好的游戏,给人带来娱乐,休闲之余带来更多的乐趣。对计算机要求低,可供更多的游戏玩家享乐。玩家可以通过游戏附带的模型制造工具来制作自己喜爱的飞机模型。为了能让玩家可以制作模型,不需开发一个操作简单的游戏模型制作器,导出模型信息,并能被游戏识别。
本游戏通过Microsoft Visual C++ 6.0集成开发环境,使用C++语言及OpenGL库、STL库进行开发基本达到要求。本文来自六*维~论-文^网
目  录摘  要 I
ABSTRACT II
1 引言 1
1.1系统开发背景 1
1.2项目目的及意义 1
1.3项目技术要求 2
1.4开发工具及相关技术简介 2
1.4.1 C++语言 2
1.4.2 OpenGL 3
1.4.3 STL 3
1.4.4 VC++ 5
2  可行性研究 7
2.1技术可行性 7
2.2经济可行性 7
2.3操作可行性 7
2.4法律可行性 7
3  需求分析 8
3.1需求分析的重要性 8
3.1.1目标游戏要求 8
3.1.2系统运行环境 8
3.1.3系统开发工具 8
3.1.4系统的性能要求 8
3.1.5系统的功能要求 8
3.1.6系统总体功能需求框架 9
3.2系统主要程序流程图与数据流图 10
3.2.1飞行射击游戏程序流程图与数据流图 10
3.2.1.1开始游戏程序流程图与数据流图 10
3.2.1.2模型选择流程与数据流图 11
3.2.1.3进行游戏流程与数据流图 13
3.2.1.4飞行射击游戏总业务流程与数据流图 15
3.2.2模型编辑器总程序流程图与数据流图 16
4  总体设计 18
4.1概述 18
4.2游戏目标 19
4.3游戏结构设计 19
4.4游戏功能划分 19
4.4.1游戏子功能划分 19
4.5游戏功能描述 20
4.5.1开始菜单功能描述 20
4.5.2模型选择功能描述 20
4.5.3进行游戏功能描述 20
4.5.3用户菜单功能描述 21
4.6模型编辑器功能划分 21
4.7模型编辑器描述 21
5  详细设计与系统实现 22
5.1概述 22
5.2游戏的实施 23
5.2.1主窗口创建(NewShow.cpp) 26
5.2.2 OpenGL窗口创建(OpenGL.h、OpenGL.cpp) 26
5.2.3游戏控制器(Contral.h、Contral.cpp) 26
5.2.4机体对象基本类(ObjData.h、ObjData.cpp) 26
5.2.5敌机对象类(ObjBaseData.h、ObjBaseData.cpp) 26
5.2.6敌机对象控制器(AiObj.h、AiObj.cpp) 26
5.2.7战机对象控制器(SelfObj.h、SelfObj.cpp) 27
5.2.8子弹对象类(BulletObj.h、BulletObj.cpp) 27
5.2.9子弹对象控制器(BulletMenager.h、BulletMenager.cpp) 27
5.2.10文件读取控制器(FioMenager.h、FioMenager.cpp) 27
5.2.11文字显示类(CGLFont.h、CGLFont.cpp) 27
5.2.12火花对象类(Grain.h、Grain.cpp) 27
5.2.13火花对象控制器(GrainMenager.h、GrainMenager.cpp) 28
5.2.14碰撞检测(Hitexamina.h、Hitexamina.cpp) 28
5.2.15模型控制器(modeMenager.h、modeMenager.cpp) 28
5.2.16游戏类图 29
5.3模型编辑器的实施 30
5.3.1MFC窗口(CMakeFlyModeDlg.h、CMakeFlyModeDlg.cpp) 30
5.3.2OpenGL窗口创建(OpenGL.h、OpenGL.cpp) 30
5.3.3子模型管理(BaseGraphics.h、BaseGraphics.cpp) 30
5.3.4子模型类(GraphicsObj.h、GraphicsObj.cpp) 31
5.3.5文件存取控制器(FioMenager.h、FioMenager.cpp) 31
5.3.5模型编辑器类图 31本文来自六*维~论-文^网
5.4自定义数据结构 31
6  测试与维护 33
6.1测试的任务及目标 33
6.1.1测试的任务 33
6.1.2测试的目标 34
6.2测试方案 34
6.2.1模块测试: 34
6.2.3验收测试 35
6.2.4平行运行 35
6.3系统维护 35
7  特点与技巧 36
7.1游戏特点 36
7.2 代码技巧 36
参考文献 37
附  录 38
谢  辞1508

[1] [2] [3] [4] 下一页

VC++OpenGL的飞行射击游戏设计下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。