收藏 分享(赏)

基于gml的2d游戏设计毕业论文.doc

上传人:无敌 文档编号:632104 上传时间:2018-04-15 格式:DOC 页数:31 大小:8.75MB
下载 相关 举报
基于gml的2d游戏设计毕业论文.doc_第1页
第1页 / 共31页
基于gml的2d游戏设计毕业论文.doc_第2页
第2页 / 共31页
基于gml的2d游戏设计毕业论文.doc_第3页
第3页 / 共31页
基于gml的2d游戏设计毕业论文.doc_第4页
第4页 / 共31页
基于gml的2d游戏设计毕业论文.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、青岛农业大学毕 业 论 文(设计)题 目: 基于 GML 的 2D 游戏设计 姓 名: 学 院: 理学与信息科学学院 专 业: 电子信息科学与技术 班 级: 2010.2 学 号: 20102957 指导教师: 宋洁 2014 年 6 月 1 日目 录1 前言 .12 系统开发概述与需求分析 .22.1 系统开发概述 .22.1.1 系统开发背景 .22.1.2 项目开发目的和意义 .22.2 需求分析 .22.2.1 系统需求 .22.2.2 技术分析 .32.3 可行性分析 .33 系统技术介绍 .43.1 GML 语言概述 .43.2 动态链接库介绍 .43.3 数据结构介绍 .43.4

2、 优化渲染引擎模式(Shader Model) .54 系统总体设计 .64.1 利用 GML 的设计思想以及整体规划 .64.2 系统功能结构设计 .65 系统详细设计及代码实现 .85.1 设计说明 .85.2 地形信息的实现 .85.3 玩家的逻辑操作 .115.3.1 角色移动的实现 .115.3.2 环境交互的实现 .125.3.3 角色攻击的实现 .135.4 剧情演出的实现 .165.4.1 自创标记语言 .165.4.2 时间轴 .175.5 A*寻路算法以及敌人 AI 的实现 .175.6 外部资源加载以及资源的打包 .185.6.1 动态资源加载 .185.6.2 外部资源

3、打包 .185.7 基于 shader 和 surface 的特效 .195.8 用户体验的改进 .216 系统环境配置与调试 .23参考文献: .24致谢 .251基于 GML 的 2D 游戏设计摘要:电子游戏自 20 世纪 60 年代诞生以来,到如今已经成为一个热门产业。各种电子游戏的制作引擎也是层出不穷。GameMakerStudio 是如今较为流行的游戏制作引擎,其内置的 GML 脚本语言,高度概括了 2D 游戏设计能用到的共通编程语句,往往浓缩为一个简短灵活的函数,使设计游戏更为灵活。同时 GML还支持动态链接库,数据结构,优化渲染等功能,更是为高质量的游戏制作提供了可能性。本项目是

4、使用 GameMakerStudio 作为游戏引擎,编写的一款动作解谜类型的角色扮演游戏。项目中解决了地形信息描述、逻辑操作、剧情演出、AI 设计、外部资源加载打包,Shader 特效等开发的常见问题,尽所能为玩家提供最为丰富和优质的游戏体验。关键字:游戏制作;GameMakerStudio;GML;数据结构;DLL;Shader1The Design of 2D-Game Base on GML Abstract: Video games since the birth of the 1960s, until now has become a hot industry. Various pr

5、oduction engine of electronic game is also emerge in endlessly. And GameMakerStudio is now more popular game engine. Its built-in scripting language GML, highly summarized the 2D game design to common programming statements. GML concentrated into a short flexible functions that enable more flexible

6、design of the game. Meanwhile GML supports dynamic link libraries, data structures, Shader Model and other functions, offers more possibility for high-quality game production.This project is to use GameMakerStudio as a game engine, write an action puzzle types of role-playing games. Project solves t

7、he terrain information description, logical operations, drama performances, AI, external resource loading, packaging design, Shader effects such as the development of common problems, what can provide players with the most abundant and high-quality gaming experience.Keywords: Game design; GameMakerS

