死细胞:使用3D管线进行2D动画处理

图片

可以说,几乎所有独立开发者的座右铭都是“资源有限的大梦想”。 当我开始为Steam Dead Cells开发第一部Motion Twin游戏时,这句话成了我的座右铭。

我叫汤姆·瓦瑟(Tom Wasser),整整一年我都是唯一的《死细胞》艺术家。 我对游戏的各个方面进行了设计和动画处理。 独自一人,我必须创建图形样式,角色,怪物,动画,特殊效果(FX)和大多数Dead Cells背景... ...幸运的是,到目前为止,我邪恶的孪生兄弟Genel Masset并没有帮助我。 死细胞艺术家的数量增加了一倍。

但是,我们行业中经常出现工人短缺的情况,因此,我将告诉您如何一直不遗余力地独自工作(当然,如果我还没死的话,这不是幻想)。

3D管线可快速创建高质量的动画和新模型


我首先以二维像素艺术风格绘制了一个非常简单的模型表,然后将其用作在3D(使用3DS Max)中创建角色及其骨架的基础,然后以电影盒格式将其导入。 3D模型非常简单,它们很可能会使任何有经验的3D艺术家流血。


但是,如果在游戏中角色的成长只有50个像素,那么花费大量时间和精力在3D模型上似乎并不是特别有效。

尤其是针对此任务,我们开发了一个小型的自制程序,该程序以非常小的尺寸渲染网格,并且不进行平滑处理,从而实现了像素样式。



现在我们需要教导模型如何移动。 像2D动画一样, Dead Cells动画也基于关键帧。 在动画令人信服的帧尽可能少之后,我在关键帧之间添加了插值帧。 也就是说,我们的攻击动画本质上是姿势动画,并且我们使用VFX使它们具有运动感,力量和力量感。




在这一阶段,大部分工作已经完成。 我们将使用3D骨架创建的动画的每一帧及其法线贴图导出到.png,这使我们能够使用最简单的卡通着色器渲染体积。



将整个动画导出为一系列帧可以使我们使用一种或两种混合模式来增强动画的效果。


当然,游戏程序员永远不会在第一次就做正确的事情……他们正在不断改变方法。 尽管实际上应该是这样。 就我而言,转换过程非常简单,花费了一些时间。 如果您在计时方面存在问题,则可以通过沿时间轴移动关键帧来消除它们。 您也可以轻松更改姿势。

比方说,这种武器实在太强大了,我们想放慢攻击动画,以便稍微减弱它。


为了取悦程序员(和我自己,因为我不必丢掉所有已完成的工作),我们只需移动关键帧并根据新的时间来更改姿势。




实际上,所有这些更改通常比为文章创建GIF花费的时间更少,但也许我只是不太擅长使用GIF。

与更传统的2D流程相比,此3D工作流程还具有两个主要优势。 首先,如果我们想在旧模型中添加新元素,例如装甲,那么事实证明这很简单。 仅将相应零件附加到3D模型就足够了。



但是3D建模的真正优势在于能够重用为以前的精灵创建的旧资源,以与新角色一起工作(在我们的例子中,这些大多数都是怪物)。


这可能是我们工作流程中最有用的小技巧,它使我节省了数百小时的工作。

为什么需要这个?


我们都喜欢手绘像素动画。 但是我完全是一个人工作,我没有手工绘画技能,而且由于游戏的技巧,我不必等到下一个十年。

我于2008年进入视频游戏行业,从事休闲和F2P游戏已经有几年了,但从未在一家不再存在的法国公司中发行过。 我仅在2013年受聘于Motion Twin时才开始绘制像素艺术,当时我从事五场比赛:《 残酷的少年危机》 ,《 绿色女巫》 ,《 FAFI 360》 ,《 Uppercup Football》和《 Monster Hotel》 。 如果您至少知道其中一个名字,我会感到非常惊讶。

为了解释这种情况,我会说,当我们在2015年开始开发Dead Cells的第一个迭代时,这是我的第一个如此庞大的项目。 我可以毫不羞愧地承认我不是(现在仍然不是)一个有经验的动画师,直到今天,我感觉自己还是像素艺术的新手。 回顾过去,我可以说这很好地影响了死细胞的风格,因为我从来没有受到“老式像素艺术”风格的惯例和传统的限制。

