ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:3.22MB ,
资源ID:1373502      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1373502.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Unity3d的潜行游戏开发.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于Unity3d的潜行游戏开发.docx

1、基于Unity3d的潜行游戏开发基于Unity3d的潜行游戏开发 毕业设计论文课题名称基于Unity3d的潜行游戏开发系 部计算机工程系专 业计算机科学与技术班 级T1123-2学 号20110230204姓 名杨吉乾指导教师吴文欢2015年 5 月 20 日摘 要随着计算机技术的不断发展,游戏制作也慢慢成为社会上不可或缺的一部分,游戏一方面能够给玩家带来生活上的放松,另一方面也是对现实中某些场景的夸张和放大,各种各样的游戏能给玩家带来不同体验,深受广大群众的喜爱,市场需求量很大,因此对游戏的开发和研究也显得很有意义。而在一系列开发引擎中,Unity3D游戏引擎主要用来制作3D游戏,能够给玩家

2、带来很真实的感受和非常不错的游戏体验,与此同时也能做出效果很好的UI界面,学好Unity3D在未来无论是3D网页的开发还是虚拟现实都会起来不可估量的作用,而本次课题就将通过Unity3D做出一个效果不错的游戏。本次课题做一个潜行类游戏,主角需要避开敌人、红外线、摄像头的检测,拿到钥匙到达指定目的地,就像军事行动深入敌后。在整个游戏设计过程中会用到一些数学知识,会用到Mecanim动画系统,会用到状态机,会用到自动导航系统,也要求设计者有很强的逻辑思维和一定的审美标准,也需要对游戏引擎有较为熟练的使用能力。而在界面的搭建上又需要用到UI知识,懂得如何通过视觉魔术让3D模型显示在2D界面,又能让玩

3、家从2D界面感受3D模型的3D效果,对设计者来说是具有一定的挑战和锻炼意义。开发的游戏有一定的可玩性,可以满足很多玩家的娱乐需求,也可以用来当作二次开发的模型,做出难度更高、涉及元素更多元化、更复杂的市场游戏,因此,本次课题的研发不仅具有学习研究意义,也有一定的市场价值。关键词:Unity3D游戏;潜行游戏开发;Unity3D技术应用 第一章 绪 论1.1 开发背景及意义随着计算机的不断普及,各种各样的应用也如雨后春笋层出不穷,而伴随着人们生活水平的日益提高,游戏也变成了人们生活中不可或缺的调味品。做游戏自然离不开开发引擎,Unity是由Unity Technologies开发的一个让玩家轻松

4、创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine,Virtools或Torque Game Builder等利用交互的图形化开发环境为首要方式的软件,其编辑器运行在Windows和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、Windows Phone 8和Android平台。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows网页浏览。它的网页播放器也被Mac widgets所支持。除

5、此之外,Unity在虚拟现实中也可以得到广泛应用,本次课题就是想通过主流市场游戏的形式来熟悉和了解Unity的相关技术操作,从而在未来能够在一切都向3D发展的大趋势下游刃有余。1.2国内外研究现状90年代初国外的3D游戏就已经开始起步了,第一部3D第一人称射击游戏是美国的卡马克的重返德军总部。国内3D游戏则起始于2003年,相较于国外的3D游戏开发起步要晚了很多,虽然国内大的游戏公司和团队也开发出了自己的引擎,做出了古剑奇谭系列,仙剑奇侠传系列的游戏,但相比较国外的魔兽世界、模拟人生等国际游戏大作,无论是从游戏开发理念上还是技术支持上都还有不可逾越的差距,导致大量的财富资金流向国外。而随着时间

