1、上海大学毕业设计( 论文)1SHANGHAI UNIVERSITY毕业设计(论文)UNDERGRADUATE PROJECT (THESIS)题 目: 基于 Unity 的 2D 空战游戏的设计与开发学 院 上海电影学院专 业 影视艺术技术(数字媒体方向)学 号 学生姓名 指导教师 上海大学毕业设计( 论文)2起讫日期 目录摘要 .3Abstract .4第一章 绪论 .51.1 引言 .51.2 Unity3D 引擎 .51.2.1 Unity3D 引擎简介 .51.2.2 Unity3D 界面介绍 .61.3 Unity3D 现状分析 .81.4 本次课题的研究意义及价值 .91.5 本章
2、小结 .10第二章 游戏设计 .112.1 游戏需求分析 .112.2 游戏机制概述 .112.3 游戏特色 .122.4 游戏场景、角色及交互设计 .122.4.1 游戏的场景设计 .122.4.2 游戏的角色设计 .122.4.3 游戏的交互设计 .132.5 游戏功能 .132.6 本章小结 .13第三章 游戏功能实现 .143.1 场景的搭建 .143.2 飞机的控制 .153.3 碰撞检测 .163.4 游戏规则实现 .183.5.用户图形界面 .193.5.1 NGUI 介绍 .193.5.2 游戏场景中 UI 界面 .213.6 游戏音效 .213.7 本章小结 .22第四章 游
3、戏展示 .234.1 游戏开始和结束界面 .234.2 游戏画面 .24第五章 展望与总结 .26参考文献 .29上海大学毕业设计( 论文)3摘要在过去的几年中,中国游戏产业经历了一场深刻的变革。Unity 引擎凭借其高效的功能进入了人们的视野。本文介绍的便是一个基于 Unity3D 引擎设计并实现的 2D 竖版射击闯关类游戏Space Shooter 。该游戏基于 Unity3D 引擎,采用了大量用于 2D 游戏开发的技术。本文将从 Unity3D 的特征等方面开始,逐步解析游戏设计的思路及设计过程,并具体介绍游戏主要功能的实现方式。大致包括如下内容:1 游戏策划部分:场景设计、角色设计、游
4、戏机制设定、功能设计。2 游戏实现部分:场景搭建及角色控制、飞机的控制、交互、角色血量、 分数等常规 GUI 设计、音效等实现。3 评析部分:评析游戏开发过程中的各个技术点,并做适当阐述。关键字:Unity3D、游戏设计、游戏功能实现上海大学毕业设计( 论文)4AbstractDuring the past few years, chinese game industry has experienced a big reformation. Unity engine has come into peoples field of vision with its high efficiency.I
5、n this project, well introduce an adventure game (AVG) based on Unity engine which is called “Space Shooter”. The game bases on the popular Unity engine, containing a great deal of 2D gaming techniques.In this article, the author will start with the features of Unity engine and explain the whole pro
6、cess of how he designed and accomplished the game.Basically, the article is about : 1) Designing part of the game (Backgrounds, players, rules, function are included.).2) Programming part of the game.3) Short analysis of some methods used in the project. Key Words: Unity3D, Game Designing, Function
7、Analysis上海大学毕业设计( 论文)5第一章 绪论1.1 引言在过去的几年中,中国游戏产业经历了一场深刻的变革。在大型客户端游戏高速发展的时候,网页游戏突然崛起,虽然在画面和互动模式等方面都喝客户端相去甚远,但网页的发展速度却异常迅猛,玩家数量一路高速增长。但随着智能手机的普及大潮汹涌而来,越来越多的移动平台也加入了捞金的行列,包括 IOS、Android、Windows Phone 等平台的迅速兴起,在移动平台上运行高质量的 3D 游戏也成为了现实,从而将大量游戏玩家从 PC 端吸引到了移动端。游戏终端的日渐丰富增加了玩家的选择,但是也给游戏开发商造成了一定的困扰。由于各个平台的开发方
8、式截然不同,之间又存在着激烈的竞争,导致游戏开发商很难选择从哪个平台入手开发游戏,而把游戏从一个平台移植到另一个平台也往往需要很大的工作量。面对这样的局面,如何快速高效地开发出成熟的商业游戏也成为了游戏开发商面临的重要课题。Unity 引擎就是再这样的背景下逐渐走入了中国开发者的视野。1.2 Unity3D 引擎1.2.1 Unity3D 引擎简介Unity 是一款由 Unity Technologies 开发的高集成性综合游戏开发工具,它为玩家创造了轻松愉悦的设计环境,能够相对轻松地开发 3D 游戏、可视化系统以及立体交互等相关应用。该引擎于 2005 年 6 月以 Mac 系统为支撑而问世
9、,经历了一系列的版本更新,于 2009 年 3 月成功完成了 Windows 版本的发布,开始为开发者们提供跨平台的开发服务。可是此时的 Unity 却并未能够在两种平台之间建立出统一的场景编辑器,因此其使用也较为麻烦,受到较多的制约。这一问题直到 2010 年 3 月才得到了解决,而次年 3 月,Unity 正式宣布全面支持安卓平台的开发,这也成为了其风靡全球的起点。它打造了一个完美的游戏开发生态链,用户可以通过它轻松实现各种游戏创意和三维互动开发,创作出精彩的 2D 和 3D 游戏内容,然后一键部署到各种游戏平台上,并且还可以在 Asset Store 上分享和下载相关的游戏资源,大大方便
10、了用户的学习和交流。上海大学毕业设计( 论文)61.2.2 Unity3D 界面介绍(1)菜单栏菜单栏如图 1-1 所示,包括File、Edit、Assets、GameObject、Component、Window、Help。这些选项能实现 Unity3D 所有的功能。图 1-1 Unity 菜单栏 (2)Hierarchy 选项栏在这个选项框中,有场景所有的组成部分,通过 create 新的组建,来丰富我们的场景内容。一般想要选择一个组建,我们可以直接在此栏中双击,就可以选择该组建。图 1-2 Unity Hierarchy 选项栏(3)Project 选项栏我们可以通过菜单栏中 Asset
11、s - Import NewPackage 选项来导入我们所需要的素材,导入之后所有素材会保存在 Project 文件夹中,并且在 Project 选项栏中看到。上海大学毕业设计( 论文)7图 1-3 Unity Project 选项栏(4)Scene 和 Game 窗口Scene 窗口主要是用来搭建场景以及实现游戏功能的,用户可以在其中随意改动来完成自己想要的游戏效果。而 Game 是用来完成游戏测试及运行的窗口。上海大学毕业设计( 论文)8图 1-4 Unity 的 Scene 和 Game 窗口(5)inspector 窗口Inspector 窗口主要作用是改变游戏开发时,各个 obje
12、ct 的参数,其中包括添加物理特效、添加动画、添加贴图等。用户可以通过菜单-component 选项添加想要的效果,然后改出想要的参数即可。图 1-5 Unity Inspector 窗口1.3 Unity3D 现状分析截至 2014 年 8 月,Unity 已经占据了全球全功能游戏引擎市场 45%的份额,用户数量超过 330 万人,日活跃人数达到 60 万之多。全球有 2 亿多台计算机安装了 Unity Web Player,1/3 的 Facebook 玩家玩过 Unity 开发的网页游戏,包括 Microsoft、EA、Disney、Sony、NASA、Ubisoft 等公司都是它的用户
13、。在游戏开发领域,Unity 用其独特、强大的技术理念征服了全球众多的业界公司以及游戏开发者。一次开发,到处部署。用户可以在 Windows 和 Mac OS X 平台下进行游戏开发,游戏作品可以直接一键发布到所有主流的游戏平台而一般无须任何修改,发布的平台包括 Windows、Linux、Mac OS 上海大学毕业设计( 论文)9X、IOS、Android、Xbox360、PS3、WiiU 和 Web 等,开发者无需过多考虑平台之间的差异,只需把精力集中到制作高质量的游戏上即可。使用 Unity 可以开发几乎任何类型的游戏,例如多人在线游戏、第一人射击游戏、赛车游戏、实时策略游戏以及角色扮演
14、类游戏等等。目前在移动平台游戏开发领域,Unity 已经是举足轻重的游戏引擎之一。根据苹果公司 2012 年的一份报告,在 App Store 中 55%的 3D 游戏都是使用 Unity 开发的,而Android 的市场应该比苹果更大。另外根据外国媒体“Game Developer Magazine”(游戏开发者杂志)的一份调查显示,在移动游戏领域,53.1%的开发者正在使用 Unity 进行开发,同时在游戏引擎里哪种功能最重要的问卷中,“快速开发”排在了首位,很多用户认为 Unity 易学易用,能够快速实现他们的游戏构想。Unity 开发的游戏除了数量上占绝对优势外,也不乏非常成功的大作,
15、例如王者之剑(The Legend of King)、神庙逃亡 2(Temple Run 2)、武士 2:复仇(Samurai II:Vengeance)等。除了游戏开发领域,Unity 引擎还被广泛运用于航空航天、军事国防、工业仿真、教育培训、医学模拟、建筑漫游等领域,一般统称之为 Serious Game(严肃游戏)。在严肃游戏领域,Unity 在很多方面具有非常明显的优势,例如完备的引擎功能、高效的工作流程、更逼真的画面效果、跨平台发布以及丰富的第三方插件等等,这使得 Unity 在严肃游戏领域也广受欢迎与关注。例如:NASA 的火星探测车模拟、NOAA 跨平台“大数据”可视化工具、Cl
16、iniSpace医疗模拟培训平台等。1.4 本次课题的研究意义及价值在 3D 游戏占领着我国巨大份额的今天,我们可以发现有越来越多的经典2D 作品被移植到了移动端。网易和腾讯作为移动端游戏行业领先的两大巨头,都先后将给无数人童年带来美好回忆的梦幻西游和曾经风靡一时的冒险岛搬上了移动端的舞台,而且玩家人数与日俱增。这让我意识到游戏不仅可以在画面、操作上吸引玩家,更深层次的是玩家对经典游戏的情怀。所以我选择的这次课题是基于 Unity 引擎对 2D 游戏进行开发,希望可以将那些经典的游戏改进、开发。首先这可以对我在本科学习期间的知识做一次总结和展示,其次可以更好地学习和运用 Unity 引擎,对未来走向社会进入游戏公司进行游戏开发打下铺垫,意义不言而喻。上海大学毕业设计( 论文)101.5 本章小结本章节通过各类数据和调查,详细介绍了 Unity 引擎的发展历程并对该引擎目前的市场效应进行了深度的调查。与此同时,本章内容作为绪论性的内容,亦提出了本次毕业设计对于游戏的原始定位:以完整的游戏体验为核心,抛弃过度精细的美术体验,努力创造休闲性。