关于《死亡细胞》美术工作流的初步探索

作者:IWSE
2021-04-16
13 14 0

基础思路:

  1. 在 maya 中使用 aiutility 材质渲染“像素级”colornormal 序列切片。
  2. 在 Photoshop 中使用“将文件载入堆栈”使序列按层级排布。
  3. psb 格式保存在 unity 中,修改 secondary texturespivot

1、分析死亡细胞的工作流

笔者在 18 年接触《死亡细胞》时就发现了其美术的特点:

  1. 虽然是像素画,但是动作的流程程度不像是逐帧画出来的,更像是三渲二。
  2. 不同的光线会对精灵产生不同的着色影响,如果是法线,不敢相信是手工画的法线贴图。
  3. 有些怪物之间只是颜色,护甲有无的区分,如果是颜色直接替换到还能理解,有些怪物就比另一个多了一些配件道具,如果还是用逐帧重画一遍感觉不太合理。

但无奈当时还是个小白没有足够的知识储备去解决这个问题,直到最近想起这事便进行初步探索。


使用扒皮工具,把《死亡细胞》的源素材提取出,动画序列的排列杂乱错落,不像是按像素间距直接排列,而是使用 psb 格式,以图层来保存序列。

颜色精灵上的只保留了固有色,并没有添加阴影,而每张颜色精灵都使用一张法线精灵,这个使用 sprite editor 赋予贴图到也可以。


大致按这个思路试了试,得到了一个最终的尝试,只使用 sprite 序列,每一张序列对应一张法线信息。

下面分享操作过程。

2、使用 maya 导出序列

2.1 像素级渲染

将画面渲染为像素的风格,需要将抗锯齿关闭,这里笔者使用阿诺德渲染器,则在 arnold renderer 中将 filter type 设置为 closest 模式,并且将公用中将图形储存设置为 32*32(这里根据项目需求,但建议使用 2 的幂次方)。

而使用 maya hardware 渲染的话,则直接在抗锯齿中关闭所有选项,如果使用 maya software 则在抗锯齿质量中,将边缘抗锯齿调整到低质量。


2.2 设置固有色与法线

同样使用阿诺德渲染模式,在 hypershade 中,以 arnold→aiutility 材质模板建立两个新的材质球:

① 一个用于渲染固有色,将其 shader mode 改为 flatcolor mode 改为 colorcolor 则节点链接 basecolor 贴图。

② 一个用于渲染法线,将其 shader mode 改为 flatcolormode 改为 normal,其他不需要改变。


2.3 渲染序列

这部分直接使用传统流程:在渲染设置中设置开始帧与结束帧,再使用 maya 的渲染序列功能,导出 tiff 格式的序列图像(这里使用 png 会不保留 alpha 通道,导出 tiff 格式并不影响后续进入 unity)。

3、使用 Photoshop 载入序列

进入 Photoshop 中,在“文件”→“脚本”→“将文件载入堆栈”,选择序列文件,最后点击确定即可,colornormal 各载入一次。

这样便可准备进入 unity,也可以先从图层建立序列帧,在 ps 中预览动画有无问题。

4、进入 unity 及后置修改

4.1 导入 unity

在 Photoshop 中,储存为 psb 大型文件格式,直接导入 unity 中。

Ps 导出文件时,命名后缀可以参考:法线精灵(XXX_NormalMap.psb)颜色精灵(XXX_BaseColor.psb)。


4.2 后置修改

1. 像素级项目通常设置:(insoecrtor 属性)

Filterr 设置为 Pixel;

Compression 设置为 None


2. 切片设置:(这一步针对于 XXX_BaseColor.psb 操作,从 sprite editor 按钮进入)

① 在 Slice 中,将 pivot 设置为 bottom(这里根据项目需求,pivot 为锚点的统一,通常在角色动画中会将锚点放在底部),mathod 设置为 smart(这一步很重要,是个神坑)

spriteEditor → secondart textures,在小窗口中设置,name →_NormalMapTexture 选择导进来的法线贴图文件。


3. 灯光设置

在 unity 中,2D 的灯光渲染通常使用 URP(universal RP),在 Light 2D 设置中需要将 Use Normal Map 打开,这样即算完成。

5、总结

在《死亡细胞》美术总监的开发演讲中,提到他们制作了一个小工具来进行这一套工作流的进行,但是笔者推测可能是一个将整个流程一步到位的工具(省去中间导入到堆栈步骤),或者是统一处理像素点,批次修改颜色的辅助工具(这个可以从主角在 3D 是蓝裤子,在 2D 中是黄裤子中推断,有可能是类似 ps 修改颜色的工具)。

或者与 emission 通道有关,能够统一处理切片中发光的色彩信息。


另外,传统的 2D 像素画在美术动画上的效率太低,《猫头鹰男孩》是 2D 像素美术的一种机制,但即使游玩流程不长,其开发任然用了 10 年,可见传统像素动画的耗时之久,所以《死亡细胞》为我们提供了一种新的思路,利用 3D 转 2D 来进行高效的动画工作。

使用屏幕后处理来统一像素风格也是一种新的思路。


总之,传统工艺在工业化面前必定会式微,游戏研发的工业化趋向必须要求我们不断探索更加高效的工作流,正如影视行业,迪士尼也不会因为手绘动画更有匠心与情怀而放弃 3D 转型。

参考文献

本文为用户投稿,不代表 indienova 观点。

近期点赞的会员

 分享这篇文章

IWSE 

老任天堂了 

您可能还会对这些文章感兴趣

参与此文章的讨论

暂无关于此文章的评论。

您需要登录或者注册后才能发表评论

登录/注册