6、的推移,手机也越来越智能化,现在的手机可以说比十几年前的电脑更加强大,也越来越多的应用出现在了手机上,游戏也是不可或缺的一部分,但是不同语言开发工具开发的产品想要移植到手机上需要花费巨大的代价,成本太高,操作很复杂,国外的一款游戏引擎完美的解决了这个问题,那就是Unity3D。对于Unity3D,国内对其的研究还处于起步阶段,所以我们认真的学习国外的优秀游戏引擎,熟悉其操作,对以后自主研究符合自身需求的引擎有很大的参考价值。1.3本课题简介本课题开发一个潜行类的游戏,其中游戏主角将小心的潜入敌人的大本营,通过敏捷的身手,机智的头脑找到所有的电脑控制台关闭所有的激光红外线,在行进过程中需要躲避所

7、有的摄像头检测,尽可能的避免机器人的发现,在被发现后能逃过所有机器人的追捕,最终拿到钥匙进入电梯后从容离开。在游戏开始会有关于游戏的操作控制说明,也可以选择不同的关卡。进入游戏后,机器人会进行自主巡逻,主角需要合理的利用潜行,避免被机器人听到脚步声后前来追击,合理的利用地形是制胜的关键,请注意不要碰到红外线,一旦玩家被发现,所有巡逻机器人会前来对你进行围剿,这个时候就将是显示你高超的智商的时刻,冷静、沉着的应对,找到合适的方法,玩家也可以躲避追捕化险为夷。第二章 Unity3D游戏引擎的介绍2.1 API接口API是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例

8、程的能力,而又无需访问源码,或理解内部工作机制的细节。Unity3D就有一套自己的API函数库,通过这些API函数,开发人员可以很方便的实现项目的初始化,功能模块的每帧调用,如何进行触发检测并进行触发事件的响应,如何判断是否进入触发区,是否在触发区,是否离开触发区,如何实现拖动事件的响应等等。2.2.物理引擎任何一个游戏的设计都必须有其物体特性的合理性,这样才能显得真实可信,在Unity3D中为开发人员提供了大量的组件,可以对对象进行渲染,颜色的透明度、法线贴图、平行光、点光源、图片、文字、声音、动画、材质等一系列组件可以让人产生很逼真的视觉效果,而在物理特性上添加的刚体、碰撞器等组件,可以实

9、现对象受到重力、摩擦力、空气阻力等自然物理特性的影响,而爬坡的坡度设定,碰撞后的一切物理变化,逼真的体验让你觉得这就是一个现实中的物体。可以说Unity引擎就是一个组件编程的引擎,整个开发过程就是一个从无到有的组件添加,对象的物理特性Unity一般都封装好了,只需要找到合适的组件进行添加,合理控制其属性即可,而行为特性就是脚本,通过代码的逻辑操作进而实现对象的一系列活动事件。第三章 游戏的主界面设计 当一进入游戏,就将会跳转到开始界面,在该界面中你可以看到游戏主角的一个静止状态的动画,上面写有游戏名称,在右上方有一个游戏的标志,左下方的是声音选项按钮,点击后会进入声音面板。在开始界面里可以进行

10、鼠标的拖动,用来实现不同的几个界面的滑动效果,图3.2即为游戏的说明界面,在里面描绘了主角和机器人在四种各不同场景下会出现的情形,图3.3则是告诉你游戏如何进行控制,又如何取得胜利,图3.4则是关卡选择界面,可以选择不同的关卡。3.1 界面总体效果整个游戏界面用的是UGUI技术,在整个开发过程中会用到panel组件(作为容器存在,用来存放其它组件,并可添加图片当作背景存在),image组件(用来添加图片,可以用作logo或者按钮等的背景),button组件(作为按钮存在,在其上可以添加点击事件),text组件(用来显示文本信息),slider组件(是一个滑动条,滑动条有一个数值,通过滑动事件同

11、步该数值可以控制音量大小,也可以控制主角血量)。 3.1开始界面 3.2场景说明界面 3.3游戏控制界面 3.4关卡选择界面3.5声音控制界面3.1 游戏开始界面当玩家开始重新玩一次游戏时,会进入游戏开始界面,如图所示: 实现游戏开始界面的主要步骤为:1.首先在Hierarchy面板建立一个Panel,用来作为对象的载体,给该面板拖拽一个Sprite图片,注意一般图片的类型为texture,选中该图片,更改Texture Type的类型变成Sprite即可,如图3.6。3.6 图片属性2.在该面板内添加一个文本组件,在文本域写上标题Stealth,调整字体大小颜色位置字体等信息,把文本框拖到合

