[置顶] Unity5 GI与PBS渲染从用法到着色代码

 本文主要介绍Untiy5以后的GI,PBS,以及光源探头,反射探头的用法以及在着色器代码中如何发挥作用,GI是如何影响渲染的,主要分成三个部分,最开始说明PBS需要的材质与相应概念,二是Unity 里相应GI的操作,三是对应着色器代码的理解。如果没有特殊声明,所有操作与代码都是针对Unity5.3.

PBS材质与概念

  简单来说,PBS的优点不同的照明下获得一致的外观,更容易实现,更直观的参数。

PBS材质概念:

  1.albedo 反照率 

  反照率贴图定义漫反射的基本颜色,与原来的漫反射贴图相比,不包含定向光与AO,在这我们应该由环境自己的定向光与AO来影响,Unity里,我们用GI得到相应烘培或是实时的方向光与AO。

  

  2.Smoothness/Microsurface 表面细节 材料细节 光滑度

  光滑度:描述物体微表面的一个参数,可以用来定义法线分布函数,这样,粗糙的表面呈现宽,淡的镜面反射,光滑呈现集中和明亮的镜面反射。

  

  3.Metal/reflectivity 金属性/反射 

  金属与绝缘体应该使用不同的反射设置,导体的反射率 60-90%,绝缘体0-20%,高反射光分子不容易到达内部和散射,这样金属的高表现出来比较淡。

  

  如下全局设置:

  对于固定的材料,反射率趋于稳定,这样一般来说,一个模型的metal相对变化较少,如泥,水,木头这些他们的反射率相关并不大,只有金属与绝缘体会有相对比较大的反差,而模型表面的粗糙度应该用上面的图光滑性来表示,这个相对变化会比较大些,如下,水和泥土有相似的金属性(反射率),但是光滑度相差大,所以相差比较明显。

  

你可能感兴趣的:([置顶] Unity5 GI与PBS渲染从用法到着色代码)