逼真的角色工作流程

本章将重点介绍动画面部表情和皱纹图的雕刻。
有多种方法可以为面部引入动态皱纹和逼真的变形。会有一些链接和提及,但这里的重点是我们在 Project Heist 中使用的方法。在此 博客文章 中还可以找到更多快速信息。
为了便于理解,我们有必要先了解面部表情的创作基础。对于面部表情和头部动作,我们基于 面部动作编码系统 或简称为“FACS”。这是人类肌肉允许的所有可能的面部和头部动作的综合列表,分为“动作单元”。
为了实现最大程度的控制和变化,最好为每个动作单元创建一个形状键。Chris Jones 在他的论坛帖子中详细介绍了这一点。根据表面拉伸或通过遮罩,可以使用 高度图来获取额外的表面细节。
为单个 FACS 创建如此多的形状键也会产生副作用,即很难确定哪个形状键正在移动哪个顶点。将两个以上的形状键添加在一起将越来越多地导致难以预料的顶点漂移,而这很难排除故障。
创建皮肤细节的工作流程也严重依赖于首先创建高频细节图,然后将它们克隆到脸上。这对于还没有老化的皮肤非常有用。
但一张布满皱纹和肤色的脸则需要花费更多精力。暴露这种程度的细节也可能使他看起来太年轻。
因此,此工作流程非常适合较年轻的角色和较低的多边形数。但由于我们角色的年龄,我们希望在不同的面部变形之间实现更多的形状变化。请参阅 从扫描数据开始的 Adam Springs 工作流程。
我们还旨在更多地手工雕刻和绘制皮肤细节或程序化地创建它们。
我们希望找到一种既能提供类似控制量,又能优化渲染速度的方法。因此,在我们的示例中,我们采用了类似但不同的方法。
对于 Project Heist,我们将互补的动作单元分组并混合。这主要是为了优化目的,因为 Eevee 渲染引擎无法很好地处理大量单独的位移图。任何大致朝相似方向变形或不相互矛盾的动作单元都可以混合到我们所谓的“形状”中。
由于时间和预算的限制,我们还决定不雕刻所有可能的动作单元,因为有些动作单元非常特殊,永远不会在电影中制作成动画。有些动作单元甚至总是被角色的胡须遮住。 我们最终将动作单元分为 6 种形状:

6 种脸型中的动作单元可视化。
有许多动作单元和面部变形,例如眼球运动和旋转/非线性变形,通过骨骼进行装配更有效。使用我们当前的装配设置 CloudRig 为我们提供了一个极好的基础来实现这些,而不是使用形状键。
为了让您大致了解这些形状的使用方法,在详细介绍之前,这里先做一个简短的概述。
形状被用作校正形状键。
最近 Blender 进行了改进,更好地支持基于形状键的绑定,我们可以先雕刻所需的面部形状,然后使用尽可能接近的绑定重新创建结果。完成后,可以将形状应用于这些骨骼位置作为校正形状键,以将精确的形状集成到绑定中。
任何小于拓扑的细节都被烘焙成纹理。
这些形状被烘焙成高度图,细分后可用于额外的位移。有些形状还会被烘焙成法线/凹凸图,以便在阴影中呈现更多细节。
我们利用面具来分离形状。
为此,我们主要使用骨骼的权重。因此,每当骨骼影响面部区域时,相同的权重就会触发形状键。我们还将权重转换为可在材质节点中使用的一般属性。它们是将烘焙贴图混合到材质中的因素。
细分的、部分阴影的头部。无论形状的校正形状和位移图在哪里激活,都会亮起一种颜色。
面部形状的雕刻过程将是整体工作流程的最佳示例。
需要注意的一个极其重要的方面是皮肤的滑动。面部表情不是随心所欲地雕刻在脸上的。您需要尊重面部的拉伸和皱纹,以体现真实感,避免面部特征“游动”。
注意线框来可视化皮肤滑动。皱纹和其他细节必须在整个面部形状中保持一致。
我们首先雕刻形状键,而不是雕刻图层。这有助于忽略细节,首先关注整体体积和表面的移动。它还提供了一个更快、响应更快的环境来雕刻和滑动图层。
提示:“启用线框作为覆盖层可以很好地提醒皮肤滑动的位置。”
此工作流程与 风格化角色工作流程 中描述的工作流程非常相似。您还可以在那里找到更多详细信息。
我们没有测试但值得研究的另一种方法是先详细雕刻表情,然后映射皮肤滑动以匹配表情。这将使表情雕刻过程更加自由和快速,但需要将雕刻细节从原始雕刻重新映射到皮肤滑动调整网格,这很繁琐。
掌握形状键上任何特定点的变形程度并不容易。虽然可以通过滑动形状键影响来估计,但我们开始使用不同的方法。