12、适的位置。3.在界面右上方添加一个图片组件,然后拖一个合适的图片到该组件作为Logo,注意调整锚点位置,方便屏幕自适应,如图3.7。 3.7 锚点图4.在左下方添加一个Button控件,在其背景中拖动一个合适的背景图片进去。然后创建一个空对象,用来挂载面板控制脚本,脚本主要实现的是对声音面板动画状态机里面的标志位进行修改,实现在不同条件下不同动画的播放,这里我将通过两个函数,分别对动画状态机里面的标志位进行不同修改来实现不同动画的状态转换,当状态机里面标志位“DisplayAudioSetting”为真的时候就会播放声音面板的显示动画,为假的时候就会播放隐藏动画。在图3.8所示面板添加事件,然

13、后把该对象拖进去即可产生按钮事件,点击后会调用对应的函数进行事件的响应。 3.8 Button点击事件图5.添加一个主角,拖动主角模型到合适的位置,在Project面板中给主角添加一个状态机,Create-Animator Controller,然后把主角的静止动画添加进去,如图3.9。在主角的对象上添加一个Aniator组件,然后把状态机拖进去,运行即可播放主角静止动画。 3.9 主角静止状态机3.2 声音控制界面 1.添加一个Panel组件作为各组件的载体,给其添加一个sprite图片作为panel的背景存在。2.添加2个text组件,用来显示文字,分别写上音效、音量,将其放置到合适位置,

14、调整锚点位置。3.添加两个slider组件,用来控制声音的大小,在其子对象background上改变颜色为黑色,添加一个空对象用来挂载声音文件,命名AudioController,在其上添加2个声音组件AudioSource,把对应的声音文件拖放进去,然后添加一个AudioListener,用来监听场景中的声音,添加一个脚本,用来控制声音的大小,在控制过程中实现将滑动条的数值实时更新赋值给声音组件声音大小的数值,声音组件的大小值为零到一,属于百分比,滑动范围同样设置为零到一,然后调用Update函数,此函数每帧都会执行,一秒大约执行60帧,基本可以满足大部分应用实现实时更新效果,如此即可满足声

15、音大小和滑动比例一致。4.添加一个Button组件,用来控制声音面板的隐藏,选择声音面板,点击Window-Animation,然后出现3.10所示图,该面板是用来自行制作动画效果的,可以通过设置在不同帧的时候对象的位置、旋转等信息来进行录制后连续播放,实现放电影一样的效果,在该面板中设置两个帧动画,调节该面板的位置,实现效果一个为隐藏(把面板拖到摄像机视野外),一个为显示(把面板拖到摄像机视野内),在声音面板上添加Animator组件并把该动画放进去,在Button上添加点击事件,监测到点击后会调用相关函数控制状态机中标志位的值,进而改变状态实现显示或者隐藏,如图3.11. 3.10 声音面板帧动画设置图 3.11 Button点击事件图3.3 场景说明界面1.在左上方添加3D模型,一个为机器人,一个为主角,调整好位置放置,给主角添加动画状态机,将其跑动动画放入,然后给主角添加Animator组件,拖入该动画状态机,注意查看该动画,需要修改部分属性,固定跑动使其不产生位移,如图3.12。在其下方合适位置添加text组件,附上文字说明。3.12 Run动画设置2.在其右上方添加模型,并给主角添加上潜行动画,具体方式可参照跑动设置,在其下方添加文件说明。3.在其左下方添加模型,同时给主角和机器人添加跑动动画,并附上文字说明。4.在其右下方添加模型,给机器人添

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1