unity灯光烘焙

1,为什么要用灯光烘焙(Lightmapping),不使用灯光烘焙的情况下只有直接光照,光线不会计算反弹,直接光照射不到的地方会一片漆黑,在经过烘焙计算后,电脑会模拟光线反弹来生成间接光照,从而照亮场景来接近真实效果,也称为全局光照(GI),在实际项目中,实时的全局光消耗性能太大,所以我们将预计算的Global illumination添加到纹理贴图(Lightmap)里,以便用更少的资源来提供真实丰富的光照信息

2,unity目前有3种渲染管线,3D内置,URP和HDRP,URP和内置管线效果相差不多,HDRP是基于物理世界来模拟光照,最直接的体现在于光照强度参数的单位,内置管线里的光照强度是一个相对数值,而HDRP中光照强度是物理世界真实数值

3,3D内置管线中的打光步骤:
     1,在场景中选择静态物体,将其标记为Contribute GI
     2,为场景指定一个skybox
     3,创建一盏Directional Light作为主光源,设置为Mixed(可以同时拥有烘焙效果以及实时阴影),按需设置其他灯光选项
     4,Light面板使用较低的参数来测试烘焙效果,观察结果
     5,为场景中添加Reflection probes,在需要有反射的物体上标记为Reflection Probe Static
     6,测试反射探针烘焙,观察结果
     7,调整场景中小物体Mesh Render中SCale in Lightmap的尺寸,可以放大一倍,来让小物体的光照信息更加准确
     8,也可以考虑将小物体的Contribute GI标签去除,使用Light Probes进行照明
     9,添加Post Processing后期效果调整最终画面

4,灯光具体参数讲解
     1,Direct Samples(直接光采样):数值越大Lightmap质量越高,烘焙时间越长,默认32
     2,indirect Scamles(间接光采样):数值越大间接光相对越高,室外场景100左右。室内场景默认512起
     3,Environment Samples(环境光采样):数值越大Lightmap质量越高,默认500
     4,Bounce:光线路径的反弹数量,一般默认为2
     5,Filtering:减少噪点,默认auto
     6,Lightmap Resolution(贴图分辨率):默认40→80
     7,Lightmap Padding(UV间隔):2→8
     8,LightSize(每张贴图大小):默认1024
     9,Compress Lightmaps:压缩贴图

5,注意事项
     1,模型导入后勾选生成光照uv,FBX比较复杂的需要调整Pack Margin,可以增大UV之间的间隙,一般设置为8,同步调整Lightmap Padding数值
     2,区分室内室外场景,并且物体是否需要反射环境值,一般情况下是反射周围环境,添加多个Reflection Probe后可以关掉天空盒反射,影响烘焙速度
     3,静态物体尽可能优化掉不需要烘焙的部分,提高重要物件lightmap精度,同时减少贴图数量,不参与烘焙的物体用Light Probe照明

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值