联系我们

 

硕博咨询:82274534

 

专本咨询:84468591

 

微信咨询:essaykey

TEL:15012858052(深圳) 

 

信箱: 82274534@qq.com 

 

请以前的客户主动联系QQ和信箱以方便继续为您服务。

 

代写毕业论文网介绍

本网站是由硕士、博士和高校教师组成的专业代写团队所创办的平台。主要为在校本科生、专科生、硕士生、在 职研究生、单位公司人员、留学生等提供各种专业代写毕业论文服务的网站。提供的写作服务包括:代写MBA论文、代写MPA论文、代写EMBA论文、代写硕 士论文、代写本科毕业论文、代写专科毕业论文、代写研究生论文、代写留学生毕业论文、代写英语论文等等。作为八年的品牌,已经为几万名毕业生服务,让他们 顺利通过了毕业论文的考核。本站负责提纲、开题报告、文献综述以及毕业论文的写作,并提供不限次数的修改服务。所代写MBA论文价格、代写MPA论文费 用、代写EMBA论文价钱都是最实惠的,欢迎咨询!

 

最新加入代写论文写手

YM,机电教授,YMT,日本千叶博士,教授
海豚,英国留学管理博士学历
LB,经济管理博士英国交流
maomao,经济硕士管理博士
陈先生,湖南计算机博士,7年教育经验。硕士研究生导师。
BJX,上海交大计算机博士,发表40多篇核心学术论文,
电子计算机类博士,3人组合
LLBZY,5人,工程,园林,农业生态中科院博士,参与国家重点项目研究
浙大,管理硕士,英语专业硕士
y,男,法学硕士
中国XX大学,会计硕士,英语硕士,管理硕士 各一名
熊,浙江,管理学博士,经济学硕士,擅长管理,金融、宏观经济、区域经济
英语专业硕士,英语,翻译论文
11,硕士,自由撰稿,编辑,经济、法律、品牌
文,硕士,擅长企业管理,行政管理, MBA论文
兰大的硕士,西哲,社科
刘先生,擅长写作金属材料领域的专业论文
澳大利亚摩尔本皇家理工大学的MASTER
医学主治医师,某医学杂志编辑
剑,38,教育学硕士
某核心医学编辑
某中学杂志编辑
R,管理财会硕士,研究员
武汉工程博士,男,土木,结构,水电道路工程等
土木工程硕士,男,35岁,擅长工科土木工程,房建,园林,市政论文
左先生,武大MBA,擅长经济,管理,商业类论文
陈先生,大学本科副教授,英语专业硕士
陆先生,中科院基础医学研究生
杨先生,27岁, 武汉大学硕士,营销管理专业,武汉社科研究员,中国策划研究院协会会员,管理顾问公司总监。擅长经济管理、市场调查、行业研究报告。服务客户有中国银行,中银保险,香港铜锣湾百货等著名企业。
林先生,28,信息专业硕士,计算机研究室主任,国家高级电子商务培训讲师。
周先生,31,国内著名DVD品牌技术总监,重点高校讲师,期间指导学生获得全国电子大赛二等奖,指导老师二等奖。擅长电子类论文。
某艺术工作室,硕士学历,擅长现代艺术美术理论研究及创作。
刘先生,某著名医学院硕士研究生,某著名医学院博士研究生,专业为妇产科护理,以多产,高速,高质量著称。
kerry,北京某著名大学教师,擅长教育类论文。

首页 > 代写论文 > 计算机论文 >

unity3D引擎下3D塔防游戏的设计与实现

