5.PBS材质、标准Shader和贴图
材质定义了光如何作用于模型的表面
unity 基于物理的Shader(PBS)是继法线贴图之后的一项伟大技术,在你深入了解自定义Shader和可编程渲染管线之前,你最好首先了解unity自带的PBS
对于DDC软件建模人员来说,绝大多数情况下,只需要Albedo, Smoothness, Normal Map 和 AO
4张贴图,一个模型的表现就已经足够好了。
5.1 Standard VS Standard Specular
-
一般情况下,使用Standrad比较简单: 高光和颜色是根据Albedo、Smoothness和Metallic自动计算出来的。
- Metallic=1时,Albedo(包括高光和亮度)和光滑度(Smoothness)共同决定了物体表面的亮度和光泽度:
- Metallic=0时,Albedo不影响高光,仅显示为物体本来的漫反射颜色。
-
Smoothness定义了模型的光泽度Glossiness(或粗糙度(Roughness)),存储在金属度贴图(Metallic Map)的α同道中。
Standard Specular Shader,在你想表现很强的高光效果时,可以用,一般用来表现一些比较极端的材质。
-
Albedo,翻译过来就是反射光的意思,它同时包括了直接反射和间接反射光:
-
Albedo的颜色越白,反射的光就越多:
-
-
albedo的颜色导致怎样设置比较合适呢?没有一个固定的参数,不过以下这张图可以大致确定这个范围:
但是仅仅靠肉眼去判断这个范围是不大可靠的,还好我们有这个检测工具,:
切换到这个选项卡后,场景中albedo超出范围的会显示为红色:
- Metallic : 决定了物体表面接收多少环境反射光,同时也决定有多少albedo可见。如果一个物体是纯金属,albedo光就是环境反射。
- 纯金属不反射任何光,如果你的场景完全是纯金属构成,它将一片漆黑,只能看到高光光源。
-
一个物体的哪些部分应该表现为金属,哪些部分不是金属有时会比较难办,比如,一个被油漆或者灰尘覆盖的金属表面,应该是只有那些没有被覆盖的部分表现为金属,下图的例子中,法线贴图(决定大的凹凸)、光滑度贴图(决定表面的细节)、高光贴图(决定哪些部分反光最厉害(金属))得到了最左边的效果
-
上图中,Specular贴图将和Smoothness贴图将会被合成为一张图,前者应该占据红色通道(red chennel)而后者将占用alpha通道。这张贴图将会被挂在PBS的Metalic插槽中。共同决定物体的金属度。
Normal 法线贴图:用来给物体增加大量细节,这个没什么好说的,咱们已经用了很多年了。
-
Occlusion 贴图,又名遮挡贴图、AO贴图:表现物体的凹面阴影,大家都理解是什么意思:
一个问题是,既然我们已经有了烘焙和SSAO,为什么我们还需要物体自己的AO?
- 首先,物体自身的AO往往质量更好
- 其次,动态物体时无法参与烘焙的,而光照探针并不负责AO,所以对于场景中的动态物体,带有自己的AO是不二选择。
- 参考图片拍摄注意事项:
- 很多时候并不是一定要去现场拍摄实物图片,如果google就可以解决问题,那google就可以
-
如果去现场,一定记得带着你的灰度色卡,