查看: 4576|回复: 1
收起左侧

[已翻译] 教程:基于物理规则的渲染,你也可以做到!

[复制链接]

[已翻译] 教程:基于物理规则的渲染,你也可以做到![复制链接]

是顾及啊 发表于 2018-4-9 15:02:04 [显示全部楼层] |只看大图 回帖奖励 |倒序浏览 |阅读模式 回复:  1 浏览:  4576
译者:崔嘉艺(milan21) 审校:陈敬凤(nunu)
这个教程将会覆盖美术资源创作的基本概念、各种基于物理规则的渲染标准背后的一些原因(只是平常的谈论下,不会过于技术化的讨论这些问题)以及澄清一些通常的误解。Jeff Russell写了一篇非常棒的教程《基于物理规则渲染的基本理论》(http://www.marmoset.co/toolbag/learn/pbr-theory),我强烈推荐首先阅读下这篇文章。
本文得到了Jeff RussellTeddy BergsmanRyan Hawkins的帮助。也要特别感谢Wojciech Klimas和Joeri Vromman卓越的洞察力和超赞的艺术感染力。
全文内容:
l  游戏行业新的标准
l  输入和术语
n  能量守恒
n  菲涅尔系数
n  环境光遮挡
n  曲度信息
l  查找材质的值
l  创建纹理资源
l  参考文献

游戏行业新的标准
由于硬件计算能力的提升以及美术资源制作标准化的广泛需求,基于物理规则的渲染迅速变成游戏行业新的标准,它的目的在于帮助我们重新定义该如何创建和渲染美术资源。
基于物理规则的渲染(PBR)这个概念是指使用逼真的阴影/光照模型与测得的材质参数值一起准确地表示真实世界的材料。
基于物理规则的渲染(PBR)更多的是一个概念,而不是一套严格的规则。因此,基于物理规则的渲染系统的具体实现往往有所不同。但是因为每个基于物理规则的渲染系统都是基于同一套理论基础(尽可能准确地渲染物体)。许多概念可以轻松在项目之间或者引擎之间进行转换。Toolbag 2引擎支持绝大多数你期待在基于物理规则的渲染系统应该拥有的输入。
除了渲染的质量意外,一致性是使用测量值作为渲染基础的最大原因之一。拥有一套一致的基本材质能够让材质创建这个非常个人化的艺术化行为变得统一起来,减少猜测和协调的过程,从艺术的角度这种做法也是有益的,它能够确保一个美术团队创建出来的资源在各种光照条件下看起来都不错。

基于物理规则渲染的常见问题(FAQ)
在我们开始学习基于物理规则的渲染之前,了解下人们在谈论基于物理规则的渲染时候都会说些什么是非常重要的。
1)  我不知道怎么使用基于物理规则渲染的系统,我需要学习如何使用这个系统来创建美术资源么?
在大部分情况下,并不需要。如果你有使用上一代动态的逐像素光照着色器的经验的话,你已经拥有足够多必需的知识来为基于物理规则的渲染系统创建资源。术语往往是阻挡艺术家了解新技术的最大绊脚石之一,所以我专门用了一节来描述各种术语,并对每个术语进行解释。这里面的大多数概念是简单和容易理解的。

