主要参考链接: https://zhuanlan.zhihu.com/p/389358147
一、什么是PBR
PBR渲染:PBR全称(PhysicallyBased Rendering)。笼统地说,这是一种基于物理规律模拟的一种渲染技术。最早用于电影的照片级真实的渲染。近几年由于硬件性能的不断提高,已经大量运用与PC游戏与主机游戏的实时渲染。
PBR有两种主要的工作流(指数据以何种形式输入到引擎中)
- Metallic/Roughness(金属值/粗糙度);
- Specular/Glossiness(镜面反射/光泽度)
PBR的关键要素:
- 能量守恒,反射的光线永远不会比照到表面的入射光线更亮。
- 菲涅尔。非金属的F0值变动很小,只在2%-5%区间内;而金属的F0值范围在70%-100%。
- Specular强度通过BRDF、roughness或者glossiness贴图和F0反射值来控制。
- 光照计算是在线性空间计算的。
一个好的PBR作品,会把物质的颜色、粗糙度、高光属性等进行分别处理,使得物质体现出更真实的感觉。
二、贴图介绍
Diffuse(漫反射贴图):漫反射贴图在游戏中表现出物体表面的反射和表面颜色。换句话说,它可以表现出物体被光照射到而显出的颜色和强度
Norma(法线贴图):可以给贴图增加立体感,它本质上不改变模型的形状,而是通过影响模型表面的影子来表达凹凸效果。在游戏中有两种不同类型的凹凸贴图,法线贴图(normalmap)和高度贴图(highmap)
Specular(高光贴图):用来表现当光线照射到模型表面时,其表面属性(如金属和皮肤、布、塑料反射不同量的光)从而区分不同材质。材质的反光程度的强弱。(强弱度是指,如果这张高光贴图去色成为黑白图,图上越白的物体反光能力越强,越黑的物体反光能力越弱)
Albedo(固有色):物体在无光照情况下材质原本具有的颜色
Metalness(金属性/金属度):使用黑白灰颜色来定义材质类似金属的程度(白色为完全金属,黑色为非金属)
Roughness(粗糙度):使用黑白颜色来定义材质的粗糙度(白色为完全粗糙,黑色为光滑)
Glossiness(光滑度):使用黑白灰颜色来定义材质的光滑程度。(白为完全光滑,黑为粗糙)