Light Probe

2017-01-18  本文已影响466人  Levi_Wan

Light Probe的作用:烘焙出来的lightmap并不能作用于动态物体。如果场景中有动态物体的话,会显得与烘焙好的场景脱离,尽管使用光照贴图会大大的提升场景的真实感,但是对于非静态物体总是格格不入的,此时就需要利用到光照探头。

Light Probe的构建

Paste_Image.png

  对于光照探头的构建,我们一般会构建一个比较密集的阵列,可以通过Eidt lightprobe组件选择Duplicate 复制lightProbe来进行构建,通常都通过顶视图,左视图和主视图来一一构建。这样这些探头就可以用来采集周边环境的光线来反应给其中的物体。

Paste_Image.png

接着我们将Plane烘焙成静态的lightmap,Cube作为动态的,当Cube进入光照探头阵列的时候,光照探头的采集器就会以Cube的中心点(Mesh的中心点)为中心点以及最近的探头构建一个“黄色三角形的体积”来对物体进行标注并为动态物体提供周围环境的光照信息(主要是明暗程度的光照信息表现)。

Paste_Image.png

对于动态物体默认是让它使用光照探头进行反应的。

Paste_Image.png Paste_Image.png Paste_Image.png Paste_Image.png

光照探头的原理:在场景中这些被标记为探测器的静态探头,它们会在这些位置进行光照采集然后对相邻的几个光照探头所采集的灯光进行插值的计算。

Light Probe的优缺点:

在unity5.4版本后,Unity还为提供了一个光照探头的代理。它的作用是为我们比较大的动态物体,提供比较精确的光照信息。之前所使用的lightProbe基本上是用在一些运动着的小型的物体上。如果是大型的物体话,因为lightProbe是通过插值来表现明暗信息的就会不是非常精确。此时就应该使用Light Probe Proxy Volume。

Paste_Image.png Paste_Image.png
上一篇 下一篇

猜你喜欢

热点阅读