【搬运】《火影忍者:究级风暴》渲染技术的究极解析 digest

转播

2021-09-21 23:48 发布

特效教程技术讨论 /[技巧分享]
323 3 2
本帖最后由 0479 于 2021-9-21 23:57 编辑

前言略


2.角色与CG表现

    让人感觉不到CG噪音的简单角色表现
  动画作画的关键就是对信息量的控制。用少量的信息表现出强烈的个性,怎么才能做出活灵活现的角色呢?
  角色模型的LOD
  角色的建模使用3dsMax。图里是主人公漩涡鸣人的身体和头的建模(从左开始是高、中、低模)。多边形数量各自为高模16000(头部2400)、中模8000(头部1400)、低模4000(头部700),基本上由从镜头的距离算起:5米以内、5到7米、8米以上来区分,以此进行LOD处理。梅田公一先生表示,这是为了在减轻描画处理负荷的同时,表现出动画特有的“远处的东西被画出线条是经过整理的形态”。还有,有时有必要让人清楚的看到表演性质的脸,还会发生由于大量的角色登场引起的负荷上升那样局面的情况,要根据情况强制性的切换高模或是低模。还有,脸上使用到了很多的多边形,本作中使用法术时结印的手指也分配到了相当精细的多边形。

  【千里马肝注: 临、兵、斗、者、皆、阵、烈、在、前。这九个字源于东晋葛洪的《抱朴子 登涉篇》,(葛洪者,乃东晋时结合儒家思想改造道教,宣扬采药炼丹、长生不老的人,至此,道教变成为封建统治服务的宗教)“临兵斗者,皆数组前行,常当视之,无所不辟。”意思是说,常念这九个字,就可以辟除一些邪恶。在抄录这九个字时,把“数、组、前、行”误抄成“阵、列、在、前”而沿用至今。这九个字分别的意思是:临,代表身心稳定。兵,代表能量。斗,代表宇宙共鸣。者,代表复原。皆,代表危机感应。阵,代表心电感应或隐身。列,代表时空控制。在,代表对五元素的控制。(五元素:就是我们熟知的金、木、水、火、土。)前,代表光明。】
image.png

  重视画面效果的生动配色阴影
  公司内部以前使用过的乘法Cel Shader,绘制出皮肤的阴影部分的褪色效果是个难点,见上图A。在本作中,为了解决那个问题,模仿了Photoshop的soft light图层效果开发出了Cel Shader,见上图B。用这个方法虽然确实在皮肤的影子上能得到良好的结果,但同时衣服等东西原本的色彩很高的部分影子也变的明亮,结果作为影子就会出现破绽。于是开发出了新的彩度高的像素上使用乘算,彩度低的像素上用soft light的,把影子颜色在直线上混合描绘的shader,实现了取得平衡的阴影,见上图C。另外,项目主管的西川裕贵先生表示,因为这个shader保持相当的的彩度,根据动画上经常用的色调也可以适用在阴影的表现上,例如说把夜里的阴影做成青色时也很有用。

  【千里马肝注: 动画在绘制之前,会由一位经验丰富的美术绘制一套被称作“色彩指定”,简称“色指”的图片,其中对于角色的肤色、头发色、眼睛、服饰等的颜色进行规定,包括该部分在阴影下的颜色、高光的颜色等等。这样严格要求的结果是,当动画关键帧被绘制完成后,流水线上的美术必须严格按照色指进行上色,于是出来的动画效果就如同一个人画出来的一样。】
image.png

image.png

  【千里马肝注: 色指示意图,可见是异常得复杂,而且任意一种颜色都按光照级别分为最多4层。不知道会不会有人会像这样,针对每一种材质都指定一张光照图也不是不可能。】
  【千里马肝注: 提到Cel Shader,如果统一使用一个明暗的光照图来表现整个角色,就会出现图A和图B的问题:皮肤过暗或衣服过亮。(动画片中希望让皮肤的阴影显得通透一点的原因,我猜想应该是类似想达到次表面散射的感觉和效果。)所以最简单的就是像文中所说的,将皮肤和衣服的处理分开成2个。】


