unity3d塔防游戏的设计与实现 大学论文 - 图文

更新时间:2023-11-29 18:58:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

江海职业技术学院

毕 毕业设计题目:学 生 学 号:学 生 姓 名:所在系 (部):专 业 及班级:指 导 教 师:完 成 日 期:

业 设 计

unity3D塔防游戏的设计与实现

141010155 踪训军 信息工程系

计算机1401 谭程宏

2017-02-10

I

摘 要 游戏,目前已经是最大众化的娱乐之一。Unity是这几年非常热门的

一种开发引擎之一。它具有非常强力的跨平台能力,其中还包含了图形、音频、物理系统、网络等多方面的引擎支持,是一个2D、3D游戏引擎套件和游戏开发工具,并且有一个非常强大的编辑器来整合这一切,因此被广大游戏开发者所喜爱。 本次毕业设计,围绕手机游戏开发的实现,利用Unity3D游戏开发工具,基于C#语言编写,开发制作一款手机游戏塔防游戏《突破重围》,并对项目需求及游戏的设计和具体实现进行分析。

关键词 塔防,手机游戏,Unity3D,Android

II

目录

第1章 绪论 .................................................................. 5 1.1论文结构安排 ........................................................................................................................ 5 1.2市场需求分析

................................................................................................................ 6

1.3项目的简介 ............................................................................................................................ 6 第2章 unity3D介绍 ....................................................................................................................... 6

2.1 Unity3D总体概述 ........................................................................................................ 6 2.2 Unity3D软件特色 ........................................................................................................ 7 第3章 游戏概要设计 ..................................................................................................................... 8 3.1整体游戏需求 ..................................................................................................................... 8

3.2游戏截图 ............................................................................................................................. 9 3.3 设计概要 ............................................................................................................................. 10 3.4游戏类图 .............................................................................................................................. 11 3.5游戏流程图 .......................................................................................................................... 12 3.6游戏主要功能设计 .............................................................................................................. 14 3.6.1开场插画 ........................................................................................................................ 14 3.6.2选关界面的效果 ............................................................................................................ 14 3.6.3模型动画的切换 ............................................................................................................ 14 3.6.4敌人的AI实现 .............................................................................................................. 15 3.6.5释放技能特效的实现 .................................................................................................... 17 3.6.6主角的行走路线 ............................................................................................................ 17 3.6.7游戏中的碰撞检测 ........................................................................................................ 18 第4章 游戏具体实现 ................................................................................................................... 18 4.1程序实现 .............................................................................................................................. 19 4.1.1 Emnimy ......................................................................................................................... 19 4.1.2 Player ......................................................................................................................... 20 4.1.3 GameControl ............................................................................................................... 21 4.1.4 Level ........................................................................................................................... 22 4.1.5 MainMenu ..................................................................................................................... 23

III

4.1.6 Moneydate ................................................................................................................... 24 4.1.7 SkillData ................................................................................................................... 25 4.1.8 SkillManger ............................................................................................................... 26 第5章 结 论 ................................................................................................................................. 29 参考文献 ......................................................................................................................................... 30 致 谢 ............................................................................................................................................. 30

IV

第1章 绪论

1.1论文结构安排 1。1节可以放在绪论的最后

本论文共有五章。结构安排如下:

第一章:对游戏开发架构的背景,及项目和对市场的需求分析进行了简要介绍。

第二章:unity3D介绍

第三章:《突破重围》游戏的概要设计和游戏主要功能设计的简介。

第四章:《突破重围》游戏类的详细实现,对游戏架构中各个部分涉及到的相关知识进行介绍,然后给出设计的思路,最后给出具体实现。

第五章:总结本次游戏的实现过程。 这个和你上面的目录对吗? 1.2市场需求分析 与意义

90年代初国外的3D游戏开始起步,第一部3D第一人称射击游戏是美国的卡马克的《重返德军总部》,最早3D游戏引擎由其开发的Doom引擎。国内3D游戏始于2003年,首款自主研发,目前,国内有了很多的研究在3D游戏上,但是由于国内3D技术起步较晚,技术方面想比外国还是有不小差距,从设计理念到开发制作,国内能有自主研发的3D游戏引擎的,只有屈指可数的互联网公司,大部分游戏公司和游戏开发者还在用国外大型游戏公司所开发的游戏引擎,如Unity3D,虚幻,寒霜。虽然国内今年出现许多优秀的游戏团队和游戏公司,开发了数款质量较高的3D游戏,例如《古剑奇谭》系列,《仙剑奇侠传》系列等,但是比起《模拟人生》,《魔兽世界》,《战地》系列等国际游戏大作仍有不可逾越的差距,这也使得国内玩家的财富大量流向国外。 随着移动设备的硬件日益强大,如手机的硬件相比于10年前电脑的配置还要强大,这样使用者在使用的时候,就会有大量应用的需求,目前来说,有两种主流的手机操作系统:Android和IOS,这两种操作系统之所以成为主

5

图2-5 游戏画面

3.3 设计概要 就是故事描述吗?如果是,请按我的要求和上面合并

在主场景(主画面)中,有4个按钮,分别是开始游戏、继续游戏、游戏说明、退出游戏,通过“开始游戏”按钮进入选关界面,按下按钮选择关卡后进入相应的场景中,通过“继续游戏”可以进入之前的关卡,“游戏说明”界面是介绍游戏的操作方法,在场景中按下“返回键”返回主菜单。

在各个难度场景中,进入场景前,会让玩家先选这一关的技能,每个技能在每个关卡中只能使用一次;技能的使用要花费水晶,玩家的水晶来自于场景收集或者通过关卡后的水晶奖励(过关得到的水晶量跟游戏时间成反比、跟玩家过关血量成正比)。玩家作为一名逃亡者,有着自己本身的血量,各种敌人有着自己的AI,当他们没有发现目标的时候,他们会在各自的领域巡逻。每个敌人都有一个巡逻盲区,玩家可以利用这些盲区来躲避敌人。当玩家进入敌人视野内,敌人会开火攻击玩家,当玩家血量减少到小于或者等于零的时候,玩家死亡,游戏结束;场景中会有一个发光点,只要玩家安全到达这个发光点,即算胜利,游戏过关,解锁下一个关卡。

11

3.4游戏类图 游戏类图是什么东西?

图3-1游戏类图

mainmenu类是游戏的界面管理类,实现游戏中界面的功能。而Loading类是游戏的加载类,使游戏能在玩家进入关卡前先加载。游戏中除了mainmenu类跟loading类2个类是单体类之外,其他类都有依赖关系。其中,Skilldate类和Emnimy类、Player类都依赖于SkillManger类,因为在SkillManger类中,要实现各种技能的作用,而技能涉及到的不仅是玩家,还有敌人,所以这2个类都跟SkillManger有依赖关系。至于Skilldate类,是用于表示每个技能的数据,所以也是依赖于SkillManger类。而SkillManger类与MoneyData类则依赖于GameControl类,游戏管理类是管理游戏的一个类,敌人的所有行为都在敌人类中完成,而玩家的大部分行为也在玩家类中完成,所以游戏管理类要做的就是及时存储游戏中产生的数据,以便以后需要的时候可以使用;还有就是管理玩家技能,在游戏开始时候,记录玩家选择的技能还有初始化玩家选择的技能。

3.5游戏流程图 你这个流程图不应该是在你设计的最前面吗?

而且莫名其妙一张图,什么承上启下的东西也没有?这是论文, 不是数学

12

图3-2游戏流程图

13

3.5游戏主要功能设计 3.6.1开场插画

现在很多游戏,特别是手机游戏都喜欢用插画来代替游戏一开始的开场动画,所以《突破重围》游戏中也是用插画作为游戏的开场动画。先导进一个一个UNITY的资源包叫做LeanTween,这个可以更好地实现简单动画的效果,例如平移、缩放。接着把准备做插画的若干张资源图放进同一个物体进行管理,然后给这个物体加碰撞盒,每次点击这个碰撞盒,都会移动一定的距离。具体的操作如下:

定义一个存放管理所有图片的空物体 Item;

然后给这个Item通过UIEventListener挂钩上点击函数

在点击函数里面实现的就是用LeanTween.moveLocalX移动这个物体

3.6.2选关界面的效果

界面主要是用NGUI里面的UIToggle组件以及Drag Scolleview,当关卡选中的情况下,通过OnTriggerEnter 改变原图的大小来实现。

3.6.3模型动画的切换

模型动画根据自己的需要先切割成自己想要的动画,然后逐段给动画起个名字,代码控制部分如下:

定义一个共有变量Emnimy_Animation 类型是Animation;

因为需要多次用到动画的切换,所以在这里把动画的切换写成一个方法,以便使用。

public void SetEmnimyAnimation(动画的名字,类型是string) {

Emnimy_Animation.CrossFade(动画的名字);

14

}

调用这个方法的时候只要你传进一个string类型的参数,这个参数必须是某段动画的名字,模型就会自动播放相对应的动画。

3.6.4敌人的AI实现

敌人的AI是该游戏的重点之一,AI的实现是用协程去完成的,具体的伪代码如下:

定义一个结构体emnimy 里面包含敌人的所有状态有Think, run, Attack, Die 4种。

定义4种状态的协程函数IEnumerator Attack(),IEnumerator SeeAround(),IEnumerator Move(),IEnumerator Die();

public IEnumerator Attack() {

改变敌人状态为Attack while (true) {

if(如果玩家不在攻击范围内) {

yield return 0; }

If(如果玩家没有在敌人视野内) {

改变敌人状态为思考

yield return StartCoroutine(GameStart()); }

播放攻击动画

设置敌人的朝向朝着玩家 玩家扣血 yield return 0;

15

本文来源:https://www.bwwdw.com/article/2lit.html

Top