基于Unity3d的动作角色扮演类游戏的设计与实现.doc
《基于Unity3d的动作角色扮演类游戏的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于Unity3d的动作角色扮演类游戏的设计与实现.doc(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、广东东软学院本科毕业设计(论文)摘要随着中国游戏以及互联网科技的发展,游戏越来越受到人们的欢迎,不管是手机游戏,电脑游戏,还是主机游戏,都在中国市场中占有很大的份额,游戏的交互性不同,以及按玩家年龄分类,分层等特点使得它适合各种年龄层的人。在各种游戏中,角色扮演类游戏得到大多数人的青睐,在此之上衍生出的动作角色扮演类游戏由于动作元素的加入成为更多人的选择。动作角色扮演类游戏是一种融合了动作类游戏以及角色扮演类游戏的一种游戏类型,玩家可以在体验游戏剧情的同时体验到游戏丰富的动作系统。本次毕业设计制作的游戏便是一款角色扮演类游戏,但是求其风格偏向做出了调整,与以往追求爽快简单的动作角色扮演类游戏不
2、同的是,本游戏加入了市面上一种新的“魂式”玩法,即更多的操作要求以及更难的难度,更加强调玩家的生存感,而是否能将这两者成功进行结合,产生一个新的方向,则是本论文所需要探讨解决的问题。此外,游戏将使用Unity3D引擎进行制作。关键词:Unity3D;3D技术;动作角色扮演类游戏AbstractWith the development of Chinese games and Internet technology, games are becoming more and more popular among people. Whether it is mobile games, compute
3、r games or console games, they all have their own position in the Chinese market. The game itself is also in the Chinese market. With a large share, the games interactivity, classification, and stratification make it suitable for people of all ages. Among them, role-playing games are favored by most
4、 people in various games, and the action-playing games derived from them are the choice of more people because of the addition of action elements.Action role-playing games are a type of game combining action-type games and role-playing games. Players can experience the games rich action system while
5、 experiencing the plot of the game. The game designed by this graduation is a role-playing game, but its style has been adjusted. Unlike the previous pursuit of refreshing and simple action role-playing games, this game has added a new type on the market. Soul-style gameplay, that is, more operation
6、al requirements and more difficult difficulty, and more emphasis on the players sense of survival, and whether the two can be successfully combined to produce a new direction, this paper needs to explore solved problem. In addition, the game will be produced using the Unity3D engine.Keywords:Unity3D
7、 3D technology Action R目录第一章绪论11.1选题的目的和意义11.2国内外研究现状11.3论文组织结构2第二章开发工具介绍32.1Unity3D游戏引擎32.1.1Unity3D软件介绍32.1.2物理引擎32.1.3Unity常用生命周期的函数32.1.4用户界面UI32.2模型与动画42.3C#开发语言42.4Visual Studio 20174第三章游戏设计53.1游戏场景设计与制作53.1.1游戏场景制作53.2游戏主角设计与功能实现63.2.1人物模型设置63.2.2角色的基本设计与实现83.2.3角色的攻击设计与实现103.2.4角色的防御设计与实现143
8、.3怪物(敌人)设计与实现163.4战斗设计与实现193.4.1战斗伤害实现193.4.2战斗死亡实现213.4.3战斗交互实现223.4.4角色升级实现233.5游戏音效管理24第四章游戏界面与视觉效果264.1角色属性以及图标显示264.2游戏菜单功能实现294.2.1开始场景界面与功能实现294.2.2游戏中界面与功能实现314.3游戏中的视觉效果33第五章游戏剧情制作35第六章游戏测试以及打包39第七章总结41参考文献42致谢43广东东软学院本科毕业设计(论文)第一章 绪论1.1 选题的目的和意义随着现代科技的发展,电子游戏变得越来越多样化,更是形成了一种独特的游戏文化,各式各样的游戏
9、层出不穷。在中国,随着2014年游戏机禁令正式解除,索尼,微软,任天堂的游戏机以及游戏作品也是给中国玩家带来了更多的游戏体验,更是给中国游戏市场注入了新的力量,如今,中国的游戏发展迎来了全盛期,以腾讯,网易为首的游戏公司为玩家们带来了丰富多样的游戏,让中国的游戏业焕发了新生。在最近的游戏发展中,产生了许多非常优秀的游戏,而在众多种类的游戏中,动作角色扮演类游戏更是经久不衰,其下众多的分支更是给这类游戏注入了强大的生命力,玩家喜欢动作角色扮演类游戏的原因大多是因为其优秀的动作手感以及剧情给玩家带来的代入感,不同于传统RPG回合制的战斗,ARPG带来的战斗多样性策略多变性更是引人入胜,因此我觉得开
10、发一款ARPG游戏不仅能锻炼自己作为游戏制作者的能力,更能试着去为玩家带来更多的玩法。Unity3D引擎同时也是国内开发产商最喜欢使用的游戏引擎,其轻便,核心化的开发功能更是为开发者们带来了便利,优秀的动作管理模块也为动作游戏的设计提供了基础,Timeline组件则能为人物剧情动画的设计提供帮助,是一款十分优秀的游戏制作引擎。1.2 国内外研究现状1952年,剑桥大学一名计算机科学家开发出了史上第一款有记录的电脑游戏Noughts&Crosses,这是一款能在计算机运行的井字游戏,游戏的历史从此开始,在接下来的几十年里,计算机的崛起以及计算机语言的出现,游戏开始慢慢的发展起来,直到1972年,
11、雅达利公司的Nolan Bushnell and Al Alcorn开发出了一款名叫Pong的游戏,这款游戏成为第一款在商业上取得成功的视频游戏产品,且在其后,越来越多“山寨”Pong的游戏出现,推动了整个视频游戏行业的发展,雅达利在商业上取得成功的同时,游戏业也开始迅速发展,街机游戏等开始充斥在大街小巷,特别是在1980年吃豆人这款游戏出现后,世界更是掀起了一股游戏热潮 随后,任天堂开始进军游戏界,为玩家带来了无数经典的作品,更是在当时成功垄断了日本的游戏产业,开启了游戏业的全新时代,接下来的几年内,PC端游戏Doom的出现,索尼和世嘉等各大游戏制作公司的加入,使得游戏行业开始往多元化发展,
12、时至今日,国外游戏仍然蓬勃发展,游戏种类众多,玩法也朝着多种玩法相结合的方向发展。1.3 论文组织结构 最开始构思论文后,对相关专业资料进行了查证以及参考,由此确定了此动作角色扮演游戏的设计与开发的可行性,并结合相关游戏开发流程,包括整个开发周期和个人能力的预期,将此论文分为六章,其中每个章节的大致内容如下所示:第一章:绪论,主要描述了此项目的目的以及意义,此项目在国内外的发展研究现状; 第二章:对本项目的开发需要用到的各种开发工具的介绍;第三章:拆分游戏功能模块,具体讲述每一个模块的具体实现方法 第四章:描述游戏内的UI设计的以及实现 第五章:游戏的剧情制作第六章:对游戏进行打包以及测试第七
13、章:本论文的总结第二章 开发工具介绍2.1 Unity3D游戏引擎2.1.1 Unity3D软件介绍Unity3D是一个由Unity Technologies开发的3D引擎,不仅是游戏,借助Unity3D,制作者还可以创建建筑可视化,三维动画等待,其友好的可视化开发环境,能够让新手快速上手,而且Unity3D几乎不经过修改代码就可以实现跨平台的特性,更是在移动游戏快速发展的今天显得尤为重要。Unity3D引擎自身拥有许多优势,相比一些产商需要付费使用的游戏引擎,Unity3D向广大游戏制作者免费开发,只有当游戏盈利超过一定金额才会向制作者收取一定费用,且引擎本身拥有充足的现成资源,其官方商城中
14、更是拥有许多优秀的资源供制作者使用,制作者只需将资源整合,并为自己玩法编写一些脚本,便能制作属于自己的游戏,其便捷性是其他游戏开发引擎所不能比拟的。2.1.2 物理引擎物理引擎就是模拟现实中真实的物理碰撞,重力反应,掉落等刚体行为的引擎,举个例子,愤怒的小鸟就是基于物理引擎制作的,小鸟被射出后掉落,撞击,都是物理引擎的应用,Unity3D使用的物理引擎为Nvidia的PhysX,物理引擎是一个计算机程序模拟牛顿力学模型,利用质量,速度,摩擦力和空气阻力等变量,来预测不同情况下的效果,被大量运用在计算机物理学,电子游戏,以及动画当中。2.1.3 Unity常用生命周期的函数Unity3D中的生命
15、周期函数需要继承Mono Behavior类才可以使用,且其生命周期函数全部都由系统定义好,系统自动调用,调用顺序和自行编写的顺序无关。Unity3D中有一些最常用的一些生命周期函数,这份官方文档详细了讲解了这些函数的用法2。2.1.4 用户界面UI本游戏的系统UI主要利用Unity3D自带UI插件UGUI进行制作,从Unity3D4.6版本之后,UGUI被集成到Unity的编辑器中,相较于旧的UI系统,它有了质的飞跃,其中主要优点在于灵活,快速,以及可视化,可视化的UI制作能够让制作者更加直观地看到成果,也使得制作效率更高,执行效果更好,以及更加简单上手,所有的布局,控件,调整后都能直接体现
16、出结果,使得制作者能更容易地制作出更加好看的UI界面2.2 模型与动画本游戏的模型以及动画的素材来自网络上的素材资源,再经过Unity3D的动画系统进行调整,整合,最终达到游戏中呈现的效果。游戏中亦包含剧情动画,则运用Unity3D的TimeLine插件进行编辑,以及脚本进行控制所制作出来。2.3 C#开发语言Unity3D中脚本文件使用的编程语言是C#语言,面向对象类型安全,来源自C语言系列,C、C+、Java和JavaScript程序员很快就可以上手使用。C#能够很好地在Mac、Linux、Android、Windows还有IOS上运行;它之所以是很多人的最佳选择,是因为 C#是编程语言创
17、新方面的领导者,是原生跨平台移动应用程序的最佳选择,并且还有很多的优点超乎的想象。2.4 Visual Studio 2017Visual Studio 是美国微软公司的开发工具包系列产品,VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台。 第三章 游戏设计3.1 游戏场景设计与制作 整个游戏的场景包括开始游戏选择场景,剧情场景,游戏场景,三个场景,其中场景均是运用网络素材进行搭建,游戏选择场景搭配人物动画以及选单,显得更加动态化,剧情场景则结合Timeline动画进行设
18、计,游戏场景为一个地牢大场景,其中又包括几个不同的小场景,小场景结合关卡流程进行设计。3.1.1 游戏场景制作 首先将下载的场景素材进行解包,基于素材进行场景大概构思,这里需要先完成游戏中地牢大场景的大概制作,然后进行细化,然后开始游戏选择场景和剧情则可以选择大场景中的一个小场景进行部分进行独立分化更改,加入人物以及动画。图3-1为则第一个小场景的搭建雏形.图3-1 场景搭建雏形 将场景搭建完整,加入光源,物件,地牢大场景的俯瞰图如图3-2所示:图3-2 地牢场景俯瞰图3.2 游戏主角设计与功能实现游戏中玩家控制的主角为一名骑士,在这里需要实现玩家的行走操控,动画控制器设计,攻击设计,技能设计
19、,以及设置主角的跟随摄像机。3.2.1 人物模型设置首先将从网上下载下来的人物模型进行解包,放入场景内,并将其Animation Type设置成Humanoid。如图3-3和图3-4所示图3-3 角色模型展示图图3-4 角色Animation Type类型图接下来将剑和盾导入场景,放在模型相应的部位下面,必须放在主角prefab下相应的子关节下,不然后面设置动画时会出现武器不跟手的情况,如图3-5所示:图3-5 角色绑定装备展示图最后一个步骤就是给角色加上一些必要的组件,这里需要Rigibody,Capsule Collider,以及Animator,AudioSource,如图3-6所示:图
20、3-6 角色必备组件图3.2.2 角色的基本设计与实现这小节需要编写脚本让玩家能够操控角色进行移动,首先,需要规划好人物的动作控制器,新建一个新的动画控制器,绑定到主角身上,预期主角需要三层动作,第一层是默认状态的动画控制,第二层则是玩家攻击的动画控制,第三层是玩家防御时的动画控制,因此做好规划后,建立三个层级,如图3-7所示: 图3-7 角色动画层图接下来进入基本层,添加一个Base Layer,将走动的三个动画拖进去,并且设定其不同的权重,再回到基本层,将死亡动画以及滚动动画拖进这里,这里的触发条件都设置为Trigger类型,由于死亡是单向性的所以不用有回去的连线,还有一个重要的点就是为了
21、动画的流畅性,必须消勾连接线的“Has Exit Time”选项,设置完毕的动画基本层如图3-8所示:图3-8 角色基本动画层设计图然后创建脚本PlayerMovement,利用脚本控制动画播放以及控制人物的移动,关键脚本如下:1. floatlh=Input.GetAxis(Horizontal);2. floatlv=Input.GetAxis(Vertical);3. 4. Vector3output=Vector3.zero;5. 6. output.x=lh*Mathf.Sqrt(1-(lv*lv)/2.0f);7. output.z=lv*Mathf.Sqrt(1-(lh*lh)/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Unity3d 动作 角色扮演 游戏 设计 实现
限制150内