剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染 (13)

主法线和微观法线分别经过NormalStrength和MicroNormalStrength缩放后(注意,法线的z通道数据不变),再通过材质节点BlendAngleCorrectedNormals将它们叠加起来,最后规范化输入到法线引脚。(见下图)

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

不妨进入材质节点BlendAngleCorrectedNormals分析法线的混合过程:

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

从材质节点上看,计算过程并不算复杂,将它转成函数:

Vector3 BlendAngleCorrectedNormals(Vector3 BaseNormal, Vector3 AdditionalNormal) { BaseNormal.b += 1.0; AdditionalNormal.rg *= -1.0; float dot = Dot(BaseNormal, AdditionalNormal); Vector3 result = BaseNormal * dot - AdditionalNormal * BaseNormal.b; return result; }

另外,Normal Map Blending in Unreal Engine 4一文提出了一种更简单的混合方法:

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

将两个法线的XY相加、Z相乘即得到混合的结果。

2.4.6 环境光遮蔽(Ambient Occlusion)

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

AO控制非常简单,直接用贴图T_head_sss_ao_mask的R通道输入到AO引脚。其中T_head_sss_ao_mask的R通道如下:

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

可见,五官内部、下颚、脖子、头发都屏蔽了较多的环境光。

2.5 皮肤贴图制作

前面可以看到,皮肤渲染涉及的贴图非常多,多达几十张。

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

它们的制作来源通常有以下几种:

扫描出的超高清贴图。例如漫反射、高光、SSS、粗糙度、法线等等。

转置贴图。比如粗糙度、副法线、微观法线等。

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

粗糙度贴图由法线贴图转置而成。

遮罩图。这类图非常多,标识了身体的各个区域,以便精准控制它们的各类属性。来源有:

PS等软件制作。此法最传统,也最容易理解。

插件生成。利用Blend Shape、骨骼等的权重信息,自动生成遮罩图。

剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染

Blend Shape记录了顶点的权重,可以将它们对应的UV区域生成遮罩图。

特别说明

本系列还有眼球、毛发、其它身体部位的分析,未完待续

感谢参考文献的作者们。

参考文献

Next-Generation-Character-Rendering (ACM Transactions on Graphics, Vol. 29(5), SIGGRAPH Asia 2010)

Separable Subsurface Scattering

Real-Time Realistic Skin Translucency

《GPU Gems 3》:真实感皮肤渲染技术总结

角色渲染技术——皮肤

细致到毛孔 ! 深度揭秘超真实皮肤的实时渲染技术(上篇)

细致到毛孔 ! 深度揭秘超真实皮肤的实时渲染技术(下篇)

《由浅入深学习PBR的原理和实现》

Fast subsurface scattering

BRDF representation and acquisition

A BSSRDF Model for Efficient Rendering of Fur with Global Illumination

Parameter Estimation of BSSRDF for Heterogeneous Translucent Materials

NVIDIA官方展示HairWorks“海飞丝”(1.1 by Tarkan Sarim)

Q132:PBRT-V3,BSSRDF(双向散射表面反射分布函数)(5.6.2章节、11.4章节)

BSSRDF Explorer: A Rendering Framework for the BSSRDF

BSSRDF Importance Sampling

A Practical Model for Subsurface Light Transport

NEXT Story S02.03 - 虚拟人(1)

虚幻引擎在GDC教你做人

数字人类

照片级角色

次表面轮廓明暗处理模型

Gaussian Models

《Technical Artist 的不归路 —— 线性空间光照》

Kim Libreri畅谈虚拟制片、数字化人物和Epic Games的后续发展

Siren亮相FMX 2018:实时穿越《恐怖谷》

Star Wars

Facial Action Coding System

探究《地狱之刃:塞娜的献祭》(Hellblade: Senua's Sacrifice)背后的理念

EPIC win: previs to final in five minutes

恐怖谷理论

Normal Map Blending in Unreal Engine 4

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyfffj.html