登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 计算机科学与技术 > 正文

基于Unity3D的塔防游戏设计与开发毕业论文

 2020-07-01 20:49:35  

摘 要

近年,计算机技术迅猛发展,不论是其处理性能还是应用范围都得到了极大的提升。与此同时,计算机游戏的发展也是紧随其后。现如今,游戏已经成为了人们生活中必不可少的存在,在闲暇之余很多人都会选择玩游戏来放松,而且在游戏里面可以体验到生活之中无法体验到的快感和乐趣[11]。正是因为计算机性能的极大提升,所以如今的游戏也越来越逼近真实。由于游戏市场的火热,所以对计算机游戏的设计以及开发也变得很有意义。俗话说,工欲善其事必先利其器,要设计开发一款游戏就要有一款好的游戏引擎。EA DICE的寒霜引擎,EPIC的虚幻引擎,Unity Technologies开发的Unity3D引擎等等都是如今比较著名的游戏引擎。其中Unity3D引擎是一个全面整合的专业游戏引擎,可以让用户轻松创建比如3D视频游戏、建筑的可视化、实时3D动画等类型互动内容。

本课题是做一个3D的简约像素风格的塔防类游戏,玩家通过对镜头的控制,在敌人到达目的地之前在敌人行进道路的两边建造炮塔来消灭敌人。在游戏整体的设计过程中会用到Unity3D的粒子系统,会用到状态机,也会用到碰撞检测,要求开发者要有较好的逻辑思维能力和较好的审美水平,也要对使用的游戏引擎有较为熟练的使用水平。开发出的游戏有一定的可玩性,可以当作玩家闲暇之余的娱乐,也可以拿来作为二次开发的模型,在此基础之上,做出更具有难度,拥有更多元素,可玩性和挑战性更高的游戏。所以,本课题的开发具有很好的学习研究意义。

关键词:游戏引擎 塔防游戏 Unity3D

Design and development of tower defense game based on Unity3D

Abstract

In recent years, the rapid development of computer technology has greatly improved its processing performance and application range. At the same time, the development of computer games is closely followed. Nowadays, the game has become an indispensable part of people's lives. In their spare time, many people choose to play games to relax, and in the game, they can experience the pleasure and fun that cannot be experienced in life. It is because of the tremendous increase in computer performance that today's games are getting closer and closer to reality. Due to the fiery gaming market, the design and development of computer games have also become significant. As the saying goes, if a worker wants to do good, he must first sharpen his tools. To design and develop a game, there must be a good game engine. The frost engine of EA DICE, the Epic Unreal Engine, the Unity3D engine developed by Unity Technologies, etc. are all now the most famous game engines. The Unity3D engine is a fully integrated professional game engine that allows users to easily create interactive content such as 3D video games, architectural visualizations, real-time 3D animations, and more.

The subject is to make a 3D simple pixel style tower defense game. The player can control the camera and destroy the enemy by building a turret on both sides of the enemy's path before the enemy reaches the destination. In the overall design process of the game, Unity3D's particle system will be used. State machines will be used. Collision detection will also be used. Developers are required to have good logical thinking skills and good aesthetic standards, but also to use. The game engine has a more skillful use level. The developed game has a certain degree of playability, which can be used as entertainment for the player's leisure time, or it can be used as a model for secondary development. Based on this, more difficult and more elements can be made available. Play more challenging and challenging games. Therefore, the development of this topic has a very good learning and research significance.

Keywords: Game engine; Tower defense game; Unity3D

目 录

摘要 I

Abstract II

第一章 绪 论 1

1.1开发背景介绍及意义 1

1.2国内外研究现状 1

1.3课题简介 2

第二章 Unity3D引擎的介绍 3

2.1多平台发布 3

2.2内置引擎 3

第三章 游戏的设计及开发 5

3.1游戏界面设计 5

3.2游戏具体的开发 8

3.2.1地图的创建 8

3.2.3创建敌人的行进路线 9

3.2.4控制游戏的视野 10

3.2.5创建敌人并控制敌人的移动 11

3.2.6敌人孵化器的创建 12

3.2.7炮塔的实例化 13

3.2.8控制炮塔攻击敌人 19

3.2.9炮塔的升级和拆除 24

3.2.10控制炮塔旋转朝向敌人攻击 26

第四章 创建特效和关卡的设置 27

4.1创建特效 27

4.1.1创建炮塔建造以及拆除时的特效 27

4.1.2创建炮弹碰撞到敌人时的特效 28

4.1.3创建敌人被消灭后的特效 28