拉伸覆盖示例文件的屏幕截图。设置相当原始,但足以通过热图可视化任何拉伸。
使用几何节点可以将顶点位置与对象的复制原件进行比较。然后可以将此信息转换为颜色属性并在视口中可视化。这样,跟踪和平均变形就变得更容易了。
您可以在此处下载几何节点设置:
Blender 文件 - 1.7 MB - CC-BYstretching_gn_overlay.blend
文件中有更多信息和说明。
一旦一般的皮肤滑动和体积变形完成,就该进行更详细的了解了。
要将形状键转换为雕刻层,只需创建一个新层、启用形状键并使用“保存层”即可。操作员将保存当前视觉几何图形与启用的雕刻层中组合的已保存几何图形之间的任何差异。
一旦所有形状键都被保存为雕刻层,您就可以禁用并忽略形状键。
提示:“如果需要的话,保留它们以备日后使用可能会有好处。 只需用复选标记禁用它们,而不是删除它们。”
在这个阶段,我们严重依赖照片和视频参考。我们确实有一个真人模特和其他各种特写视频参考,但不幸的是我们不能分享这些。
我们可以分享的是为视频拍摄创建的简介。这有助于获得正确且有用的参考:
Blender 文件 - 7.1 MB - CC-BYfacs_guides.zip

facs 拍摄指南包含 23 张照片,我们用它们来传达我们需要哪些参考镜头。然后将其传递给我们的模型。
详细的特写参考将有助于描绘出表情过程中发生的各种细微变化和皱纹。这需要大量的工作和时间才能做好。
注意皮肤的滑动。不要只是发明折痕和细节。
由于在多分辨率修改器细分上尚无法进行绘画,请尝试在单独的雕刻层上绘制出重要的重复细节,并在需要时将其混合作为指导。

通过塑造在各种表情下保持一致的小皱纹,您可以确定需要塑造常见皱纹的位置以及体积压缩的位置。这也有助于保持皮肤滑动一致。
对于 Project Heist,形状被雕刻成 2-3 个细分,以获得合理的细节量。超过这个细分的部分将保留用于毛孔和皱纹等三级细节,并且不会再对总体比例产生太大影响。
另一种完全不同的方法是使用扫描数据作为雕刻的基础。但当时我们无法做到这一点,而且这也会严重影响角色设计创作。
为什么我们到这个时候才真正关注皱纹和衰老迹象,这是有原因的。

鼻子上的默认表情和冷笑表情之间的对比。有些皱纹默认保留,而其他皱纹仅通过添加形状才压缩。
在现实生活中,我们的皱纹和面部特征很大程度上受到我们一生中面部使用方式的影响。如果我们经常微笑,就更有可能出现鱼尾纹和深深的笑纹。额头、脸颊和颈部以及面部其他经常移动的部位的皱纹也是如此。
在设计角色时,塑造衰老和皱纹至关重要,但现在重要的是要非常准确和逼真。
研究老年人的肖像和皱纹的走向。利用这一点,在脸上勾勒出皱纹的细微图,暗示皱纹的走向和最明显的地方。
通过打开和关闭这些流动指南进行比较,确保它们符合面部形状。最后,您应该对皱纹应该形成的位置有一个很好的了解。如果结果看起来不正确,则进一步迭代表情形状。
塑造皱纹的过程就是塑造形状和皱纹的过程。它们相互影响,塑造过程类似于一个人随着时间推移而衰老的过程。
之前我们提到过 ABC 皱纹图方法 来实现表情的位移细节。这仍然可以在形状方法中用于凹凸图中的三级皱纹细节。

三个 ABC 皱纹雕刻层是分开的。每个层都会在不同方向上添加细微皱纹,或者当两个层交叉时也会添加细微皱纹。
确保在三个不同的层上雕刻皱纹:
第三层很有用,因为前两层的结合通常会形成独特的皱纹。例如,当用额头看起来忧心忡忡时,通过拉起眉毛并推挤眉毛中心,就会形成交叉和弯曲的皱纹
皱纹图由 5-6 个细分构成。这样可以提供最详细的细节,甚至在需要时还可以与毛孔和肤色进行细微整合。
最终通过这个过程,您将得到最终的皱纹和形状层。