8、tudio; GameMakerLanguage; Data structures; DLL; Shader 11前言电子游戏,自20世纪60年代诞生至今,已经成为了界范围内广泛认可的娱乐项目。然而由于其性质的特殊,电子游戏在国内的发展却屡屡受挫。上世纪90年代中期,许多国外的游戏佳作进入内地市场,刮起了一股电脑游戏旋风。90年代后期,中国游戏的研发能力逐渐提高,许多工作室如雨后春笋,一些本土公司纷纷加入,也出现了不少佳作。可惜因市场不够成熟,经营水平限制,特别是盗版的冲击,多数研发公司都难以为计,纷纷作调整,国产游戏的研发走入低谷。为了防止青少年沉迷游戏,国务院办公厅2000年6月曾转发文化

9、部等7部门关于开展电子游戏经营场所专项治理的意见,开始了针对国内游戏机市场的治理工作。这无疑又间接导致了广大民众对电子游戏的误解,以至“谈游戏色变”,对游戏的国民产业又是一次沉重的打击。然而实际上游戏只是一种新型的媒体。从竞技方面讲,类似体育;从文化方面讲,类似电影。正如电影分门别类一样,游戏也会根据题材、内容的不同,对人的影响也是有好有坏。积极向上的游戏也可以让玩家从中获得积极向上的影响。如今国产游戏的主流变成了网页游戏为主的快餐游戏。大多数游戏制作团队都放弃原创制作,从以往的游戏中借鉴思路或窃取素材。然而因为国内游戏市场的特殊性,往往就是这种快餐游戏最容易获得利润。原创的独立游戏反而分不到

10、一杯羹,国内的电子游戏产业可谓前途多舛。本项目则是使用PC为开发平台, GameMakerStudio引擎作为开发工具的一款独立的RPG游戏(角色扮演Role-playing Game),名为海克斯与红蔷薇(以下简称为海克斯)。游戏面向Windows平台,其策划、架构、文案以及使用的素材,均为制作团队独立原创完成。相信过硬的游戏质量和饱含诚意的制作团队,同样给玩家带来一丝感动,给国内游戏产业带来一丝希望。此外,本论文还将把开发过程中的收获和不足作简单阐述,这对我以后的学习工作将会有很大帮助。22 系统开发概述与需求分析2.1 系统开发概述2.1.1 系统开发背景2014年1月6日,不少游戏迷开

11、始在各个论坛中发布消息,称游戏机在被禁13年之后,终于将被解禁。这则消息源自中国新闻网在昨日发布的一条最新政策,这一名为国务院关于在中国(上海)自由贸易试验区内暂时调整有关行政法规和国务院文件规定的行政审批或者准入特别管理措施的决定的文件中,正式确定与游戏机有关的禁令将“暂时停止实施”。这一消息对国内的游戏产业来说可谓喜从天降。政府的支持和民众的认可,使得游戏产业又出现了新的希望。加之近年来国内的产权保护日益完善,民众的正版意识也日渐增强。也许国内的电子游戏开发也会自此迎来新的春天。2.1.2 项目开发目的和意义在今后的很长一段时间,电子游戏产业必将蓬勃发展。而因为上述的某些限制,国内的独立游

12、戏产业一直没有太多经验和建树。本项目则是对独立自主的游戏开发做出探索。如果能得到预期反响,还可以给其他原创团队带来极大的鼓励与信心。2.2 需求分析2.2.1 系统需求角色扮演游戏(Role-playing game),简称为RPG。游戏类型的一种,宽泛的游戏类型。在游戏中,玩家负责扮演这个角色在一个写实或虚构世界中活动。玩家负责扮演一个或多个角色,并在一个结构化规则下通过一些行动令所扮演的角色发展。玩家在这个过程中的成功与失败取决于一个规则或行动方针的形式系统(Formal system)。海克斯属于RPG游戏中的动作解谜RPG 。解谜游戏是一类通过对游戏中出现的信息或情节进行分析和处理,发

13、掘线索解决各种谜题的益智健脑游戏。与益智游戏不同的是,该类游戏的大多作品比之益智游戏更注重情节和人物塑造,内置谜题形式比小型的益智游戏更加灵活多样,画面表现也更加精致。解3谜游戏通常以游戏的形式锻炼了游戏者的脑、眼、手等器官协调性,适当游戏能增强自身的逻辑分析能力和思维敏捷性。2.2.2 技术分析海克斯使用的开发引擎为GameMakerStudio。这是由苏格兰邓迪的YoYo Games开发的一款游戏开发引擎,支持HTML5、Facebook 、Android、iOS、Symbian、Windwos和OS X等平台,以向GameMaker社区开发者提供全新的功能与性能 3。而GameMaker

