烘焙光照
- 烘焙光照就是预计算全局光照信息。
- 光照贴图中只记录间接光照,直接光照的计算代价不高,由着色器自己计算直接光照。
- 在一个场景中,如果这些物体只考虑直接光照的影响,则会缺乏很多光影细节,导致视觉效果很“平”。而间接光照则描述了光线在物体表面之间的折射,增加了场景中的明暗变化以及光线折射的细节,提高了真实感。
- 光照贴图使用UV2做贴图映射。
- 模型烘焙光照,会改写模型的UV2的数据。如果模型没有UV2的数据,可能无法得到正确的烘焙结果。
Unity中的烘焙光照
[[Bakery]]
[[Progressive]]
烘焙贴图
光照烘焙最多产生3种贴图。
- 光照贴图
- 阴影贴图
- 主光贴图和模型的UV2数据。
UV Chart
- 在烘焙时,烘焙器会对所有场景中的静态物体上的网格进行扫描,按块大小和折线角度大小来制作和拆分网格上对应的UV块,这个UV块就是UV Chart。
- UV Chart是静态物件在光照纹理上某块网格对应的UV区块,一个物体在烘焙器预计算后会有很多个UV Chart。因此每个物件占有光照贴图上的多个UV Chart,每个UV Chart为一段连续的UV片段。默认情况下,每个Chart至少是4×4的纹素,无论模型的大小,一个Chart需要16个纹素。UV Chart之间预留0.5个像素的边缘来防止纹理溢出。