时间:2019-09-27

  摘要:塔防游戏作为一个在休闲游戏爱好人群中经久不衰的玩法类别, 凭借多样的玩法与超高的游戏体验始终保有相当数量的忠实玩家。文章根据游戏的开发思路, 使用unity3D引擎开发了一款塔防游戏。本游戏主要分为三个模块, 一是系统设置, 包括游戏的各种设置, 二是防御塔的功能设计, 包括对防御塔的操作以及防御塔的攻击, 三是敌人的功能设计, 包括敌人的各种行为设计。结果表明敌人与防御塔的属性设置很合理, 游戏体验良好。

  关键词:unity3D; 塔防; 游戏开发;

  Abstract:Due to its variety of playing methods and the super experience, the tower defense game, as an unduring playing class in the leisure game lover groups, has been always retaining a considerable number of loyal players. According to game concept, a tower defense game, which is based on C#, is designed and realized in this paper. This game system mainly consists of three modules. The first one is system settings, including the various settings of the game. The second one is the function design of the defense tower, including the operation and attack of the defense tower. The third part is the function design of the enemy, including the various behaviors designs of enemies. The result shows that the properties of enemies and towers are reasonable and the game experience is great.

  Keyword:unity3D; tower defence; game development;

  引言

  近年来, 迅速发展的手机游戏、网页游戏和PC游戏已经成为游戏行业主流。随着玩家对游戏的沉浸感和体验感的要求逐渐增加, 3D游戏成了当前游戏发展的主要热点[1]。unity3D游戏引擎为开发者提供了创建高质量3D游戏和真实视觉效果的核心技术, 为3D游戏的开发提供了强大的推动力[2]。

  塔防, 炮塔防御 (Tower Defence, TD) 的简称。作为一个经典的休闲游戏类别, 塔防游戏从来没有过成为真正的主流游戏, 但却始终都保有相当数量的忠实玩家, 塔防游戏从产生到现在20余年, 用不温不火来形容完全不为过。不过, 随着现在整个游戏行业在玩法上的细化与创新, 塔防类游戏也迎来了又一个春天, 一些玩法和类别更多样的塔防游戏开始问世———如手游市场上的《保卫萝卜》, 客户端网游领域的《植物大战僵尸》等等。而塔防这一经典的游戏玩法类型或许将在这一趋势当中迎来前所未有的发展机遇。本文使用unity3D引擎开发的这款3D塔防游戏内容丰富, 游戏体验良好, 这类策略游戏不仅可以使玩家娱乐, 还能使玩家的智力得到很好的提升。

  1 游戏分析

  此款塔防游戏的玩法规则是地图的一端自动出兵攻击地图的另一端, 在敌人行动路线的两边玩家可按照自己的思路放置防御塔来阻止敌人的攻击, 一旦防御塔的放置位置不对, 或者所选择的防御塔攻击速度不够快, 就阻止不了敌人的攻击, 那么敌人就很容易攻入玩家大本营, 玩家便输了。所以要求这类策略游戏要给玩家尽量大的个人发挥空间[3]。要达到这一点, 可以从多方面着手:1.地图;2.防御塔;3.敌人;4.玩家血量;5.游戏金币。下面分别介绍。

  地图:游戏设计要控制敌人从出生点开始, 按照事先设计好的路线到达终点, 路线越不固定越多样化越好, 这就要求设计一个更为合理的敌人路线, 来改变敌人原有的最短路线, 或者把敌人到达终点的路线变得更长, 为防御塔的攻击提供更长的时间, 从而达到消灭敌人的目的。

  防御塔:可以设置不同的防御塔来供玩家选用, 防御塔的不同可以从攻击速度、攻击范围, 还有购买和升级防御塔所消耗的游戏金币、卖掉防御塔和所获得的游戏金币的不同而定。

  敌人:从敌人的角度看, 在设计敌人的时候可以根据敌人的种类, 移动速度、攻击力、数量、生命值以及敌人被击杀后玩家可以获得金币数量的不同而定, 一般来说, 敌人所携带的金币数量与士兵的生命值是成正比的, 敌人等级越高, 生命值就越高, 同样, 攻击力、攻击速度、移动速度也就越高。

  玩家血量:即当玩家设置防御塔, 无法阻击敌人到达目的地时, 有多少敌人到达目的地, 攻击力是多少, 玩家血量就会减少多少, 直到零为止, 此时玩家就输了, 因此玩家血量的多少可根据游戏的难易程度而设置相应的数量。

  游戏金币:游戏中的金币, 是支撑玩家继续游戏的源泉, 金币越多, 完成游戏的速度就越快, 游戏就越简单;反之, 游戏就越难, 因此, 合理设置游戏中金币的数量是非常重要的。设置金币是要从以下几个方面入手, 游戏初始金币, 击杀敌人获得的金币, 拆除防御塔获得的金币, 建造防御塔损失的金币和升级防御塔损失的金币。

  图1 游戏的功能结构图



  

  2 游戏设计

  本次设计主要体现在防御塔的功能、敌人的功能、防御塔与敌人的交互以及各种UI界面的设计上。游戏开始时通过一段动画进入场景, 在开始场景主画面中有5个按钮, 分别是开始游戏、游戏难度、音量设置、游戏介绍和退出游戏, 通过点击不同的按钮实现相应的功能。游戏开始时进入游戏场景, 场景中有玩家血量的显示、玩家金币的显示和暂停按钮。点击暂停按钮弹出暂停界面, 暂停界面中有继续游戏, 重新开始, 音量调节和退出游戏按钮。游戏过程中敌人会一直生成并按照路线移动, 此时玩家需要建造防御塔来攻击敌人, 所有敌人都死亡, 游戏胜利, 弹出胜利界面;如果有敌人进入玩家大本营, 并且使玩家总血量降为零, 游戏结束, 弹出失败界面。

  整个游戏分成系统、防御塔、敌人三大模块。每个模块进一步又可以细分为若干个子模块。塔防游戏的功能结构图如图1所示。

  3 游戏实现

  3.1 防御塔

  防御塔在塔防游戏中的作用是为了阻止敌人的入侵, 其属性有攻击速度、价值和攻击范围。攻击速度越快击杀敌人的速度越快, 攻击速度会根据塔的类型来决定, 本次设计共有三种防御塔, 分为1、2、3三种等级。首先设出防御塔的摆放位置, 添加一些unity3D自带的圆柱体, 调整大小后放置在地图的合适位置上, 通过点击圆柱体就可以放置防御塔了, 因为圆柱体的作用只是为了触发事件, 所以需要关掉圆柱体的Mesh Renderer组件, 这样在游戏过程中就不会看见这些圆柱体了。

  游戏中, 通过点击塔的底座来建立防御塔。当玩家拥有的金币数量大于建立防御塔花费的金币并且判定点击的是防御塔的标签时, 系统通过Resources.Load<Game Object> (“Prefabs2/Arrowtower1”) 动态加载防御塔的模型, 并删除掉防御塔的底座。

  3.2 敌人

  敌人生成后, 加入到enemy List列表, 再设计出敌人在地图上行走的路线, 使用transform.Look At () 方法使敌人的每一帧运动都是面朝着目标点的, 然后按照自己的属性获取移动速度, 再使用移动方法transform.Translate () 来使敌人移动, 在移动的过程中, 为防止敌人一直朝着目标点的反向运动不停止, 会有一个距离限制, 当敌人距离目标点小于0.1时会停下来。实现方法是创建出一些空物体点作为敌人移动的目标, 按地图位置摆放好, 其中enemyposition和monserposition是敌人的生成点, homeposition是玩家大本营。

  因为游戏目的是让敌人一直运动直到死亡或是到终点也就是玩家大本营, 所以要让敌人继续向着下一个目标点运动。当敌人距离上一个目标点位置小于等于0.1时, 就可以让敌人朝着下一个目标点移动, 方法与上一个目标点一样, 这样敌人就可以朝着目的地一直移动了。

  3.3 玩家

  玩家主要是对属性的设置, 包括血量和金币。玩家的总血量是游戏的一个重要的属性, 玩家游戏的目的就是要在游戏结束前, 保证自己的血量大于0, 就可以获得游戏的胜利。在游戏过程中, 如果有敌人进入玩家大本营, 玩家就会损失一定的血量, 血量只可以减少, 不可以增加。

  金币是游戏中的货币, 是建设防御塔的前提, 在游戏中可以通过击杀敌人来获得相应的金币, 还可以通过拆除防御塔来获得金币。当在游戏中建立防御塔时, 金币会相应的减少, 所以合理规划金币的使用是游戏获胜的关键。

  3.4 UI

  在unity3D中设计UI有3种方法:一种是NGUI, 通过插件创建;一种是UGUI, 通过游戏自带的组件, 一种是OnGUI, 在unity3D的生命周期OnGUI中编写代码。本次设计使用OnGUI。根据游戏的需求需要设计5个UI界面, 分别是游戏运行时的初始菜单界面、游戏运行时的界面、暂停界面、游戏胜利界面和游戏失败界面。限于篇幅, 只给出游戏开始和暂停界面。

  图2 游戏开始界面

  

  4 结束语

  图3 游戏暂停界面

  

  本文使用unity3D引擎开发了一款内容丰富的塔防游戏, 实现的主要功能有敌人的生成、敌人的移动、创建防御塔、防御塔的攻击。结果表明游戏属性设置合理, 敌人与防御塔的交互良好, 玩家的游戏体验良好, 可玩性很高。

  参考文献

  [1]卢金浩, 张帅, 伍传敏.基于unity3D三维游戏场景与AI系统的设计与实现[J].三明学院学报, 2013, 30 (6) :31-35.
  [2]刘俊, 郭祖江.基于unity3D的塔防游戏设计与实现[J].科技传播, 2015 (5) :152-154.
  [3]张鹏飞, 江岸.基于Android系统的塔防类游戏开发[J].信息与电脑 (理论版) , 2014 (3) :47-50.
  [4]胡蓉.浅谈现代手机游戏制作[J].科技创新与应用, 2017 (17) :297.
  [5]赵明明, 王明时.基于用户体验的触屏手机游戏界面设计研究[J].科技创新与应用, 2012 (12) :50.
  [6]谈嗣徽, 温彦茹.关于手机游戏设计的研究--如何设计一款成功的手机游戏[J].科技创新与应用, 2015 (18) :9-10.

 

TAG标签: unity3D  游戏开发  


上一篇:企业云服务调配系统的设计研究
下一篇:广西大学园林专业植物查询网站建设探析