Unity Lightmap之动态加载单个物件和其对应的Lightmap

本文探讨了在Unity中如何处理大型场景时,动态加载带有Lightmap的静态物件。通过在烘焙的场景物件上附加脚本,记录index和offsetScale等关键信息,并在运行时加载保存为prefab的物件,实现正确显示烘焙效果。核心方法涉及lightmapIndex、lightmapScaleOffset的获取以及Lightmap烘焙贴图的保存和应用。
摘要由CSDN通过智能技术生成

下一篇: Lightmap之Terrain和Lightmap切割      

 接上一篇,LightMap之动态切换LightMap模拟白天夜晚 ,介绍了最基本的动态切换。现在问题来了,当场景比较大的时候,我们通常不是一次性把所有的物件都加载,哪怕这个物件是静态的,比如场景中不动的建筑。如果我们仅仅是烘焙后场景物件保存成prefab,那么我们在加载后,prefab是没有烘焙信息的。最后出现的效果如下,显然不是预期。Cube 1 和 Plane 1是之前烘焙完后保存的prafab。

       好在有解决方案:在每个需要烘焙的场景物件上挂一个脚本,当场景烘培结束后,把每个物件的烘焙信息记录在脚本上,然后把整个物件连同脚本一起保存成prefab。运行时直接把prefab加载就完成了。下图就是正确的预期结果。

        那这个脚本上记录什么东西呢?有两个很重要的数据就是index

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值