Resize lightmaps array??

I'm making a "Beast Helper" script, that save gameobjects list and tiling info for each lightmap, and you can restore it later. Everything seems to work, but I have a problem: LightMapSettings.Lightmaps[] cannot be resized... (The length property is read only).

I need to set the number of lightmaps from script, otherwise my script can cause Out of index errors when trying to set a number of lightmaps bigger than LightMapSettings.Lightmaps.Length...

Any ideas?? Thanks

1 Answer

1

Store the array reference in a temporary variable, resize it (Array.Resize - you can't modify .Length in a normal array either), then push it back into the variable

In c# it'd look something like this:

LightmapData[] lightmaps = LightMapSettings.Lightmaps;
System.Array.Resize(lightmaps, newSize);
LightMapSettings.Lightmaps = lightmaps;

Mike, I've tried this solution and it returns a null reference exception at LightMapSettings.Lightmaps = lightmaps; Please see my [Unity Answers thread][1] for details [1]: http://answers.unity3d.com/questions/697598/how-do-i-resize-the-lightmap-array-via-editor-scri.html