基于unity3d的塔防游戏的设计与实现.doc
《基于unity3d的塔防游戏的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于unity3d的塔防游戏的设计与实现.doc(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于unity3d的塔防游戏的设计与实现摘 要塔防,即炮塔防御(Tower Defence),也统称TD ,指一类通过在地图上建造炮塔或类似建筑物,以阻止游戏中敌人进攻的策略型游戏,要有阵图。塔防受众很广,游戏模式简单而且可玩性极强,时至今日,塔防在游戏应用中依然是最热门的下载类型之一,比较经典的像植物大战僵尸。本设计使用当前流行的跨平台游戏引擎Unity3d,编程语言为C#。在游戏中,玩家可以在任何空白的地块上建造各种防御塔用于攻击不同类型的怪物,怪物会按照预定的路线前进,当进入目的地的怪物到达一定数量后游戏会失败;当进入目的地的怪物没有到达指定数量且所有怪物都被击杀后游戏通关。使用Unit
2、y3d引擎来设计让UI、游戏地图的布置大幅简化。并通过使用拓展性强的类,使得开发者能快速添加新的怪物、防御塔等,提高开发效率的同时,还降低了游戏的开发成本。本文主要从选题背景与意义、可行性与需求分析、游戏设计与功能实现、测试等四个方面,按照制作的流程对本次设计进行论述,对开发的思路、实现以及实现过程中的主要问题都予以描述记录。关键词:游戏;塔防;Unity3d;PCDesign and Implementation of a virtual city building gameAbstractTower defense, that is, turret defense, also known
3、as TD, refers to a kind of strategic game that blocks the enemys attack in the game by building turrets or similar buildings on the map. Tower defense has a wide audience, simple game mode and strong playability. Today, tower defense is still one of the most popular download types in game applicatio
4、ns, such as the classic Plants vs. Zombies.This design uses the current popular cross platform game engine unity3d, and the programming language is C. In the game, players can build various defense towers on any blank land to attack different types of monsters. Monsters will advance according to the
5、 predetermined route. When the number of monsters entering the destination reaches a certain number, the game will fail. When the number of monsters entering the destination does not reach a specified number and all monsters are killed, the game will pass the customs. Use unity3d engine to design an
6、d simplify the layout of UI and game map. And through the use of expanding classes, developers can quickly add new monsters, defense towers, etc., improve development efficiency, but also reduce the development cost of the game.This paper selected topic background and the significance, feasibility a
7、nd requirement analysis, game design and function implementation, testing, and so on four aspects, according to the production process of this design is discussed, the development idea and the main problems in the process of implementation and the implementation of all records shall be described.Key
8、words: Virtual game;Unity3D game engine;The interactive of games41目 录1前言11.1论文结构安排11.2研究的目的与意义12 可行性研究32.1技术可行性32.2经济可行性32.3操作可行性42.4总结43 游戏概要设计53.1总体概述53.2游戏功能设计53.2.1地图与路线53.2.2敌人63.2.3防御塔63.2.4武器系统83.2.5特效设计83.2.6各种UI94 游戏具体实现114.1程序实现114.1.1建造管理模块114.1.2游戏进程管理模块114.1.3敌人模块124.1.4敌人生成器模块124.1.5游戏
9、菜单模块124.1.6可建造地块模块134.1.7防御塔模块134.1.8防御塔数据模块134.1.9游戏视角控制模块144.1.10敌人进攻波次模块144.1.8敌人行进路线模块145 测试145.1交互界面145.2游戏过程155.3测试总结176 总结18参考文献19谢 辞20附 录201前言Unity,也称Unity3D,是近几年非常流行的一个3D游戏开发引擎,跨平台能力强,使用它开发的手机游戏数不胜数。8Unity3d是如今游戏开发过程中比较流行的虚拟现实和跨平台游戏开发的虚拟交互式引擎。这几年,不仅Web应用、移动设备的App应用等得到迅猛发展,而且软件开发模式及其管理也发生了较大
10、的变化。9Unity3d引擎为游戏开发者提供了易用的可视化编辑器、资源导入导出、动画与物理系统、光照与音效系统以及对多达21个平台的发布支持等等的功能。除此之外,在Unity3d从发布至今的多年发展中,网络上对于开发者提供的教材文档十分的丰富,官方的Asset Store里面也提供十分丰富多样的插件,由而多年来Unity3d引擎深受开发者的喜爱、逐步成为全球开发者普遍试用的交互式引擎。1.1论文结构安排本论文共有六章。结构安排如下:第一章:对游戏现状和发展前景、项目的研究目的和意义进行了简要介绍。第二章:对此项目的可行性分析,包括技术、经济、操作三个方面,并做出总结。第三章:对游戏的概要设计和
11、游戏的主要功能进行介绍。第四章:对游戏的类的详细阐述,介绍了游戏功能的具体实现,对游戏架构的各个部分与其相对于的代码部分进行分析。第五章:对游戏进行测试,包括测试的方法与测试的功能,并对此作出总结。第六章:总结本次项目的实现过程与体会。1.2研究的目的与意义随着智能化电子产品的普及,游戏产业已成为经济市场中增长速度最快的热点,近几年来,Android 平台游戏以及Web的网页游戏迅速发展,已经成为带动游戏产业发展的中坚力量。9知识经济的核心内容之一是创意经济,创意经济也是知识经济的重要表现形式,可以说,没有创意,就没有新经济。作为文化创意产业中重要的部分,游戏设计是商品生产与文化艺术创意的一次
12、碰撞下的产物,在中国的经济发展中,游戏产业占据着十分重要的的地位。截至2015年上半年,中国游戏市场实际销售收入达到605.1亿元人民币,同比增长21.9%。2国内的首款自主研发的3d游戏是在2003年,相对于美国最早的第一人称3d射击游戏重返德军总部晚了十年左右,虽然目前国内3d技术日益加强,但毕竟起步较晚,与国外存在着不小的差距,只有少数大型的互联网公司能够从设计理念出发并应用到开发制作上,其余大部分游戏公司和游戏开发者依旧使用国外的游戏引擎,比较出名的有:虚幻引擎、寒霜引擎以及Unity3d引擎,要想开发一款优秀的游戏,人工智能必不可少。1不过,随着智能化设备的快速普及,现阶段国内的游戏
13、市场竞争很激烈,尤其是移动端,自2017年国内移动游戏市场进入黄金时代以来,游戏APP从种类到数量皆呈现爆发式增长,玩家人数与日俱增,涵盖的玩家年龄段也越来越广。2可行性研究2.1技术可行性本设计基于Unity 3d引擎,采用C#开发脚本,C#是由Microsoft公司开发的一种面向对象的编程语言。作为使用.NET Framework的Windows和Web开发人员无可争议的首选语言,C#语言提供了Visual Basic的简单易用性,同时也提供了Java和C+语言的灵活性和强大功能。4目前比较流行的开发引擎有Unity 3d、Cocos 2d-x、Unreal Engine 3等。虚幻3引擎
14、具有高优先级的动态演示管道和其他演示效果,但对多核CPU的支持很差,而且大多数插件都必须付费,而且国内这方面的学习资源也较少,这对学生个人开发群体来说不是很合适。但是Cocos 2d-x是为2T游戏开发的游戏引擎,不适合这种设计。与前两个相比,Unity3d在技术支持和技术可见性方面更适合像作者这样的学生开发人员。自从2012年Unity正式进入中国市场以来,中国越来越多的业内知名企业开始将选择Unity引擎开发作为其移动端战略部署的重要组成部分,使用Unity开发的诸多游戏都在市场上大方异彩。6Unity3d是一个综合性的游戏开发工具,用于创建交互式多媒体内容,如3D视频、视频、实时3D动画
15、等。同时,unity3d拥有免费的开发资源和免费的强大插件,非常适合常用的3D类应用。如果你正在为寻找合适的开发工具而焦头烂额时,不妨尝试一下Unity3D这个引擎。如果需要制作2D/3D的游戏产品,那么它是一个不可多得的游戏引擎工具;如果需要制作AAA级画质的数字交互产品,那么它可以为你提供高效优质的渲染效果。5从上可以看出,unity3d加入可视化引擎视图为初级的开发者提供了很大的方便,由于其能够将项目发布于多平台,它使开发者能够更加关注游戏技术的研究,而不是代码平台兼容性上需要时间问题的问题。综上所述,本设计基于一个使用C#脚本开发的unity3d引擎,在技术上是可行的。2.2经济可行性
16、此次塔防游戏设计是单机游戏,开发引擎使用的是Unity3d,使用的是免费的个人版,将游戏打包至PC或手机端上即可游玩。此次设计的开发是独立开发,开发人员是笔者,没有团队上的开销,游戏所投入的成本很低,主要集中在游戏资源(如模型、材质)的收集以及游戏本体的开发。Unity是一款标准的商业游戏引擎,而商业引擎的主要特点有收费、封闭源码和功能强大。关于收费情况,Unity的使用费用非常昂贵,最便宜的普通版许可证也需要400美元,加强版本为1500美元。当然许可证的版本不同,引擎支持的功能也就截然不同。具有加强版许可证的引擎的很多强大功能是有普通版许可证的引擎所不具备的。但是从学习的角度来说,无须购买
17、许可证同样可以进行,因为许可证更大的用处在于游戏制作完成后的打包与发布,不购买许可证制作的游戏是无法发售的,不过,单就学习而言,我们完全无须购买许可证,选择免费的Unity即可。7综上所述,本次设计在经济上可行。2.3操作可行性此次塔防游戏在操作界面采用极简的风格,操作十分的简易明了,unity3d引擎为游戏界面的设计提供了良好的设计平台。游戏里所使用的图标如炮塔的图标皆取自炮塔本身使用的模型的贴图,在配合上与游戏界面风格相似的文本文字,游戏整体的风格是连贯一致的,玩家对游戏的操作仅仅只需点击或放大缩小,加上本次游戏规则采用传统塔防的游戏机制,因此玩家能够迅速掌握游戏要领,轻松便捷的畅游。综上
18、所述,本次设计在操作上可行。2.4总结本次塔防游戏的设计,在技术层面、经济层面以及操作层面三个层面上看,都具有高度可行性。Unity3D引擎给此次设计提供了技术层面的支持,C#语言是脚本功能运行的保障;单机小游戏的设计规模使得个人独立开发成为可能,开发成本很低,经济上没有太大问题;而简单的操作和极简的风格在如今电脑、智能机普及的当下掌握起来不过几分钟,经典的塔防模式也降低了游戏门槛和学习成本。综合以上论述表明,本次设计在基于Unity3D引擎下,使用C#脚本开发一款经典塔防类的游戏,是可行的。3游戏概要设计3.1总体概述游戏题材:经典塔防游戏游戏类别:策略类游戏游戏玩法:颜色不同的圆球形状的敌
19、人从地图的蓝色正方体中进入地图,经过预设的黑色道路行进,进入地图的粉色正方体(即目的地),玩家需要在这些敌人行进的路线附近建造各种类型的防御塔,用以攻击经过的敌人,在敌人进入粉色正方体前将敌人击杀。敌人有若干进攻波次,在每一波过后敌人都会变得更强,玩家也需要通过建造更多的防御塔或升级已有的防御塔来加强防御力。当进入粉色正方体的敌人到达一定数量后,游戏会失败。要想通关,玩家需顶住敌人的进攻,直到最后一波敌人被歼灭。3.2游戏功能设计本设计的主要功能包括:游戏地图与敌人的行进路线、各种各样的敌人以及敌人的生成器、各种防御塔、资金的显示以及各种特效。3.2.1地图与路线游戏地图的构成要素包括:可建造
20、地块、敌人的行进路线、敌人生成位置、敌人进攻目的地。图3.1游戏场景图此图显示的视角即为游戏内摄像机的位置,其中,白色方格为可建造地块,即防御塔建造的位置,黑色道路为敌人行进路线,蓝色正方体为敌人生成器,游戏内的敌人均从此处生成并以此为行进路线的起点,而红色正方体即为敌人行进的终点,当敌人到达此处时,游戏宣布失败。3.2.2敌人此次共设计了五种敌人,外形皆以圆球形状,以不同颜色分为普通型(红色)、速度型(橙色)、极速型(黄色)、加强型(绿色)、Boss(蓝色)。敌人最重要的属性,是敌人的血量、生成速度以及其行进速度。 图3.2各种类型的敌人示意图以普通型敌人为标准,速度型敌人在行进速度和生成速
21、度上有较强的提升,但同时弱化了它的生命值;而极速型敌人则更进一步的作此改变,因此,极速型敌人是游戏里行进速度最快、生成位置最密集的敌人,同时也是游戏里最脆弱的敌人,选用攻速快伤害低的机枪塔能对其进行有效的打击;而加强型敌人是敌人中的精英,在速度上只有较小的提升,但在血量上有极大的提升,与Boss不同的是,Boss只是单独出现,但加强型敌人是成群结对的,不过,其弱点于生成时间较慢,导致加强型敌人之间的间隔较大,阵型散乱,使用攻速慢伤害高的重炮塔,配合上能够造成减速效果的激光塔是打败加强型敌人的关键。Boss,游戏最后的敌人,打败它是游戏通关的关键。Boss的最大的特点就是其无与伦比的血量,但其行
22、进速度是敌人中最慢的,且只单一出现,因此只需集中火力,尽量多的建造重炮塔配合激光塔,少建造机枪塔,尽可能加大对其造成的伤害。打败Boss后,游戏宣布胜利。3.2.3防御塔此次设计中共有三种类型的防御塔,分别为机枪塔、重炮塔以及激光塔。防御塔的属性有:使用的武器系统、攻击伤害、攻击频率、子弹飞行速度、攻击范围、特殊效果。图3.3机枪塔示意图图3.4升级版机枪塔示意图 图3.5机枪塔购买图标机枪塔是游戏中最廉价的防御塔,使用的武器系统是炮弹系统,虽然伤害不高,但其攻击频率高、子弹飞行速度快的特点能够有效对付移动迅速且血量低的敌人,而其廉价的特点能使其被大量建造,弥补其伤害低、攻击范围小的缺陷,将其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 unity3d 游戏 设计 实现
限制150内