为了解决资源短缺问题并达到所需的质量水平,我们不得不寻找一种流程/管道/任何东西来获得无需手工绘制的精美像素图。 我们试图创建高质量的游戏,而不会在开发过程中花费过多的时间和精力。

从艺术的角度来看,我们需要以下内容:

  • 许多不同的背景,美丽的灯光和装饰。
  • 强大的动画使战斗充满紧张感,就像所有的自拍游戏。
  • 令人恶心的怪物堆。
  • 大量影响游戏风格的武器。

我上面为“死细胞”描述的3D过程实际上是基于另一个项目的。 2015年,Mathieu Capdegel( Dead Cells的开发人员之一),Joan Laulan(还作为声音工程师在Dead Cells上工作)和我一起参加了Ludum Dare32 。结果,我们在72小时内制作了游戏ScarKrow ,更准确地说是游戏原型。 他是我们想要创建一个快速而残酷的平台游戏的第一个证据。 但是,用Flash绘制高质量的动画花费了我太多时间,并且结果没有达到我们的期望。

但是,那时我们已经看到了这一概念的潜力,即使没有任何实验,Motion Twin始终是始终支持实验的公司。 在Ludum之后,我们花了整整三周的时间来开发ScarKrow,即使那时我仍然意识到,在传统模式下工作无法保持正确的步伐。

格斗之王Blazblue和后来的最新Guilty Gear的启发,我们决定主要制作3D动画。 这种方法给我们带来以下优点:

  • 无需重新绘制每一帧
  • 能够将一种动画用于不同的模型
  • 自动生成内插帧以实现平滑动画
  • 快速轻松地进行更改以使动画与游戏玩法匹配

由于有了这个工作流程,我们能够在动画中达到30 FPS并节省了大量时间。 如果您想了解它的工作原理,则可以从此处免费下载原型。

要在“死细胞”中使用相同的过程我们必须解决几个问题。 首先,对于ScarKrow,我必须在所有帧中手动绘制阴影。 我们设法通过创建将这一因素考虑在内的照明系统来避免这种昂贵的过程。 另外,与ScarKrow不同, Dead Cells是一种像素艺术风格的游戏,因此我们必须创建用于字符“像素化”的工具。 我们事先知道它会有用,因为我们过去允许自己尝试一下。 这就是为什么我建议您尝试的原因。

结果


回顾过去,事实证明,此过程的最重要优势是简化返工工作。 强大而紧张的“死细胞”战斗系统是所有其他机制的基础。 在我之前从事的项目中,我们创建了传统的手绘动画,完成后无法重做。 根本没有时间了。 这极大地影响了完成游戏的玩法。 更改代码中的动画速度不能解决问题。

“死亡细胞”中创建新武器时我们实际上可以在短短几分钟内更改数十个动画时间。 而且,无论进行更改所需的时间如何,我们都可以考虑游戏迷社区的意见。

当然,使用3D模型的过程有其自身的缺点。 我们必须寻找一种方法来渲染低分辨率像素艺术中的3D模型。 我们通过使用单元着色技术解决了这个问题,当以低分辨率渲染模型时,不进行平滑处理,但是,例如,我们无法解决像素闪烁的问题。 是的,我们可以手动消除它们,但是整个过程的重点是速度……而且我们更愿意花时间在概念设计上! 我总是很烦,并且会为低质量的细节而烦恼,但是我们决定动画是最重要的,我们对选择负全部责任。 运动是最主要的。

我希望我们对“死细胞”动画过程的简短描述对您将来的项目有所帮助。 但是在我看来,最重要的一课不是我们工作的细节,而是经过深思熟虑的工作流程可以为项目带来成功。

尽管我们的选择主要是由缺乏资源决定的,但现在我意识到,不管新项目的规模如何,对成本和质量比率进行优化的思考都是最重要的过程。

Source: https://habr.com/ru/post/zh-CN416589/


All Articles