Unity3D动态替换Lightmap

写在前面

最近项目上有个需求,在场景里面需要做一个动态替换lightmap。主要需求是针对场景实现白天和夜晚的灯光效果。

在场景没有变化的时候,我们可以直接替换场景的lightmap即可。

1
2
3
4
5
6
7
8
9
10
11
public void SetLightMap(Texture2D lightmapTex){
if (lightmapTex == null)
{
return;
}
LightmapData[] lightmapData = LightmapSettings.lightmaps;
LightmapData lmd = new LightmapData();
lmd.lightmapFar = lightmapTex;
lightmapData[0] = lmd;
LightmapSettings.lightmaps = lightmapData;
}
如果您觉得我的文章对您有所帮助,不妨小额捐助一下,您的鼓励是我长期坚持的动力。