原标题:太震撼!迪士尼公布毛发模型制作技术!
头发和毛皮在动画电影的虚拟世界中无处不在。然而,尽管头发着色模型已经出现二十多年,但头发和毛皮的高效、准确渲染仍然是一个具有挑战性的问题。
光纤组件的几何复杂性和散射光的复杂性使得头发渲染在计算上要求极高且难以控制。随着计算资源的可用性不断增加,渲染转向基于物理的方法变得切实可行。
特别是路径跟踪,因为它的简单性和保真性,近年来在渲染中得到了广泛的应用。然而,使用蒙特卡罗方法模拟纤维组件(头发)中的实际光散射,为头发和毛皮的渲染带来了新的挑战,本文将讨论这些问题。
毛发着色模型
头发着色模型经历了一系列发展,从基于介电圆柱体的临时纤维反射率模型转向物理模型。然而,大多数现有的反射率模型都是在扫描线或简单的光线追踪渲染器的背景下设计的,这些渲染器的着色量级为每像素一次。
相比之下,蒙特卡罗渲染方法和路径跟踪可以为每个像素生成许多(大约数千个)样本,以便通过跟踪针对复杂三维制作场景的路径来实现全局光照。再加上需要分散大量的发丝(大约数百万条),每条路径最终可能会得到数百个头发着色器。因此,单个着色器需要在计算上保持较低成本,以便这种方法实用。
此外,大多数以前的毛发着色模型都是使用材料的物理属性进行参数化的,而不是与其视觉外观直接相关的参数。对于艺术家来说,这样的模型往往难以控制,因此很难快速获得所需的外观。
此外,头发内成倍增加的散射光会在单个纤维着色模型的参数与光纤组件的外观之间产生不直观的非线性关系。
基于物理的单纤维散射模型,允许对路径跟踪的多纤维散射进行有效的蒙特卡罗渲染。这需要从通常用于远场着色模型的散射积分转移到近场积分。
此外,迪士尼使用单个波瓣来近似无限数量的高阶波瓣的散射方法,即使对于非吸收性纤维,也能实现经济实惠的完美制作。模型易于实现,并且在示例中,一小部分渲染时间依然实现了与先前工作几乎无法区分的渲染效果。
吸收系数和粗糙度参数的重新参数化,对艺术家来说更直观,艺术家可实现高效的工作流程,同时保持物理一致性。另外,额外的控制,将实现更广泛的动物毛皮外观。
相关工作
迪士尼的工作人员基于各向异性镜面反射和漫反射分量的组合提出了第一个基于物理的光纤反射率模型,在此基础上进行了显著改进并将发丝作为可吸收的、粗糙的介电圆柱体进行建模。
所有这些模型都被认为是采用远场视角下的双向曲线散射分布函数(BCSDF),其中假设纤维的宽度与其长度相比可以忽略不计,并且散射发生在均质纤维上。
基于单散射模型和双散射的多重散射模型,迪士尼提出了一个对艺术家友好的毛色着色模型。他们考虑了艺术家可控性问题,但是他们的方法较少关注到底层模型的物理约束,并且明确地依赖于双散射,以便在头发中存在多个散射的情况下获得直观的控制。
相比之下,本文的模型直观参数化方法独立于所使用的多重散射方法,并保留了单散射着色模型的基于物理的属性。
模型
模型被定义为一对入射和出射方向上的反射函数。按照惯例,在与纤维轴对齐的球面坐标系中测量方向,θ 测量其纵角,φ 测量其方位角。只考虑具有径向对称性的纤维,因此模型完全由入射倾角 θi,出口倾角 θo 和相对方位角 φ = φo o φi 组成。
理想情况下,控制应直接、直观地与观察到的外观相关。控制也应该最小,但要保持足够的表现力以实现所需的外观。这可能很困难,尤其是在路径跟踪中,大部分外观来自多个散射。在本节中,将介绍如何在着色模型的参数化中实现这些目标。
模型中,头发颜色的主要因素是单纤维 ab 吸附系数。然而,由多次散射引起的毛发体积的 ap 母色与单纤维吸收系数或单纤维透射色并不直观地相关。
颜色参数化的另一个复杂之处在于,方位粗糙度也会极大地影响感知到的颜色。方位角粗糙度实际上表现得类似于散射介质中的相函数。随着较低的方位粗糙度,头发更加倾向前散射,头发体积看起来更暗,饱和,光线被吸收到体积更深处;粗糙度越高,头发向后散射越大,体积看起来更亮,饱和度更低。
艺术家更喜欢直接指定多重散射颜色,例如使用纹理色彩映射表,就像他们为表面渲染所做的那样。从概念上讲,这种映射可以被认为是从其表面反照率中检索半无限参与介质的吸收系数。
人类的头发只有一层均匀的纤维,但动物毛皮往往包括底毛层。底毛往往比顶层更短,卷曲,更多主要用于提供隔热。通常,由于其极端密度,明确地对底涂层几何图形进行建模是不可行的。建议通过阴影来近似下涂层的效果。
头发密度可以被视为参与介质的散射系数。受使用降低散射系数的启发,建议增加方位粗糙度,以实现高头发密度的错觉。
此外,由于毛皮下更卷曲,建议也增加纵向粗糙度以有效模拟毛皮线方向的偏离建立这种近似值后,艺术家可以通过沿着这种假想的底层占据的毛皮长度推测高方位角和纵向粗糙度值来控制底涂层的厚度。
性能
毛皮和头发渲染在计算上是昂贵的。下图显示了一个渲染示例,通过避免昂贵的 70 点高斯正交,能够以大约 20 倍的速度实现毛皮着色,并且这个特定角色的渲染整体时间缩短了 10 倍以上。这使得毛发和头发的路径追踪首次在专业渲染中成为可能,这也意味着进一步的着色优化。
头发和毛皮生产着色器有六个参数:颜色、纵向粗糙度、方位粗糙度、折射的初级反射粗糙度指数和角质层角度。有了这些参数,就能够在路径追踪器中复制各种各样的人类头发和物种。
本文提出了一种新的统一头发和毛皮着色模型,该模型专为渲染中的路径跟踪多纤维散射而设计。该实现与以前的方法类似,但比以前的方法更有效,依赖于路径跟踪中固有的蒙特卡罗集成。
通过仅使用一个波瓣捕获所有高阶内部散射事件,低吸收光纤也可以负担得起节能。文章已经描述了直观感知重新参数化,仅使用六个参数就展示了各种人和动物的结果。
迪士尼未来工作的一个领域是用真实毛皮的反射率曲线来验证模型以及对动物底毛分布进行更准确的建模。文中的 所有图像均使用迪士尼的 Hyperion 渲染器进行渲染。
想要了解更多动画行业内幕与制作技巧,别忘了关注 动画手册的其他精彩文章。
高阶动画技法哪里学
点击阅读原文跳转
↙游戏网
责任编辑: