Unity高级开发-光照系统(三)-使用Unity的Progressive工具去正确的烘焙光照

   更新日期:2024.05.11
1-烘培的代价是非常高的
2-烘培贴图的数量和体积非常的大,因为它是RGB通道的一些彩色图片,所以是无法改变的。
3-通过格式压缩,但压缩会出现质量下降的情况。贴图加载会占用大量的显存。

我们自动生成的一些UV可以使用Unity的功能,在物体上有UV Charting Control,进行动态合并。在合并完成后,我们进行预计算,看看合并上有没有问题。
合并UV的时候可能会出现扭曲现象,这种扭曲现象在烘焙Lightmap时是非常有问题的。

UV Charts等于6的情况下,如果Box分成左边是比较合理的,右边这么分在Enlighten的计算量最起码要增加3倍。

常见的物体Cluster Resolution 参考(每单元大小):

小火车做了一个Light Probe Proxy Volume,这样就可以控制接受间接光的情况。注意这种方式目前不支持移动平台
项目中的整体地面,都是使用的Blend Probes模式的混合,比较小或者不显眼的物体,并非游戏重要物体的都可以使用Blend Probes进行照明,我们需要勾选Static类型,它们一定在Static批次中,后面把它Lightmap Static去掉就可以了,去掉后就不会生成Lightmap,但是会接收Light Probe的影响。

如上图所示,在整个光照当中,我们加了一些面光源,这是为了提高场景的窗户透光的光亮。如果不加,就没法按窗户形成面光源,向内部进行照明的。
需要注意,面光源在移动平台上,如果不是HDRP的话,就只支持静态的,只支持烘培,不是烘培的模型它是不支持的。
下图是场景的光照贴图大概是这样的,比较符合白天的光照效果。

我们可以看看它的设置。
首先Procedural Skybox在这里加进来。在Enlighten当中,千万不要使用渐变和颜色进行烘焙,两者烘焙出来的东西会比较风格化,并不写实。有很多人选择用某个颜色烘渐变,但效果会非常不理想,所以一般选择Skybox进行烘焙,而Skybox一般使用Procedural Skybox。
烘焙完后,再替换为自己场景的风格化Skybox作为最终显示效果。Procedural Skybox是仅用于烘焙的,不是用于制作最终的Skybox效果。
我们再举一个简单的例子。如果要形成一个特别颓废和压抑的环境,我们可以将大气密度提到很高,然后将染色降一下,或者偏向一个色彩。
我们可以将整个曝光度调低,把大气密度调高,实现让人很压抑的环境,这种环境烘焙出来的Lightmap比较接近于比较邪恶的地方,从而获得更加压抑的光照效果。

尤其是一些非常小的物体,如果想要表现出好的效果,一定要对Lightmap大小进行放大。例如:铅笔在Scale In Lightmap里要放大一倍,不然烘出来基本上没效果。但对于有的物体,我们要保证统一性,如果能保证统一性,有的地方会出现一些色斑。
在示例场景中,我们优化掉了一部分的东西,整个Lightmap的照明还可以,但是你会看到这些东西都浮起来了,靠屏幕空间的AO是控制不住的,效果会产生大量的损失。所以这样的东西只在室外有用,室内的话是不建议这么用。
Enlighten烘焙在示例场景中的效率,代价是非常大的,因为场景中的物体非常的多,它的UV Charts基本上没办法看到,非常碎,所以烘焙时间也非常长。
在小火车的场景中,使用Enlighten大概烘焙4分钟。在这个教室场景,因为物体非常多而杂,大概是小火车场景的5倍左右时间,大概20分钟。
使用Progressive烘培则很稳定,它只看场景有多大的精度,不管场景有多少物体,这就是Progressive和Enlighten之间的差异。

  • 15785347914 :Unity高级开发-光照系统(三)-使用Unity的Progressive工具去正确的烘焙光...
    咸家荣2687 :答:我们自动生成的一些UV可以使用Unity的功能,在物体上有UV Charting Control,进行动态合并。在合并完成后,我们进行预计算,看看合并上有没有问题。合并UV的时候可能会出现扭曲现象,这种扭曲现象在烘焙Lightmap时是非常有问题的。
  • 15785347914 :【技术分享】Unity室内场景 + 光照练习 III
    咸家荣2687 :答:使用Unity的标准化材质和通用贴图,让场景呈现基础质感。这里推荐深入阅读相关教程,提升你的基础技巧。接着,烘焙光线,打造明亮柔和的氛围,但务必注意光照问题,以避免场景过曝或阴影过深。为了提升视觉深度和真实感,添加反射...
  • 15785347914 :unity5 全局光照怎么使用
    咸家荣2687 :答:Unity5在图形仿真和光照特效方面做了重大改变。自从3.0版本开始,Unity的光照效果一直局限于烘焙好的光照贴图。但后续的时间里,我们在全局光照领域有了很大的提升与改进,现在,是时候将其中部分美好的特性从Unity的沙盒中开放...
  • 15785347914 :Unity如何实现动态光源的GI
    咸家荣2687 :答:Unity的光照系统中光照包括直接光照、间接光照、环境光和反射光。直接光照:光源对于模型的光照。间接光照:光线在其他模型上的反射所带来的光照。环境光照:天空盒的颜色。反射光:光线照射到模型上反射回来的光。Unity中有两种...
  • 15785347914 :Unity基础(四)渲染烘焙Lightmap光照贴图(未完)
    咸家荣2687 :答:操作路径:选择模型打开Inspector属性面板—>Model—>勾选Genrate lightmap uv—>Apply应用。    2、勾选Static静态模型: 在Scene视图里面选择模型打开Inspector属性面板—>勾选Static静态模型。   ...
  • 15785347914 :《永劫无间》中的光照系统
    咸家荣2687 :答:在技术美术团队的精心雕琢下,光照系统的设计并非一蹴而就。起初,他们选用Unity的Lightweight Render Pipeline,然而在深入探索后,发现其与项目需求存在微妙的偏差。于是,他们决定重新整合优化,将重点聚焦在光照技术的选择上,...
  • 15785347914 :unity光照贴图怎么一直使用
    咸家荣2687 :答:1、首先在Unity中选择要应用光照贴图的物体。2、其次将光照贴图导入至项目中,并将其应用在物体的材质上。3、最后调整光照贴图的参数以达到期望效果。
  • 15785347914 :unity模型光照材质怎么添加
    咸家荣2687 :答:(0)架设框架,填写需要的参数 (1)计算漫反射强度 (2)计算镜面反射强度 (3)结合漫反射光与镜面反射光 代码配有中文注释,配合上上讲的光照公式,一步一步实现即可。// Author: 风宇冲 Shader "Custom/T_customLightModel...
  • 15785347914 :Unity自定义SRP(五):烘培光
    咸家荣2687 :答:https://catlikecoding.com/unity/tutorials/custom-srp/baked-light/ ​ 到目前为止我们都是在实时渲染光照,除此之外还可以提前计算好光照,然后存储在灯光贴图和探针中,这么做的好处是可以减少实时计算耗费的时间,还可以添加无法实时...
  • 15785347914 :unity光照烘焙怎么弄
    咸家荣2687 :答:打灯,把灯光的模式realtime改成baked 把场景物体要烘焙的物件 static勾起来 如果自己模型没有展2U,就在unity里面把模型属性 generate lightmap勾起来,让程序自动展2U。在窗口下的选项lighting里面 点generate lighting,就...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网