1人开发次世代?《失落之魂》杨冰讲述虚幻引擎开发经验

在大多数人的印象里,虚幻引擎是只有做次世代3A级游戏的大团队才会用的。不过,在3月底的时候,我们曾介绍过一款单人开发的《失落之魂(Lost Soul Aside)》,开发者杨冰是美术出身,两年的时间里使用UE4引擎做出了一个堪比FF视觉效果的游戏Demo,视频在YouTube的播放超过270万次。

【Gamelook专稿,转载请注明出处】

12

Gamelook报道/在大多数人的印象里,虚幻引擎是只有做次世代3A级游戏的大团队才会用的。不过,在3月底的时候,我们曾介绍过一款单人开发的《失落之魂(Lost Soul Aside)》,开发者杨冰是美术出身,两年的时间里使用UE4引擎做出了一个堪比FF视觉效果的游戏Demo,视频在YouTube的播放超过270万次。

Demo视频

据gamelook了解,这款游戏是杨冰在韩国读研究生期间研发,毕业后又耗时一年才完成,在此期间不仅拿到了Epic的Dev Grant资助,还被索尼选入“中国之星计划”,如今他已经从单枪匹马成立了自己的Ultizero Games工作室。

在近日的演讲分享中,杨冰根据自己的亲身研发经历,讲述了一个不会编程的开发者是如何使用UE4打造“次世代”级独立游戏的,以下是gamelook整理的详细内容:

开发者介绍视频

我今天主题是讲当时在做《失落之魂》时候如何快速迭代出一款动作类游戏的技巧,以及用到UE4中哪些节点可以快速迭代出动作类游戏的体验和打击感。

1

由于时间关系,我主要分四个部分来说。首先是介绍一下《失落之魂》,然后是技术概况、角色动作就是除了蓝图之外我用过的一些技巧,最后一部分是讲战斗系统的实现。

技术概况

《失落之魂》可能有些人了解,而且有幸得到了Epic公司Dev Grant资金支持。我之前在Youtube发布了一个视频,它的观看量也超过了270万次,现在也进入了索尼中国之星计划,我的工作室也刚刚成立,正在当成一个商业项目在做下去。由于时间关系,感兴趣的可以直接观看(上面的)demo视频。

2

技术上来说,我是美术出身的开发者,所以有幸能得到虚幻引擎提供的蓝图让我可以不写代码也能完成整个战斗系统还有游戏的逻辑,其实蓝图的数量还是非常庞大的。

3

当时有很多人发邮件或者通过Facebook问过我关于面部还有布料的一些东西,这个我简单说下,当时我做上面的头发的时候主要用的是骨骼,然后在蓝图里增加一个inputs的粒让他有飘动的效果。马尾辫包括衣服实际上用的是英伟达的布料系统,也就是PhysX Clothing。LOD其实当时Simplygon有一个独立开发者可以免费使用的东西,所以LOD是用Simplygon直接生成的。

4

关于cutsense里面的一些东西,包括面部表情和动画都是先在MAYA中制作完成,然后在UE里用它的sequencer可以快速地制作出整个过场的效果,还有就是,它的cutsense镜头剪辑也非常方便,当时也是省了很多的工作量。

角色动作

5

动作部分,当时有人问过它里面角色的移动,其实主要是用了一些动态捕捉的数据,然后再用Blend Space,做过这类的同行应该很清楚,它可以做到非常好的混合,包括跑步、走停和转弯都是有专门的动画让它混合起来让整个角色的移动变得比较平滑。

6

这个(图)是Locomotion里面的,包括从开始走(Idle)、停下来,还有走路过程中的转弯、转向,包括走路和跑步的Blend都是在这个里面完成的。当时在整个动作系统完成度比较高的情况下,Locomotion用到的比较多才能实现很多动作比较平滑的Blend。

7

然后角色动作里面,就是Locomotion下一级的,包括IK、战斗状态和非战斗状态下的pose混合,还有比如上半身是一个动画、下半身是一个动画,这时候它需要用到Layer blend这些层级的东西,UE4提供了这些节点供用户使用,所以这些功能实现起来还是比较方便的。

战斗系统的实现

接下来我会讲一些战斗系统的东西,就是如何做出打击感、连招combo之类的。首先combo我用到的就是UE4里面一个叫做蒙太奇(Montage)的系统,这个可以在MAYA里把整个连招Key出来之后,在UE4里面通过蓝图根据需要混合出战斗中的连招。

8

如果看左边这个图就可以看出来,其实它的逻辑很简单,当玩家按到这个键的时候它会根据当前的操作来进行,比如按方块,这个时候是轻攻击,当我再按的时候它就会自动设置成第二个键,也就是攻击的第二招,如果按三角的话就会直接接到三角的那一招,这是类似于三国无双里面的CG Combo实现方式。

还有一个就是打击感表现,我个人的理解,打击感就像是在做一块三明治,里边需要几个东西拼到一起的加法逻辑,包括VFX(视觉特效)、音效,再加上镜头抖动、手柄震动和镜像模糊。其实它在UE4里边都有专门的节点来实现这些功能。

9

除了这些之外还有一个是受击动画,因为表现打击感不能让每一下被攻击的反应都一样,所以我这个里面会让一个动作让它击倒,另一个动作击飞或者其他的反馈,我就是根据这逻辑来做的受击动画调用。物理反馈有点像是布娃娃系统,打中敌人之后它会根据角色挥剑的Rotation(旋转)对布娃娃有一个整体的转向,就是受力模拟。还有一个就是模糊,我用到了Post Process里面的一个后期效果。

10

另外就是镜头,动作游戏就像是在拍一部动作电影,镜头是非常重要的,包括哪个镜头需要升起来,哪个需要降下去,哪个需要特写,这里我大部分用的都是一个叫做Camera Animation 的一个节点,包括最后终结敌人的时候会转到角色的正面,其实就是直接转动摄像头的一些逻辑。

11

战斗跳跃还有挑空的逻辑当时我研究了很久,因为如果直接用UE4里面自带的Launch Character或者Jump的话,它的重力加速度会非常真实,只不过在动作游戏里,太过真实的话,表现力会下降,看过《忍龙》还有《DMC》等怪物被挑空之后的动画就会发现,它其实是用了非常夸张的手法,学过动画的可能都知道(图片)下面那个小球的轨迹,它这个其实是一个夸张过的重力加速度,就是在空中滞空的时间比较长,有更多的时间让玩家反应,所以当时我是通过timeline直接通过曲线来全程控制它在空中的跳跃。

如若转载,请注明出处:http://www.gamelook.com.cn/2017/05/291274

关注微信