4.1.4创建金钱不足的提示特效 29

4.1.5创建鼠标在Cube上的互动特效 31

4.2添加关卡 32

4.2.1新建关卡 32

4.2.2创建游戏胜利和失败的响应事件 32

第五章 开发过程遇到的问题及解决办法 35

5.1子弹发射异常 35

5.2敌人消灭后子弹不会跟着销毁 36

5.3敌人被消灭的时候可能出现的空指针错误 37

5.4修复部分Cube在鼠标指向的时候不变色的Bug 38

参考文献 40

致谢 42

第一章 绪 论

1.1开发背景介绍及意义

随着科技的高速发展,计算机的性能得到了质的飞跃,再加上互联网的广泛普及,计算机游戏成为了大部分人们日常消遣娱乐的主要活动方式[1][2][3]。《王者荣耀》 、《英雄联盟》 、《绝地求生》这些当下极其火热的游戏无一不证明着这一点。而制作游戏离不开游戏引擎,Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎[4]。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件[5]。其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、WebGL(需要HTML5)、Windows phone 8和Android平台[6]。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows的网页浏览[7]。它的网页播放器也被Mac 所支持。游戏引擎被区分为游戏创作者的框架,并作为游戏玩家的一段代码。一方面,游戏引擎是一组工具(包括底层库,用户界面编辑器和游戏多媒体管理工具)另一方面,游戏引擎是最终在设备上运行以将游戏提供给最终用户的一组软件和数据[8][9]。本次课题就是想通过主流市场游戏的形式来熟悉和了解Unity的相关技术操作,从而在未来能够在一切都向3D发展的大趋势下游刃有余[10]。

1.2国内外研究现状

如今海外的游戏市场主要以单机游戏为主,在游戏引擎上追求更加真实的效果,国内外引擎在技术上存在一定的差距。目前国内自主研发的游戏引擎还尚未成熟,主要体现在软硬件兼容性、资源占用率、渲染引擎以及粒子系统等诸多方面[11][12],不过也有部分由国产引擎制作的游戏取得成功的例子,也是证明了国内引擎并不是一无是处。国内游戏引擎弱于国外引擎的原因有很多,起步太晚,缺乏经验和实践,而这种引擎制作出来的游戏是经不起市场的考验的。90年代初国外的3D游戏就已经开始起步了,第一款真正意义上的3D FPS(第一人称射击游戏)是由id Software公司发行的《雷神之锤》[13]。而国内比较有知名度的3D游戏是《仙剑奇侠传》和《古剑奇谭》,但相较于育碧的《刺客信条》、EA的《极品飞车》系列等游戏大作,不管是从开发理念还是技术支持上都存在着不可逾越的鸿沟。国产的游戏卖点在于角色之间的感情发展以及整个游戏的剧本,所以玩家在玩的过程中,可玩性并不高。而最近由育碧最新发布的《刺客信条:起源》不仅有着游戏剧情,同时又带给玩家身临其境的游戏体验,超高清的游戏素材,极其逼真的游戏场景[14][15],这些都是国产游戏目前可望不可及的。

1.3课题简介

本次课题的目的是为了制作出一个3D的像素风格塔防类游戏,游戏一共有三个关卡,四种不同类型的敌人,各个敌人的行进速度以及血量不同,生成的数量也不相同。同时提供三种类型的炮塔,包括标准炮弹塔、导弹炮弹塔、激光塔,并且三种炮塔都可以进行升级,升级后的炮塔拥有更广的攻击范围和更强的攻击力。因为关卡地图较大,所以玩家需要通过键盘上的上下左右或者WSAD控制视角的前后左右移动,鼠标的滚轮来控制视角的上下移动[16]。

游戏开始,玩家需要在敌人到达目的地之前将敌人消灭,开局会提供一定量的金钱供玩家建造炮塔,升级炮塔也要花费一定的金钱,玩家要合理的在敌人的行进路线的两旁建造炮塔,合理运用金钱选择建造新的炮塔或者升级炮塔[17][18]。

第二章 Unity3D引擎的介绍

Unity3D这几年快速的崛起是因为其强大的设计能力能让开发者在短时间之内把想法具体转变成游戏开发工具,同一个开发环境,3D视觉化编辑,可观看每一个对象的详细设置,并及时地对每场游戏进行预览[19][20][21]。

2.1多平台发布

开发出的游戏成果可以同时在多个平台上发布:

相关图片展示:

您需要先支付 50元 才能查看全部内容!立即支付

微信号:bysjorg

Copyright © 2010-2022 毕业论文网 站点地图