14、 最大的价值在于其内置的一套编程语言 The Game Maker Language (GML)。GML 高度概括了 2D游戏设计能用到的共通编程语句,往往浓缩为一个简短灵活的函数,是“文字版的按钮”,使设计游戏更为灵活。而GML的另一大特色就是,它支持用C和C+编译的动态库。这样一来,从理论上讲就可以实现任何功能,弥补了GML本身可能有的不足,避免了因为语言本身的瓶颈 1。另外,GameMakerStudio在1.3版本之后,全面开始支持OpenGL 的Shader 系统,这极大地扩充了语言对显卡功能的开发,让游戏能调动起计算机的所有资源,用最合理的资源消耗达到最华丽的效果 2。2.3 可行

15、性分析可行性分析是设计开发系统的总体方向,开发软件系统需要给出其功能、性能、可靠性以及其他方面的要求,目的是用最小的代价在尽可能短的时间内确定问题是否能够解决、是否值得去解决:游戏的设计理念,就是以一个业余团队的时间和精力,打造出商业级的高质量游戏。因此对的画质和画面效果,都有较高的要求。游戏的分辨率为1280x720 60Hz的高清画质,但是每秒60帧的刷新率无异也给CPU带来了一些负担。因此在开发过程中,需要全程跟踪代码结构以及效率,尽可能优化算法,节约系统资源。GML是基于DirectX9.0c和 .NetFramework3.5的引擎。在所有的Windows7以及以上版本的操作系统,都

16、会自带上述环境。对于WindowsXP系统,也可以做到一键安装。4项目的合作方是四川美术学院。合作方提供策划、文案、美工、音乐等各种资源,而程序是由我负责完成。3 系统技术介绍3.1 GML 语言概述面向过程的编程语言,属于一种脚本语言。语言的运行结构是以”Step”为基本单位的。所谓Step,可以翻译成“步” ,理解为帧。GML 语言的根本即面向游戏运行过程中的每一帧进行编程,从而实现游戏功能。以帧为单位的编程,很大程度上把游戏的运行过程具体化,对于系统开发以及剧情演出都非常便利。GML所支持的扩展功能也非常优秀。其中对动态链接库( DLL)的支持,更是给语言本身提供了无限可能性。理论上,只

17、要C和C+能实现的功能,就可以用加载DLL 的方式让GML 也实现 3。此外,还有对Surface 、数据结构、 Shader、粒子系统、音频发射器等模块的支持,让GML如虎添翼。在GameMakerStudio中,还增加了游戏的跨平台编译。只要题材合适,通过简单的修改,就可以把游戏导出到HTML5、Facebook 、Android、iOS、Symbian、Windwos和OS X 等任意平台上 4。3.2 动态链接库介绍动态链接库英文为DLL ,是 Dynamic Link Library 的缩写形式,DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL 不是可执行文件 4。动态链

18、接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DLL 还有助于共享数据和资源。多个应用程序可同时访问内存中单个DLL 副本的内容。然而GML对其的支持也是有所限制的,参数和返回值仅支持 char*和double两种数据类型。但是在实际的开发中,这两种类型也完全够用了。53.3 数据结构介绍数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算

19、法和索引技术有关 5。GML支持的数据结构有:堆栈、队列、列表、配对、优先队列、栅格。3.4 优化渲染引擎模式(Shader Model)Shader Model(在3D图形领域常被简称SM )就是“优化渲染引擎模式”。事实上,Shader(着色器)是一段能够针对 3D对象进行操作、并被GPU 所执行的程序。通过这些程序,程序员就能够获得绝大部分想要的3D 图形效果。在一个3D场景中,一般包含多个Shader。这些Shader中有的负责对3D对象表面进行处理,有的负责对3D对象的纹理进行处理。早在微软发布 DirectX 8时,Shader Model的概念就出现在其中了,并根据操作对象的不同被分为对顶点进行各种操作的Vertex Shader(顶点渲染引擎)和对像素进行各种操作的 Pixel Shader(像素渲染引擎) 6。GameMakerStudio在1.3版本之后,开始全面支持Shader,使得游戏可以以极低的性能代价取得更好的画面效果。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报