image.png
  整理出动画风格的阴影
  虽然图A把高模做出了Glow Shading,但是如果使用这个光源设定进行Cel Shading,光照会像图B那样忠实的表现出阴影来,导致表情变的非常僵硬。这样就达不到动画片的效果,所以需要像图C和D那样让模型膨胀再整理法线,作成调整过的模型,取得了法线信息后,把那些适用在原模型上,就可以再现出图E那样动画风格的柔软的表情。还有,在实际主机上的再现是开发了专用的插件对应完成的。这个Shading技术可以说是初期研究开发阶段很大的一个成果。

  【千里马肝注: 这种手法之前在《偶像大师1、2》中也出现过,具体实现还是第一次见到。需要试验一下,这种膨胀的方式,当光源位置变化时会是什么效果?】


image.png
  必要的轮廓线(Outline)抽出法
  作为轮廓线的生成法,从PS2的时候就是被经常使用的方法,把模型按法线的方向推出很大的一圈,再把多边形的法线反向作为轮廓的绘制手法,图A。用这个方法,因为对于全部的多边形都适用一样的处理,头发等的轮廓也忠实的绘制出来,表现出期望中的动画风格的质感。还有一种生成法,一次性把模型渲染到2D buffer中进行post处理,是一种抽出模型的轮廓(silhouette)的绘制手法,图B。用这个手法,虽然使用silhouette生成了简单的的轮廓线(Outline),但不能在silhouette的内侧生成。所以本作的Cel shading上附加了轮廓线(Outline)选择的选项,由于设计师会对应状况选择绘制方法,实现了这两个手法的并用。

  【千里马肝注: 图A的方法不用多说;图B的方法可以将normal或depth渲染到render target中,然后进行Sobel filter处理。作为卡通渲染,有时的确不希望过多的细节被表现出来,这里本作使用2种可选项是个好办法。更多的信息请见RenderMonkey中的NPR。】


3.动画特有的夸张

  动画中加入了其所特有的夸张,动画的深奥妙趣,就是充分利用省略和强调张驰。

  那么如何通过CG来表现这些并灵活的运用呢?这里来披露一些吧。


image.png
  索具(Rigging)的准备配置(Setup)
  角色的索具装配使用了Biped。骨骼的构成,被称为全角色共通的基础的躯干部分有52个,各种调整用的自由骨骼是22个,面部是67个,服装和头发等摇动的物体用的延伸骨骼是30到80个,全部大概每个角色可以算出是170到220个。还有,做成的动画数,漩涡鸣人的情况,在自由战斗时是125个,极限任务模式里是90个。



image.png
  动画拖影(Anime Blur)的实现
  作为动画片固有的速度表现,速度过快的会有轮廓被拖长的情况。在本作中把三角锤的模型重叠 (图A),提前加入角色的末端部分(图B),把骨骼拉出来(图C),实现了这个效果(图D)。在骨架上加入了弹簧控制,根据动作的速度把拉出的长度自动的变化,虽然做出的动作也有些和表演意图不同,但为了取得平衡,全部的人都加入了。
  【千里马肝注: 关于弹簧控制,请搜索:虎克定律。】


image.png
  面部配置(Setup)的基础
  面部正如前述那样由67个骨骼控制(图A)。作为本作特有的设定,下唇的下骨骼占到脸的三分只一。这是为了可以表现出即使是动画独特的张嘴,下巴的位置也不会改变,或是表现出图B那样,脸有很大的扭曲。还有一看就明白的,真实系的面部配置中,大多被设定的脸颊或鼻根的骨骼极少。这样着色在平面上难以反映变化,所以并不是要设定最低限度的骨骼,而代替那些皱纹表现的,要用专用的3D模型(图C)来实现,图D。顺便说一句,图C的两个白色圆板是眼睛的高光,这样可以把皱纹以及高光从shader上分离,容易按意图做出表情。



image.png
    动画独特的不合常态的关节
  图A作为人的动作当然相当的正确,但是按动画来看就太过死板缺乏趣感。正是像图B那样柔软有弹性的形状变化才符合动画片。为了实现那些,要用基础的骨骼(图A)制作动作后,再把子阶层模型顶点网格通过自由骨骼对权重进行控制(图C的红色部分),这样就可以制作动画独特的柔软性。



image.png
  大胆夸张的动画风格构图
  在实际的镜头中,一旦让被摄影对象的人完全的进入画面,怎样努力也如图A那样有透视的限制。所以为了得到如图B那样动画型的夸张的构图,要通过Biped的骨架的辅助动画中加算上Scale,让其在物理性上巨大化。



image.png
  面部的作业环境
