Unity:Texture2D ==运算符在光照贴图上不起作用?

时间:2018-11-09 03:39:42

标签: c# unity3d texture2d

我正在尝试为预制件烘烤照明,而我正在使用this解决方案来尝试这样做。但是,正如标题所示,它没有用。我发现问题出在这里的if语句中

bool existsAlready = false;
int[] lightmapArrayOffsetIndex;
lightmapArrayOffsetIndex = new int[lightmaps.Length];
var settingslightmaps = LightmapSettings.lightmaps;

for (int i = 0; i < lightmaps.Length; i++)
{
    for (int j = 0; j < settingslightmaps.Length; j++)
    {
        if (lightmaps[i] == settingslightmaps[j].lightmapColor)
        {
            lightmapArrayOffsetIndex[i] = j;
            existsAlready = true;
        }
    }
}

其中lightmaps[]Texture2D[]

我所说的预制照明图是场景的第三个照明图。当for循环到达settingslightmaps[]中的第三个元素时,if语句返回false。我尝试添加断点来调试代码,并且lightmaps[i]settingslightmaps[j]的名称相同,但是if语句 静止 返回false

为什么即使调试器告诉我它们指向相同的光照贴图,也为什么返回false,我该如何解决呢?

0 个答案:

没有答案