我的专栏目录:
小IVan:专题概述及目录概述:
蘑菇森林大冒险是我很久以前就开始做的一个demo,陆陆续续持续了很长时间,我把它定位为一个王国之心类的动作冒险游戏。
效果预览:
使用工具:
(1)Unreal Engine 4(2)3DsMax2016 (3)Zbrush (4)VS2015
开发步骤:
既然是动作类游戏,所以我研究了一些动作制作技术和动作类游戏的设计框架。首先需要生产主角相关的资源,建模绑定这些都是最基本的。绑定我还是使用BIP骨骼。
因为动作游戏会使用大量动画位移,所以我把根骨放在了Character胶囊体的地波也就是双脚的终点上,根骨只负责根骨位移,而整个身体的旋转等操作我选择使用盆骨来完整,把两部分逻辑这样拆开有助于后期动画逻辑的设计。
准备好大量动画片段后就可以开始制作各种战斗动画技能了,当然这些战斗动画在制作之前还是需要自己策划设计一些技能,然后再制作这些资源然后再再程序中融合这些动画。
我使用了大量动画通知和动画状态机,动画蒙太奇能方便地控制动画的播放,但是动画融合就会显得比较生硬,但是单个动作动画也就几帧,是否要进行两个动画之间的动画融合还是要去看具体需求。
我把连击进行分级,分为一段二段三段。第一种连击技的二段状态不能切换到第二种连击技的一段。第二种连击技的三段不能切换到第一种连击技的二段,但是两种连击技之间可以来回配合。
每段受击等判定可以使用动画通知精确控制,我们只需要自己定制一个动画通知即可。动画通知中可以定制丰富的战斗数据,比如打击声音等等。
这样就可以方便制作出硬值效果,连击的每个阶段造成的伤害对怪物会造成不同的硬值。不同的硬直怪物表现出的受击效果也不同:
伪代码如下:
上述的战斗部分主要是用动画通知+大量动画片段+动画状态机,而移动部分则是使用了大量动画状态机,如果想制作丰富的动画和环境交互的话还需要加入骨架控制。
这部分内容程序部分就比较简单了,但是对于资源制作部分引擎就帮不了什么忙了。
注意一下缓动插值这些方法的使用调整手感就可以了,不要一下子把Rotation给设置过去即可。
然后就是一些道具物品的元素啦。我自己做了个背包,把物品放到快捷物品使用栏就能方便使用啦。
背包系统其实非常简单就是个简单的数组排列问题。
有了这些游戏元素以后,还需要设计一个管卡,我才用全程序化生成的方式,类似饥荒那种模式,每次游玩游戏都会有新的内容。
Enjoy it。
本文介绍了作者使用Unreal Engine 4开发的一款动作冒险游戏——蘑菇森林大冒险,涉及主角资源制作、动作动画设计、连击系统、受击判定以及程序化关卡生成的过程。通过动画通知、状态机和动画蒙太奇实现游戏逻辑,同时讨论了移动、道具系统和背包设计。
1790

被折叠的 条评论
为什么被折叠?