使用了以前的目标变形(Morph Target)是因为要在本作中变更骨骼,如图那样,准备了选择器,工作中可以迅速的对应新的手法(图A)。还有,由于这个变更,表情的数据库管理化就成了问题,但是可以把表情的骨骼和标准的姿态的骨骼的差值做成文本档案化,解决了输出脚本的制作问题。由于这样,通过目标变形能够混合两个表情的同时,还可以转移到拥有同一个骨架构造的其他角色上做出类似的表情,对工作的效率化,还有风格的统一等有很大的作用。




4.背景与特效


再现手绘触感的背景和特效
  不管从哪里看都可以作为一张画而成立的拥有统一感的背景,还有艳丽有活力和动感的特效。在制作这些中不断的加入了独自的创意方法。


image.png
    背景的概要
  上图是战斗舞台的其中一个,角色的移动可能范围按实际尺寸是直径50米,最远景是500米左右,大约用了5万多边形做成。担当背景制作的四所铁矢先生表示,开发当初好像有40万到50万多边形,一边要维持品质一边要把多边形消减到能够实时绘制处理的水平,很辛苦呢。


image.png
  丰富的河流表现
  让水面上反射出美丽阳光的河流(图A),如何能用一张平面的多边形作出来(图B)。使用的贴图有,color(图C),height(图D),normal(图E),shadow(图F),环境(图G) 5个种类,水的颜色在shader参数里设定,在颜色上也可以增加高度的信息。环境贴图拥有alpha通道 ,加入了模拟的HDR信息(图H)绘制太阳一类的效果。像素描绘的结果,会显出很强的Glare Filter效果,花了很多工夫。


image.png
  背景的贴图
  在贴图上使用了Albedo贴图(图A)和阴影贴图(图B)。根据适用的地方,在2048X2048到256X256像素的范围内选择尺寸,使用DXTC格式总计30MB的程度。还有,用Photoshop的插件做成Mipmap来使用(图C)。虽然由于这些贴图的容量会增加33%,但和没使用时比起来,GPU的处理负荷减轻了接近一半,那个效果是非常大的。


image.png
  背景的作业环境
  公司内部在构筑开发环境上也倾注了全力,在背景制作中使用了30台以上的wacom的21寸液晶绘图板。更有应该注意的是在负责人的头上,有个防止面对监视器时映入灯光的特别定作的圆盘形的遮光罩。这是日产汽车和slik共同开发的产品,由于这个抑制了照明,实现了没有那么明亮的作业环境。


image.png
  重视画面效果的DOF
  图A是应用DOF前的状态。在这个基础上由于适用了从ZBuffer中抽出的(unfocus mask),虽然再现出了DOF,但是因为在角色上有轮廓线(Outline),模糊的部分和不模糊的部分的差距鲜明的显出了,轮廓若隐若现,图C。因此像图D那样在unfocus mask本体上加上Blur来抑制上述的不合适,图E。实际仔细看来,本来的焦点应该符合背景而显得模糊,但考虑图像的融合还是采用了这种方法。顺便说一句,Blur使用了高斯filter来处理,可以很轻松的完成。
  【千里马肝注: 这的确是一个让unfocus部分与focus部分更柔和融合的小trick。】


image.png
  火焰的特效
  图A里是佐助的“豪火球忍术”,图B是实际的模型构成。这个特效可以由中心的球体模型(图C),平面的正面化模型(图DE),对应移动的生成平面多边形的轨迹模型(图F),这三个部分构成,把这些合成后,可以实现拥有2D的样子并在3D空间中没有不协调感的特效。还有,适用于Flare或轨迹的动画用贴图如图所示各自八张的循环,每个一种,但是担任特效的下田星儿先生表示,最初是做成了平均性形状的多边形,在实际组合时让多边形变形,即使用一个种类的循环动画也能够表现出形态丰富的火焰。顺便说一句,这个特效为了再现动画版的时间,虽然是一秒内8到15个画面,但游戏本身是按30fps活动。试验性的尝试过60fps和15fps,但在60fps中不能流畅的做出活动的动画,一旦用15fps做出动画,作为游戏的反应就变差了。


翻译:trace
校对:千里马肝
来源:OpenGPU





2

你可能喜欢

高清录屏工具分享

特效教程技术讨论

1882 12 24

慎独 2021-07-02

浅谈游戏打击感

特效教程技术讨论

1927 11 54

慎独 2021-09-14

不使用坐标做定向溶解的一种思路分享

特效教程技术讨论

1187 10 37

慎独 2021-09-14

全部评论1

    doordie
    假装看懂
    回复
    2021-9-23 03:16
    确定
客服中心 官方QQ群
快速回复 返回顶部 返回列表