如果你的经验主要在于手绘/移动方面的工作,学习这里列出的新的技术和工作流程可能是一个更大的挑战。但是,应该不会比学习传统的法线贴图工作流更加的困难。
2) 艺术家需要为每个他们想要创建的材质用偏光摄像系统捕获逼真的参考数值么?
不需要,通常情况下你会被提供一份你的工作室准备的普通材质的参考数值。另外,你也可以从各种第三方那里获得一些参考数值,比如Quixel的Megascan服务。创建自己的扫描数据是一个非常要求技术也非常耗时的过程,并且在大多数情况下是没有必要的。
备注:Megascan是拥有成千上万的基于物理材料扫描的3D素材庞大的在线图书馆。它能将现实景物的外观扫描并生成高还原度的贴图材质,从而让3D模型的最终渲染效果更上一层楼。
Megascan的目的是为艺术家们提供了新一代的素材库,迎来CG进入一个新的时代。该库的要求不断提高,每一天几十个新的扫描添加。每个材料扫描无缝瓷砖,2×2米,4-16K,HDR,和校准所有常用BRDFs。前所未有的范围完全分离物质成分已被扫描的每种材料,与整个库是一致的校准。每一个资产分级为VFX以及实时使用,为方便用户使用的。 在Megascan订阅模式提供了多种级别的访问权限为单一的艺术家,从入门级到高端专业用途。工作室可以授权对每个项目的基础服务,为不受限制的商业用途。
3)如果我使用一个基于物理规则渲染的着色器,是否意味着我创建的美术资源在物理上是准确的?
并不一定是这样。只是简单的使用基于物理规则渲染的着色器并不能让你创建的美术资源在物理上是准确的。一个基于物理规则渲染的系统是需要物理上精确的光照、渲染和正确校准的美术资源的结合。
4)我需要给材质使用金属质感的贴图来使得材质是基于物理规则渲染的么?
不需要,一个金属质感的贴图仅仅是确定反射率的其中一个方法,一般不会比使用镜面颜色/强度贴图从物理上来说更加准确。
5) 我需要在材质上使用折射率(index of refraction,IOR)来让材质基于物理规则进行渲染么?
不需要,与金属质感的贴图作为输入一样,折射率仅仅是定义折射率的另外一种方法。
6) 高光贴图这些系统是不是不再需要了?
并不完全是这样。在基于物理规则渲染的系统里面高光的反射强度或者说反射率仍然是非常重要的参数。你可能没有一个贴图来直接设置反射率(比如,使用了一个带金属质感的贴图),如果是这样的话,基于物理规则渲染的系统就仍然需要这么一个参数。
小提示:高光贴图在定义上是针对某特定的角度范围反光,而不是全范围的漫射光。基本上高光的亮度是取决于面的法线方向、摄像机和光源的平均方向,除此之外,高光贴图还可以反映不同的材质,例如金属的反光范围较小,比较接近全漫射光,而且高光还可以体现结构的光滑程度。由于需要考虑的因素较多,高光贴图如果直接由凹凸贴图或彩色贴图去色直接生成,都无法准确地反应细节上的细致程度,所以高光贴图还是需要一定程度的手绘来加强其效果
7)光泽贴图可以代替高光贴图么?
不可以,光泽贴图或者说是粗糙度贴图定了材质的微表面情况(材质的表面到底是有多么的粗糙或者有多么的光滑),不能取代高光贴图。但是,如果你不习惯使用光泽贴图的话,可能需要做某些调整来把一些光泽贴图的细节添加到高光贴图里面去。
8)一个基于物理规则的渲染系统可以用于创建带有强烈个人风格的美术作品?
是的,一点也没错。如果你的目标是创建一个梦幻般有自己独特风格的世界,有准确的材质定义是非常重要的。即使你创建的是一个放屁都带着彩虹的独角兽,你仍然希望那个独角兽材质的表现能够符合光和物体的物理作用结果。
这个方面的一个很好的例子是皮克斯的工作,这是非常具有强烈个人风格的,但往往站在材料的准确性的前沿。这里有一篇关于基于物理规则的渲染方面的很棒的文章:《怪物大学:基于物理规则渲染怪物》。

输入和术语
那些不熟悉基于物理规则的渲染系统概念的艺术家通常认为内容创作与基于物理规则的渲染系统是截然不同,造成这种看法的原因通常是因为使用的术语完全不同。如果你已经拥有在现代着色器和资源创建技术上工作的经验,那么其实你已经对很多基于物理的渲染的概念有所了解。
搞清楚要创建什么类型的内容,或者如何将你的内容添加到基于物理规则的渲染中的着色器可能容易造成混淆,所以这是一些方便你入门的常见术语和概念。

