UE4采用PBR进行渲染,PBR有主要有两个组成部分,分别为Light Properties和Surface Properties。
光属性一般有引擎本身控制,分为以下几种
Direct Diffuse:直接漫反射
Indirect Diffuse:间接漫反射
Direct Specular:直接镜面反射
Indirect Specular:间接镜面反射
Shadows:阴影
Ambient Occlusion:环境光遮蔽
表现属性可由程序员控制,分为以下几种
Base Color:决定物体的Diffuse Color(包括间接和直接)
Normal:法线。法线贴图中的“颜色”其实是法线的FVector
,只是为了可视化以RGB的形式显示出来。即使平面仍然是平坦的,但是法线贴图能让一个平面模拟拥有多个不同方向的法向量,在后期着色阶段时更逼真
无法线贴图,法线由模型决定
有法线贴图,在鹅卵石边缘部分能有不同的反射效果
Specular:镜面反射
如果你站在湖边,低头看脚下的水,你会发现水是透明的,反射不是特别强烈;如果你看远处的湖面,你会发现水并不是透明的,但反射非常强烈。这就是“菲涅尔效应”
Roughness:粗糙度。值越小代表越光滑,即越黑越光滑
Metallic:金属性。通常来讲金属的RPG值都会高于180,如金是(255,219,145)
金属性这一节点很特殊,当为0的时候会采用非金属Shader,当为1的时候会采用金属Shader,如果采用0.5这种中间值产生的Blend结果可能会很怪异
由于是两套Shader,因此Base Color和Specular的作用也会发生改变