毕业设计论文基于DirectX的跳跳球游戏设计.doc
《毕业设计论文基于DirectX的跳跳球游戏设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于DirectX的跳跳球游戏设计.doc(57页珍藏版)》请在三一办公上搜索。
1、基于DirectX的跳跳球游戏设计作 者 姓 名:指 导 教 师:单 位 名 称:信息科学与工程学院专 业 名 称:计算机科学与技术2010 年 6月Design of Jumpball Game Programming Based DirectXBy Supervisor :June 2010东北大学本科毕业设计(论文) 毕业设计(论文)任务书毕业设计(论文)任务书毕业设计(论文)题目:基于DirectX的跳跳球游戏设计设计(论文)的基本内容:(1) 了解游戏开发背景,分析游戏功能需求,研究其设计及实现技术。(2) 设计基于DirectX的跳跳球游戏总体结构,主要实现游戏设计与游戏引擎:游戏
2、设计由三个子模块构成:界面设计,小球种类设计,游戏规则设计。游戏引擎主要实现GUI控件模块、图形图像绘制模块、动画贴图模块、2D精灵渲染模块、粒子系统模块以及支持功能模块。毕业设计(论文)专题部分:题目:设计或论文专题的基本内容:学生接受毕业设计(论文)题目日期第周指导教师签字:年月日- IV -东北大学本科毕业设计(论文) 摘要基于DirectX的跳跳球游戏设计摘要当今电脑游戏越来越普及,与此相应,游戏编程也成为了计算机行业一个热门领域。游戏产业的前景十分美妙。当IT业正在经历着“寒冬”时,游戏软件业却呈现出了勃勃生机。巨大的经济效益正在使越来越多的优秀人才投身于游戏产业之中。电脑游戏不仅能
3、给软件产业带来了效益,而且可以减缓人们的精神压力。游戏的本质是为了让人放松心情,愉悦感官。大多数游戏都是有益身心健康的。适当游戏不仅可以丰富生活,还可以促使人动手动脑开发智力。这款跳跳球游戏,为轻薄短小的游戏类型,上手快,耗时少,操作简单,游戏乐趣丰富。本文首先介绍了游戏开发的数学基础,Visual C+工具和DirectX技术。然后在这个基础上重点说明了游戏开发的需求分析,成功搭建好了游戏的基本框架。其次,详细阐述了开发电脑游戏的关键技术游戏引擎技术,并用具体的类和函数,说明如何利用DirectX技术设计实现一个小型的游戏引擎。游戏引擎与应用程序,算法相结合,从而构成了一个完整的跳跳球游戏。
4、最后,本文对本次毕业设计进行总结,对制作更高水平的2D电脑游戏作出了展望。关键词: DirectX;游戏引擎;2D电脑游戏;跳跳球东北大学本科毕业设计(论文) AbstractDesign of Jumpball Game Programming Based DirectXAbstractBecoming increasingly popular in todays computer games,Accordingly,the game programming has become a hot area of the computer industry.The game industry se
5、es a wonderful future.When the IT industry is suffering a “frosty winter”,the game industry is full of vigor and vitality.The huge economic benefits of the game industry are pouring more and more outstanding talents to the field of it.Computer game not only benefits of the computer industry,but also
6、 relieves peoples mental stress.The nature of the game is to make people relax and sensual pleasure.Most games are healthy and well. Appropriate games can not only enrich their lives,but also promote people hands-on mental and physical and development of intelligence. This jumpball game is small and
7、 short,which is easy to play and full of fun.Firstly,this thesis introduces mathematical foundations of game development,the brief introduction of Visual C+ and DirectX.Then it concerns about the needs of game development,the basic structure of a PC game has been built.Secondly,this thesis expounds
8、the key technology of designing PC gameGame engine technology.Then it demonstrates how to use DirectX to design a small game engine with specific classes and functions. After the combining of game engine,application and algorithm,a whole jumpball game is complete.At the end of the paper,the summary
9、of this graduation project and some views on the 2D PC game with higher level.Key words: DirectX;game engine;2D PC game;jumpball东北大学本科毕业设计(论文) 目 录目录毕业设计(论文)任务书I摘要IIAbstractIII目录IV第1章 引言11.1 课题的背景11.2 课题研究成果应用的实际意义21.3 主要研究内容21.4 本文结构安排3第2章 游戏开发基础42.1 数学基础42.1.1 向量42.1.2 矩阵52.2 Visual C+简介72.2.1 Visu
10、al C+优势72.2.2 与其他函数库的结合82.3 核心技术简介82.3.1 DirectX简介82.3.2 DirectX 重要知识点112.4 本章小结11第3章 需求分析123.1 游戏规则123.1.1 棋盘和小球的表示123.1.2 游戏规则说明123.2 需求分析133.2.1 游戏引擎分析133.2.2 游戏方案分析133.3 本章小结15第4章 游戏设计164.1 游戏引擎164.1.1 GUI控件的设计164.1.2 基本图形图像绘制的设计164.1.3 动画贴图的设计184.1.4 粒子系统的设计224.1.5 游戏引擎支持功能的设计254.2 游戏规则设计264.3
11、本章小结27第5章 游戏实现285.1 游戏引擎实现285.1.1 GUI控件的实现285.1.2 基本图形图像绘制的实现295.1.3 动画贴图的实现295.1.4 粒子系统的实现325.1.5 游戏引擎支持功能的实现345.2 游戏实现365.2.1 小球种类设置365.2.2 游戏规则实现375.2.3 开始菜单界面395.2.4 游戏关卡选择405.2.5 主游戏界面405.2.6 编辑界面415.2.7 游戏帮助界面415.3 本章小结43第6章 游戏测试446.1 游戏引擎测试446.2 游戏测试446.3 本章小结45第7章 结论46参考文献48致谢49东北大学本科毕业设计(论文
12、) 0 引言第1章 引言1.1 课题的背景游戏在欧美的研究是从1961世界第一款交互式游戏太空大战诞生开始,已经发展了四十多年的历史,取得了不少成功经验。2007年美国视频游戏和游戏软件销售额达到了179亿美元,较2006年增长了43%,超过了电影,成为美国第一娱乐产业。日本经济的近20%是电子游戏产业所创造的。韩国的游戏产业也达到了200亿美元的产值,超过汽车工业成为韩国经济的支柱产业。与他们相比,中国的游戏市场仍是一个新兴的市场。根据2007年中国游戏产业调查报告,截至到2007年12月,中国网络游戏用户数已达至4017万,比2006年增长23%,实际销售收入为105.7亿元人民币,比20
13、06年增长60%,手机游戏用户也与同期相比增长25%。据2007年中国游戏产业调查报告,至2007年11月,中国网络游戏研发公司数量己达126家,比2006年的93家增长35.5%。广东、北京成为游戏研发公司增长最快的区域,截至至2007年11月,广东的游戏研发公司达到19家,比2006年的7家增长171.4%,北京游戏研发公司达到41家,比2006年的24家增长70.8%。全国游戏研发从业人员数量达到21034人,比2006年的13908人增长51.2%。然而就游戏设计的经验和技术而言,目前中国落后于欧美,日本和韩国,就中国自身而言,大陆又稍微落后于台湾。目前,中国市场上的游戏以日本、美国、
14、韩国等地的为多,而国产游戏则大部分是由内地与中国台湾地区合作开发,完全由内地游戏制作人自己创作的游戏实在是少之又少,游戏开发人员与用户量比例严重失调已经成为阻碍国内游戏产业发展的重要阻力,以拥有1300万人口的中国台湾地区为例,其软件游戏业设计美工人员近3000人,所以内地在软件游戏人才方面的缺口实在太大。随着国内外的游戏产业的发展,3D游戏渐渐的成为游戏市场中的主流,但2D游戏基于自己的自身特点并没有推出游戏市场,反而在休闲游戏、网页游戏等领域广泛的发展。放眼观察欧美、日韩游戏产业发展比较成熟的国家,3D游戏从游戏策划、图像引擎到游戏开发等各个方面已逐步成熟。反观中国,3D技术并不成熟,很多
15、游戏公司的主要力量还只是在于技术方面的处理,尽量在技术方面模仿国外的游戏作品,并且3D游戏投资较大,只有小部分的公司能进行开发。相反2D游戏的技术难度相对较低,游戏公司重心可以不单单是放在技术处理方面,还可以多注重在游戏表现形式等策划方面,丰富游戏的内容,整体开发周期断,资金投入相等少的多,这些都非常的符合中国现在的情况。在中国游戏市场的反应来看,3D游戏对于游戏爱好者来说吸引力强,他们喜欢拥有一定的操作难度,画面质量优秀的游戏;2D游戏表现形式上休闲、轻松、愉快,并且对硬件和系统的要求低,适合大量的喜欢交友,休闲娱乐的人。现在的2D游戏中还也引用了不少的3D效果来丰富游戏画面,如粒子系统、水
16、波特效等。因此,2D游戏在中国的发展前景是良好的,不会轻易的被3D游戏所取代,为此2D游戏开发技术是我们值得关注和思考的问题。正是在这样的情况下,本文研究游戏制作是很有意义的。基于游戏发展的历史和前景,我决定用C+语言开发一款小游戏跳跳球,游戏规则源于18世纪法国宫廷贵族的独立钻石棋,实现闯关模式功能。我希望这款游戏能够吸引大家,为大家带来快乐。1.2 课题研究成果应用的实际意义游戏产业的前景十分美妙。当IT业正在经历着“寒冬”时,游戏软件业却呈现出了勃勃生机。近几年游戏行业的发展速度之快,远远超过了家电,汽车等等传统的行业。巨大的经济效益正在使越来越多的优秀人才投身于游戏产业之中。随着社会的
17、发展,人们生活的步调日益加快,越来越多的人加入了全球化的世界。人们不再拘泥于一小块天地,加班,出差成了现代人不可避免的公务。而此时一款可以随时随地娱乐的游戏成了必需品。跳跳球这一游戏简单易行,操作方便,娱乐性较强。这一款游戏紧紧地抓住了人们的心理,虽然简单,却其乐无穷,在人们不断追求更多的欲望下,该游戏给人们带来了追逐的快感,以及成功后的满足感,对于一直处于高压下的现代人是很好的放松工具。1.3 主要研究内容本文的研究目标是利用DirectX技术设计实现一个2D游戏引擎并完成休闲游戏跳跳球的制作。整个2D游戏图形引擎系统封装了底层复杂的实现细节,为上层游戏程序提供一个简单、灵活、易用的平台。本
18、文研究的课题初步探讨了2D游戏图形引擎的基本技术架构。针对一些关键问题给出了解决方案并予以实现,并在最后对于今后的工作做了进一步的展望。本文的工作内容主要包括以下几个方面:1) 研究了现有游戏图形引擎的主要实现方法,学习掌握相关的概念和技术,分析设计了2D游戏图形引擎系统的体系结构,划分了各功能模块。2) 分析了创建界面控件系统模块的优点,建立可视化自定义组件的底层类库,设计并实现了界面控件系统模块。3) 划分了图形渲染系统模块的层次结构,设计开发了基本图形图像绘制子模块、动画贴图子模块和屏幕渲染管理子模块。4) 利用了顶点缓冲的方法渲染2D精灵,可以减少游戏频繁的大量绘制图像所耗费的资源,提
19、高游戏的运行效率。5) 通过分析粒子特效的应用机理,给出了粒子特效在2D游戏中的实现方式。6) 在字体、资源管理器、音乐、音效、向量等游戏引擎支持功能方面,提出了可行的方法,并加以实现。7) 对智力游戏独立钻石棋进行重新的改造,设计出不同的小球,提高了游戏的趣味性。1.4 本文结构安排本文内容安排如下:第1章首先介绍了论文的研究背景和意研究成果应用的实际意义,对本论文的研究内容和结构进行了说明。第2章介绍了游戏开发所需要的数学基础知识,开发平台Visual C+以及核心技术DirectX。第3章讲述了游戏设计的需求分析。描述了游戏的元素棋盘和小球,详细介绍了游戏的规则设计。介绍了游戏引擎处理流
20、程以及选择游戏算法。第4章游戏以及游戏引擎的具体设计。详细描述了游戏引擎各模块的设计包括GUI控件模块、图形图像绘制模块、动画贴图模块、2D精灵渲染模块、粒子系统模块以及支持功能模块。还有游戏规则算法的详细设计。第5章描述了游戏以及游戏引擎的实现。包括小球类的实现,开始界面,关卡选择界面,主游戏界面,编辑界面以及游戏帮助界面。第6章分别对游戏和游戏引擎进行测试,找出问题并提出解决方案最后给出总结,并提出下一步的目标。- 49 -东北大学本科毕业设计(论文) 第2章 游戏开发基础第2章 游戏开发基础2.1 数学基础2.1.1 向量向量是游戏开发中涉及的最基本的对象,它的两个重要的属性是长度和方向
21、,3D世界的基本坐标系包含3个轴,分别是x轴、Y轴和z轴,并分别代表空间中的宽度、高度和深度,3D向量是一个包含三个浮点数的结构,有了这三个值就可以定位3D世界中的任意物体。向量的基本操作如下:1) 计算向量的长度向量的模就是有向线段的长度,通过代数方法计算向量的公式为:。2) 单位化向量当向量的模为1是,即为单位向量。通过将向量的每个分量与该向量的模相除得到转化后的单位向量,如: 已知向量=,单位化的结果是。3) 向量相等几何学上,判断两个向量是否相等,需判断这两个向量的长度和方向是否都相等。在代数学上,判断是否相等,需判断两个向量维数和相应的分量是否相等。例如:要判断和是否相等。,4) 向
22、量加减向量的加法是基本的操作,定义为两个维数相同的向量对应分量分别相加。)向量的减法就和加法类似,是两个维数相同的向量对应分量分别相减。5) 向量放缩向量的放缩可以用来改变模的大小,而向量的方法不改变。通过一个倍数与向量3个分量相乘,得到向量放缩后的值。假设k为倍数, 6) 向量点乘向量点乘是向量代数中的一种乘法,其运算规则如下:在几何意义上,就是用于计算两个向量之间角度的余弦。,其中为两个向量的夹角。从上面的公式可以看出,当点乘的值等于0时,表示两个向量垂直;当点乘的值大于0时,表示两个向量的夹角小于90度;当点乘的值小于0时,表示两个向量的夹角大于90度;同时也可以通过点乘公式计算出夹角的
23、值。在游戏开发中应用较广,进行光照计算与背面消隐时可能大量应用。7) 向量叉积向量叉积是向量代数中的另一种乘法,用于计算垂直另外两个向量的向量。在游戏开发中有很多的用途,只要已知同一个顶点的两条边就可以求出该多边形的法向量。2.1.2 矩阵矩阵简单的来说就是一个由行、列组成的矩形数组。Direct3D中很多情况下都要矩阵的操作,包括渲染的时候物体的平移、旋转、放缩还有投影场景等等。下面就来介绍矩阵的各种操作:1) 矩阵加减法矩阵的加法就是当两个矩阵的维数相同时,两个矩阵对应元素相加。以22的矩阵相加结果为:矩阵的减法和加法相似,是当两个矩阵的维数相同时,两个矩阵对应元素相减。2) 矩阵数乘矩阵
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 DirectX 跳跳 游戏 设计
链接地址:https://www.31ppt.com/p-4862811.html