能量守恒
能量守恒的概念指出一个物体反射的光的能量不能比它接收到的光的能量更多。
这种能量守恒是基于物理着色的一个重要方面。它允许设计师为材质调节反射率、漫反射率值时不必担心因为某些意外违背物理规律(之前这通常会导致物体看上去很糟糕)。同时,代码里产生看上去好的效果时也不必再严格实施这些限制(译者注:指校验设计师给出的反射、漫反射值,防止人为的错误)。它就像一个“保姆物理学家”一样,防止作品偏离规则太远或者在不同光照条件下变得不一致。
出于实用的目的,更分散和粗糙的材质将会把高光反射的更模糊范围更广,而越光滑反射率越高的材质将把高光反射的范围更小更明亮。
漫反射
漫反射决定了基本的颜色,通常被称为漫反射贴图。
漫反射,是投射在粗糙表面上的光向各个方向反射的现象。当一束平行的入射光线射到粗糙的表面时,表面会把光线向着四面八方反射,所以入射线虽然互相平行,由于各点的法线方向不一致,造成反射光线向不同的方向无规则地反射,这种反射称之为“漫反射”或“漫射”。这种反射的光称为漫射光。很多物体,如植物、墙壁、衣服等,其表面粗看起来似乎是平滑,但用放大镜仔细观察,就会看到其表面是凹凸不平的,所以本来是平行的太阳光被这些表面反射后,弥漫地射向不同方向。
漫反射贴图定义了漫反射光的颜色。漫反射贴图在基于物理规则的渲染系统和传统的漫反射贴图的最大区别之一就是缺少了方向光或者说是环境光遮挡(ambient occlusion)。在某些光照条件下,方向光看起来不正确,而环境光遮挡应该添加到单独的环境光遮挡槽里。
漫反射贴图有时候定义了比漫反射颜色更多的东西,比如当使用一个金属贴图的时候,漫反射贴图给绝缘体(非金属)定义了漫反射颜色,而对金属表面定义了反射率。
微表面
微表面定义了材质表面的粗糙或者光滑程度。大多实际的表面有非常小的瑕疵:细小的凹槽,裂纹,眼睛不可见的小块,还有连法线贴图都无法表示的细节(法线贴图必须控制在一个合理的分辨率)。虽然肉眼看不见,但这些为特征仍然影响着光的漫射和反射。微表面的细节在反射上有最显著的效果(表面的漫射影响不大,这里将不再讨论)。在上面的图中,你可以看见入射的平行光在粗糙表面反射后分叉,因为不同射线投射到了不同方向的表面。就好比把球扔向一面悬崖或者类似的不平的地方:球还是会反弹,但在一个不可预知的角度。简而言之,表面越粗糙,更多的反射光将会发散或出现“模糊”。
不幸的是,由于资源制作效率、内存占用、计算量的原因,着色时计算每个微表面是不可行的。怎么办呢?如果我们放弃直接描述微表面细节,转而指定一个粗糙程度的一般度量,我们能准确地写出类似结果的着色器。这个度量我们通常叫做“光泽度”、“光滑度”,或“粗糙度”。它可以在材质中用一个贴图或一个常量来指定。
由于真实世界充满了大量微表面特征,微表面细节是任何材质一个非常重要的特性。光泽贴图不是一个新概念,但由于微表面对光反射有如此重大的影响,它在基于物理渲染中担任了一个重要的角色。就像我们马上将要看到的,PBR着色器系统对微表面属性的几个方面做出的改善。
这里我们看到的是能量守恒原理如何被材质的微表面所影响,粗糙的表面将光反射的范围更加宽广,但是会减弱高光反射,而光滑的表面会将光反射的范围变得更窄,但是高光反射会更强。
取决于你用什么引擎进行资源内容创作,你的纹理可能被称为粗糙度贴图而不是光泽贴图。事实上,这两种贴图是有一小点区别的,尽管粗糙度贴图可能只是光泽贴图的一个反转,比如说:深颜色的值对应光泽/光滑的贴面而明亮的值对应粗糙/磨砂表面。默认情况下,Toolbag使用白色来定义最光滑的表面,如果你正在加载的光泽度/粗糙度贴图并且需要进行倒置,可点击光泽模块中的反转复选框。
反射率反射率是表面反射的光占入射光的百分比。各种类型的反射率(也就是基础反射率或者说F0)输入,包括镜面、金属和反射率,定义了垂直入射时候的反射率,而菲涅尔定义了掠射角与表面的反射率之间的关系。
需要注意的是对于绝缘材料,反射率范围是比较狭窄。与能量守恒的概念相结合,很容易得出这样的结论:表面的变化一般应该用微表面贴图,而不是反射率贴图来表示。对于给定的材质类型,反射率倾向于保持稳定。对于绝缘体来说,反射颜色趋于中性/白色,而带颜色的反射颜色一般仅用于金属材质。因此,如果一个贴图专注于反射强度/颜色的话,在有金属贴图的情况可能会被丢弃掉当使用金属贴图的时候,绝缘体的表面会被分配一个固定的反射率值(线性:0.04 sRGB:0.22),在金属贴图中对应的像素点设置为0.0(黑色), 使用漫反射图来提供漫反射值。而对于金属表面,其在金属贴图中对应的像素点设置为1.0(白色),高光颜色和强度从漫反射贴图中获取,着色器中的漫反射值被设为0(黑色)。金属贴图中的灰色值将被视为部分金属材质,会从漫反射贴图中拉取反射率值,并成比例的将漫反射值变暗(部分金属材质并不常见)。
再次强调一遍,金属贴图并不比一个标准的高光贴图更加准确。然后它是一个可能更加容易理解的概念,而且金属贴图可以被压缩到灰度图的槽位来节省内存。使用金属贴图来代替高光贴图的缺点是会损失对绝缘体材质精确取值的控制。
传统的高光贴图对于高光强度和颜色提供了更多的控制,并在试图重现某些复杂的材料时,允许更大的灵活性。高光贴图的主要缺点是这个贴图经常被保存为24位每个像素点的文件,这导致了更大的内存使用。它还要求艺术家对于物理材质属性有一个非常好的理解这样才能把值设对,这个事情可以是正面的,也可以是负面的,主要取决于你自己的观点和判断。
专业提示:金属贴图的取值区间应该在0到1之间(如果过渡需要一定等级的变化是没有问题的)。像涂漆的金属材质不应该被设认为是金属材质,因为油漆是绝缘体。金属贴图取出来的值应该用来表示材质最上层的情况。
折射率是另外一种定义反射率的方法,并和高光反射以及金属贴图这些方法的效果差不多相同。这种做法最大的区别就是折射率是由一个比值来决定的。反射系数的大小决定了光通过这个材质的速度与光在真空中传播速度的比值。折射率的值为1.33(水的折射率就是1.33)就意味这光在水中传播的速度比光在真空中传播速度要慢上1.33倍。你可以在Filmetrics的折射率数据库找到更多的测量值。
对绝缘体而言,折射率(IOR)并不要求颜色信息,而且可以直接进入索引字段,而衰减值的字段应该设置为0。如果金属的反射需要带颜色的话,你需要为红色、绿色和蓝色通道分别设置一个值。这可以用一个纹理贴图作为输入(贴图的每个通道都包含着正确的值)。金属的衰减值同样也需要进行设置,这个你通常可以在包含折射率值得库里面进行寻找。
一般不建议使用折射率贴图来代替高光贴图或者金属贴图,因为它一般不用于游戏开发,得到多种材质类型的正确值是非常困难的一件事情。Toolbag 2引擎之所以支持折射率贴图更多是出于实验和完整的考虑,而不是实用的角度。
菲涅尔定律
菲涅尔定律说明在入射余角时光在表面反射的百分比。
当光入射到折射率不同的两个媒质分界面时,一部分光会被反射,这种现象称为菲涅尔反射。如果光在光纤中的传输路径为光纤—空气—光纤,由于光纤和空气的折射率不一样,将产生菲涅尔反射
菲尼尔反射(Fresnel Effect),是用来渲染一种类似瓷砖表面有釉的那种感觉或者木头表面清漆的效果是指当光达到材质交界面时,一部分光被反射,一部分发生折射,即视线垂直于表面时,反射较弱,而当视线非垂直表面时,夹角越小,反射越明显。所有物体都有菲尼尔反射,只是强度大小不同。因此加菲涅尔反射是为了模拟真实世界的这种光学现象
在计算机图形学中,“菲涅尔”指不同的角度将产生不同的反射率。特别的,光斜着射入表面比垂直射入表面更容易发生反射。也就是说一个有适当菲涅尔效果的物体靠近边缘的地方会更亮。我们对这个现象比较熟悉,这在计算机图形学也不是新鲜事。然而,PBR着色器在此基础上对菲涅尔计算方程做了一些修正。
第一,对于所有材质,反射率在入射角临界值达到饱和——任何平滑物体边缘看起来都像镜子一样,与材质无关。是的,只要在恰当的角度观看,任何平滑物体都可以像一面镜子!这可能有点违反直觉,但物理上就是这样。
第二,关于Fresnel属性的第二个现象是:不同材质的反射率/角度曲线差异不大。金属差异相对较大,但也可以分析。
这意味着,如果希望达到非常真实的效果,设计师通常应该减少对“菲涅尔”的人为干涉。或者至少,我们现在知道怎么设置相应的默认值!
菲涅尔系数一般应该设定为1(在金属反射模块中这个值会一直锁定为1),这样所有的材质在入射余角时都对光进行100%的反射。微表面的变化会导致一个更明亮或者更暗的菲涅尔效果自动通过光泽贴图的内容进行控制。
提示:Toolbag 2引擎现在不支持用一张纹理贴图来控制菲涅尔系数的强度。
在Toolbag 2引擎和大部分基于物理规则的渲染系统中,菲涅尔都近似于双向反射分布函数(Bidirectional ReflectanceDistribution Function,BRDF),一般情况下BRDF的实现方式都是Blinn-Phong或者[url=]GGX[/url],不需要额外的输入来进行控制。但是,在Blinn-Phong BRDF实现中,有一个对菲涅尔系数的额外控制输入,这意味着如果使用这个输入的话,那么结果可能在物理上是不那么准确的。
双向反射分布函数(Bidirectional ReflectanceDistribution Function,BRDF)用来定义给定入射方向上的辐射照度(irradiance)如何影响给定出射方向上的辐射率(radiance)。更笼统地说,它描述了入射光线经过某个表面反射后如何在各个出射方向上分布——这可以是从理想镜面反射漫反射各向同性(isotropic)或者各向异性(anisotropic)的各种反射。
光线照到一个物体,首先产生了反射,吸收和透射,所以BRDF的关键因素即为多少光被反射、吸收和透射(折射)了,是怎样变化的。这时的反射多为漫反射。而要知道这些光线反射透射的变化就需要清楚三样东西,物体的表面材质、光线的波长(即它是什么样的光,是可见太阳光,节能灯光还是紫外线)和观察者与物体之间的位置关系。三维世界角度可以类似是球体的,光线角度除了纵向180°的变化,还有横向360的不同发散方向。会有相应的入射光反射光入射角反射角,它们在物体表面的法平面和切平面上的关系成为了BRDF的关键参数。由于人类眼睛对光的特殊敏感性,我们之所以能看到物体都是通过光线在物体上的发射和转移实现的。而双向反射分布这样的函数表示可以更好地描述光线在物体上的变化,反射光线同时发向分布在法线两边的观察者和光源两个方向,从而使人在计算机等模拟环境下,视觉上可以看到更好的物体模拟效果,仿佛真实的物体存在。
环境光遮挡
[url=]环境光遮挡[/url](AO)代表着大范围内对光的遮挡,通常环境光遮挡贴图是从3D模型烘焙而来。
一般是把环境光遮挡(AO)作为一张单独的贴图,而不是把它烘焙到漫反射和高光贴图中,这样就能让着色器以一种更智能的方式使用它。比如说,环境光遮挡(AO)函数只遮挡环境漫反射光(Toolbag 2中的基于图像的照明系统的漫反射光分量),而不会对任意种类的动态光或者高光反射进行直接的漫反射。
环境光遮挡(AO)贴图一般不直接与高光贴图或者光泽贴图叠加。将环境光遮挡(AO)贴图与高光贴图相叠加在过去是一种常用的技术用来减少不恰当的反射(比如说一个被遮挡的物体对天空的反射)但是现在都是使用屏幕空间的反射,它在处理物体间反射的时候效果棒多了,以前那种需要把环境光遮挡(AO)贴图与高光贴图叠加的方式已经不再需要了。
曲度信息
曲度信息贴图代表小规模的多次反射光照,通常是由一个三维模型或法线贴图烘焙而成。
曲度信息贴图应该只包含凹区表面(凹坑),但不应该包含凸状区域,因为曲度信息贴图是与其他贴图相乘得到最后的渲染结果。曲度信息贴图里面大部分的内容应该是白色的,因为深色的区域代表了凹陷区域,光会困在里面无法出来。曲度信息贴图会影响环境和动态光源的漫反射和高光反射。
可以用反射阻挡贴图来代替曲度信息贴图,它可以加载到曲度信息卡槽,但是如果这么做的话请确保设置漫反射曲度信息为0。
查找材质的值
在使用基于物理规则的渲染系统的时候,其中一个最困难的挑战就是给材质找到准确一致的值。互联网上有各种各样的源提供测量值,但是,找到一个有足够信息可以依靠的库仍然是一个非常困难的过程。
Quixel的Megascan服务就非常的有用,因为它们提供了海量的从真实世界扫描出来的校准平铺纹理。
大部分库里面材质的值往往是在实验室情况从原材料测量而来的,这种状态其实你在现实生活中很少能够遇到。像材料的纯度、年龄、氧化以及磨损可能导致给定材质在现实世界里面的反射率会发生一些变化。
而QUIXEL扫描测试的是现实世界中的材料,即便是同一种材质根据上述提到的各种条件它们的值也会经常有变化,特别是这些值涉及到光泽度/粗糙度的时候。上述图表中的值更应该被认为是资源创作的起点,而不是严格不能改变、绝对基准的。
创建纹理资源
在基于物理规则的渲染系统里有很多种不同的方法来创建纹理资源。你选择哪种确切的方法取决于你的个人喜好以及哪些软件你现在是可用的。下面是我用来制作上面镜片的方法的一个快速回顾:
首先,在Toolbag引擎里面为每个表面类型创建一个基础材质,材质的参数会综合来自 Megascan提供的平铺纹理的参数、已知材质的测量数据。这样对于那些缺少合适的参考的材质,也能通过逻辑推理和观察来确定材质的值。在Toolbag引擎创建基础的材质允许我快速调整参数值并且对最终结果提供一个非常准确的预览。我经常直接把基础材质赋给我的高摸,以便得到一个清晰的结果告诉我纹理和模型结合的结果是怎么样的,在我们进行最终的烘焙之前知道这个结果是非常便捷的,可以很方便来不停调整参数,烘焙太慢了,如果要等到最终的烘焙,那么浪费的时间就太多了。
设置好我的基本材质以后,我会把参数值和纹理在Photoshop打开,并开始按照某种逻辑对它们进行分层。黄铜会在最下面,然后依次是镀镍、磨砂底漆、半光泽质感油漆、涂料的刻字,最后是红色光泽的塑料。这种分层设置提供了一种简单的方法来从简单的蒙版下面露出下面的各种材料。
类似的分层功能可以使用一些应用程序来实现,比如dDo、Mari和Substance Designer都提供了这种分层功能。
我把基础层建立好以后,就将它们混合在一起来代表不同阶段的磨损,然后我还添加了一些额外的细节。首先,我使用dDo生成一个灰尘和污垢的渲染效果,然后我通过使用光泽贴图里面的值来让这个效果变得更加完善。
[url=]你在基于物理规则的渲染系统里面到底使用哪种方法其实远没有最终结果重要。所以请随意实验,找出哪种方法能产出你最满意的结果。但是你应该避免在某个特定光照环境下调整材质的参数值来让材质看的更漂亮。为你的材质选取良好的基础值可以极大的简化这一过程,让大型项目的美术资源创造更加具有一致性也更容易重用,并且将确保你的材质无论在什么光照环境下都看起来非常棒。[/url]
[url=]
[/url]
[url=]
[/url]
艺术家关于基于物理规则的渲染系统的问答
自从Toolbag 2发布以来,有一些作品让我们印象非常深刻,我们想趁着这个机会来介绍一些出色的作品,并问创作者一些有关基于物理规则的渲染的问题。
Wojciech Klimas
Wojciech Klimas是一个来自波兰的艺术家,目前在DNV工作,现在在为调查模拟器项目工作。Wojceich也做一些自由职业方面的工作。点击这里查看他的作品:www.wklimas.weebly.com
问:在适应基于物理规则渲染的工作流的过程中哪个方面是最困难的?
答:我觉得要记住的最难的事情是保持正确的漫反射率、反射率和粗糙度值。你可以针对某个特定的光照条件来调整数值或者采用一些欺骗的方式来让材质看上去很好看,但是这会导致它们在其他的光照条件上看上去很糟糕。如果你用正确的做法处理这个事情,并且各个值在物理上都是准确的,那么材质会在各种光照条件都表现的很好,不会有比真实物体看上去更好的情况存在了。 DSC00014.jpg
在最开始进行创作的时候,我会在一个屏幕上打开Photoshop,在另外一个屏幕上会打开一个表格,里面记录着各种材质的反射率。但是很快就会熟悉这些值,就没有必要再频繁的去检查这些值了。
问:你如何决定你的材质该使用哪个值?
答:通过在网络上查找这个值。通过自己做实验来测试这些值超出我的能力范围,但是我愿意在力所能及的范围自己尝试下,因为我感觉在这个过程中我学到了很多知识。
问:你能分享一些让效果看起来这么棒的小诀窍么?
答: 这是一个很难回答的问题。我能给的最好的建议是学习物理。它确实有助于理解为什么材料是这么表现的。要把作品做的很棒并没有什么捷径,你只需要练习、练习再练习。
Joeri Vromman
Joeri Vromman是一位来自Belguim的艺术家,目前在DAE读书,他在学习之余也做一些自由职业者的工作。查看他更多的作品请访问这个网站: www.joerivromman.com
问:在适应基于物理规则渲染的工作流的过程中哪个方面是最困难的?
答:最困难的部分是融合各个来源传递过来的信息,作为一个单独工作的艺术家,我接触不到那些工作室拥有的工具和资源,这最初让我非常眼热。但是你一旦深入进去并且开始熟悉整个工作流程以后,融合各个来源传递过来的信息就变得很快了。随着经验的累积,会看到这一步并不总是非常困难的,可以更快的制作基于物理规则着色器的纹理。
l  为每种材质类型做一个大致的模型,这并不一定是准确的,但应该足够接近最终效果,让你有一个良好的基础可以进行调整。对于每一种材质,我会从反射系数开始设置,这些系数可以在不同的网站里面的图表中找到,如果我不能找到某种材料的反射率值,我会尝试用逻辑推理来确定这种材料的反射率(比如说废旧橡胶的反射率会比较低,黄铜的反射率会在铜和锌的反射率之间,等等)。
反射率是最容易下手的地方了,并且设置好反射率会给你的其他贴图打下一个良好的基础。对于绝缘体来说,重要的是让反射率的值保持在非金属反射率所在的范围内。对于金属来说,重要的是让漫反射的颜色首先是黑色,然后再去找合适的反射率。然后,我会给材质赋予一个大概的粗糙度,通常是把材质分类成3个类型(有光泽的、中间状态或者粗糙的)。然后,我选择了一个漫反射的颜色,这里要注意尽量保持一致性,不能让颜色太暗。我还会切换各种天空来确保材质在各种光照条件下看起来都是一致的。一旦这个初始阶段结束,我会重新开始微调并观察这些值,因为每种材质都是不同,在微调的时候要牢记基于物理规则渲染的概念。在这个阶段,如果创造的材质是有很强表面变化的材质,比如坑坑洼洼的塑料,我喜欢添加一个基本的覆盖到法线贴图上。
重要的是记住反射率贴图里面的值只有当材质实际发生变化的时候才需要进行改变。
问:你能分享一些让效果看起来这么棒的小诀窍么?
答:在我看来,尽管有些事情已经变得更加容易了(比如可以挑选反射率),但是这并不意味着你可以仅仅依靠这些就能完成工作。要让材质看起来漂亮有说服力的关键仍然在于观察,并且能够把你观察到的结果有效的在你的材质中体现出来。
参考文献:
l  Sebastien Lagarde 《采用基于物理规则的渲染模型》
l  Sébastien Lagarde 《RememberMe
中的游戏环境渲染》
l  PPT:《Unreal4的真正渲染》
l  Mike Seymour:《怪物大学:基于物理规则渲染怪物》
【版权声明】
原文作者未做权利声明,视为共享知识产权进入公共领域,自动获得授权。

原地址:[url=http://www.marmoset.co/toolbag/learn/pbr-practice]http://www.marmoset.co/toolbag/learn/pbr-practice

原作者:Joe “EarthQuake” Wilson


+1
4570°C
1
  • snakebbf
过: 他们
因分享而快乐,学习以自强!
snakebbf 发表于 2018-4-9 19:14:26 显示全部楼层
谢谢分享!!!!
因分享而快乐,学习以自强!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

VR/AR版块|Unity3d|Unreal4|新手报道|小黑屋|站点地图|沪ICP备14023207号-9|【泰斗社区】-专注互联网游戏和应用的开发者平台 ( 沪ICP备14023207号-9 )|网站地图

© 2001-2013 Comsenz Inc.  Powered by Discuz! X3.4

1
QQ