当前位置: 代码迷 >> 综合 >> Reflection probes
  详细解决方案

Reflection probes

热度:15   发布时间:2023-11-21 16:45:57.0

Reflection probes:

Reflection probes就是得到一个点的反射贴图,它由一张cubemap组成,包括六个方向,包含了它此时反射的环境.

 每一个点都可以有一个reflection probes  来反映他此时的反射环境

reflection probes捕获的反射只能包括标记为Reflection Probe Static的场景对象

Using Reflection Probes

  • 创建一个空物体A,添加reflection probe 组件
  • 创建多个新的reflection probe 物体,和上面的流程一个
  • 设置reflection probe组件参数
  • 继续添加reflection probe 物体直到满足需要

下面是为了看到reflection probe

  • 创建一个cube 或其他物体B
  • 为其附上一个材质球,把 MetallicSmoothness 设置为 1.0.

把需要反射的物体C,勾选上reflection probe static ,然后烘焙,就能在物体B上看到反射的C了

Blending

 要使用reflection probe 首先要在edit->projectsetting ->graphic->tier setting 里面启用reflection probe blending ,启用之后物体从一个reflection 区域到另一个区域就会有过度,而不是很突兀的突然出现

Reflection Probes 属性通过 Mesh Renderer 组件来控制

  • Off - 关闭reflection probe 该物体不使用反射
  • Blend Probes 不反射天空,要把它用在山洞或者隧道里面
  • Blend Probes and Skybox -反射天空,用在户外
  • Simple -当两个reflection probe 重叠时,不使用反射

如果一个物体横跨两个probe ,那么在哪个reflection 区域的体积大,就按哪个reflection 来计算

当一个探针包含另一个探针时,如果物体完全在小探针里面,则就完全按照小探针计算,如果在两者中间,则按照体积比例来计算

Interreflections

互反射,经常的作用是两面镜子能够互相看到对方反射到的物体和镜子里面互相反射的物体,它是在lighting window 里控制的,Environment > Environment Reflections编辑 Bounces 属性,1代表互相反射的物体是黑色的,2代表能够看到两层的物体,依次类推,没一层都代表一个烘焙,所以次数越多,烘焙越多,互相反射的物体也要勾选reflection probe static

 

Box projection

盒映射:如果静态物体里反射体太近的话,物体就会被变得很大,这样就很不真实,比如你靠近一面镜子,镜子里面的你很大,开启box projection 能够解决这种情况,让反射效果变得更加真实一些

 

Reflection probe performance and optimisation

 反射探针的性能优化和表现形式:反射探针的六个方向都需要摄像机单独呈现,每一个bounce都需要单独呈现,所以这很耗费时间

优化方式:1.降低resolution

                  2.为不需要反射的物体归类到一层中,用cullmask 剔除掉

                  3.压缩贴图,Window > Rendering->Lighting Settings  Environmental Lighting > Reflections s使用压缩,注意,realtime 模式是不支持压缩的,这也是实时烘焙比较耗时间,实时的设置依靠组件中的HDR和Resolution来确定

                 

  相关解决方案