
方向光

点光源

面光源

自发光物体

即设置gi flag为BakeEmissive的物体。

其中,方向光只用于产生 shadowmask,其余光源用于生成 lightmap。
其余光源中又根据tag来进行区分:


在实际项目中使用时,每个场景生成4套光照图,每套包括 1张 Lightmap,1张 Shadowmask。
| 原图尺寸 | Max Size | 压缩格式 | |
|---|---|---|---|
| Lightmap | 2048 | 1024 | ASTC HDR 8x8 |
| Shadowmask | 2048 | 2048 | ASTC 8x8 |
Lightmap通道:
RGB:除方向光以外的其他光源的光照信息
Shadowmask通道:
R: Shadowmask
G: Static Light Area
B: Ambient Occlusion
A: Skylight Occlusion
使用 Unity内置烘焙系统,不是Bakery,即在这个页面设置参数。

调用的方法:

烘焙结束后的回调方法:

1. 关闭低模物体(不管是否勾选Contribute GI选项)

2. 勾选 Stitch Seams

3. 开启双面GI

4. 设置Bounces = 2

Bounces = 2 相比 Bounces = 1 烘焙质量得到明显提升,同时Bounces = 2的烘焙耗时更长,可以设置更高数值的Bounces来取得更好的烘焙效果,但是Bounces = 2 是性价比较高的选择。

5. 树叶物体的LightmapScale设置为0,节省Lightmap像素。且只在烘焙Shadowmask时打开,其余烘焙阶段关闭,避免影响烘焙结果。

1. 设置参数
2. 烘焙场景
3. 把烘焙结果保存到特定路径,以备后用
4. 重复1至3步骤多次,使用不同的设置和参数,烘焙不同的信息(Shadowmask,AO等)
5. 合并所有烘焙的结果
烘焙结束后把Lightmap copy一份存放到单独路径下。





此为止,所有GI分量都烘焙完成,存放目录下目前了这些图:


Android: ASTC HDR NxN
iOS:RGB9e5
内存会变大,1024大小的图用ASTC HDR 8x8 方式压缩大小是 341kb, 用 RGB9e5方式是5.3mb

烘焙结果从 exr 格式图(Lightmap) blit 到 png格式图,颜色的表达范围和精度都下降导致。





点光强度较大时,使用 ASTC 压缩格式会有偏色现象,ASTC HDR 不会偏色。



原始UV1有重叠,黄框部分为重叠区域

修改后的UV1,没有重叠区域。
2. 没开doubleSidedGI



昼夜变化