Unity实时GI与烘焙GI

Unity的GI按照灯光类型分为两种,一种是Realtime GI(适用于Realtime的灯光),另一种是Baked GI(适用于Mixed或Baked的灯光),下面将分别介绍这两种GI:

Realtime GI:虽然名字中含有Realtime,但这种设置同样也需要在运行前烘培好光照贴图,以保证运行时的流畅程度,只不过与Baked GI相比生成的光照贴图在运行时是可变的,这种变化会带来性能上的额外开销但要比不预计算光照贴图好得多

Baked GI:

  • Bake Indirect:只烘培间接光照,直接光以及阴影进行实时计算。运行时改变灯光,直接光照和阴影就会变,但间接光不变(如果间接光弱,视觉影响不大)。只减少间接光照的实时计算,适合对光照要求较高的场景,内存消耗小,当然性能的消耗也大
  • Shadowmask:对静态物体直接光照产生的阴影也会被烘培到Shadowmask中,动态物体不受影响。运行时改变灯光只有间接光照和静态物体的阴影不受影响。内存中多了一份Shadowmask,比上一种少了静态物体阴影的计算,占用性能小了一点
  • 关于Distance Shadowmask:可以理解为Shadowmask的一种改进版,即当距离小于某个特定的值时,静态物体的阴影可以改变,而当距离大于该值时,阴影的行为同Shadowmask,Unity推荐使用这种设置
  • Substrative:静态物体:直接光和间接光都烘焙到光照贴图中;动态物体:接收直接光,可以在静态物体上投射主方向光的阴影。运行时改变光照,静态物体直接光、间接光、阴影不受影响,动态物体的直接光、主灯光(平行光)投射的阴影受影响、其他灯光无阴影。性能消耗最小,应用广

在实际开发中,不建议Baked GI和Realtime GI同时开启(如果开启也常常是在有多种不同类型的光源共存同一场景时),开一种即可

Lightmapping(用于Baked GI)设置参数:

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Unity实时遮挡剔除(Occlusion Culling)是一种在游戏引擎中用于增加渲染性能的技术,它可以在不进行烘焙的情况下实现。 通常情况下,当我们在游戏场景中有大量的物体需要渲染时,即使有些物体被其他物体遮挡,它们仍然会进行渲染,浪费了很多的计算资源。而Unity实时遮挡剔除技术可以解决这个问题。 实时遮挡剔除的原理是通过在场景中放置一些遮挡物(如墙壁、柱子等),这些遮挡物会被渲染器识别并记录下来。当我们在游戏场景中移动摄像机时,渲染器会根据摄像机位置和视野范围自动计算出需要渲染的物体和需要剔除的物体。 这样一来,只有摄像机视野内的物体才会被渲染,其他被遮挡住的物体将不会被渲染,从而节约了计算资源,提高了渲染性能。 Unity实时遮挡剔除技术无需烘焙,这意味着我们不需要提前生成复杂的遮挡剔除数据。相比于传统的静态遮挡剔除技术,实时遮挡剔除更加适用于动态的、实时生成的游戏场景。 要使用Unity实时遮挡剔除,我们只需要在场景中添加遮挡物,并启用实时遮挡剔除功能。然后,在运行游戏的时候,渲染器会自动根据摄像机位置和遮挡物来进行遮挡剔除。 总的来说,Unity实时遮挡剔除技术是一种高效的渲染优化技术,通过避免无需渲染的物体的计算,提高了游戏的性能和帧率。它的无需烘焙特性使得它更加适用于实时生成的游戏场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值