internal static unsafe void IsLightmapBakeTypeSupportedByRef(LightmapBakeType bakeType, IntPtr isSupportedPtr) { var isSupported = (bool *)isSupportedPtr; if (bakeType == LightmapBakeType.Mixed) { // we can't have Mixed without Bake bool isBakedSupported = IsLightmapBakeTypeSupported(LightmapBakeType.Baked); // we can't support Mixed mode and then not support any of the different modes if (!isBakedSupported || active.mixedLightingModes == LightmapMixedBakeModes.None) { *isSupported = false; return; } } *isSupported = ((active.lightmapBakeTypes & bakeType) == bakeType); // if we are using realtime GI on a new project and Enlighten has been deprecated, don't allow realtime GI if (bakeType == LightmapBakeType.Realtime && !active.enlighten && !GraphicsSettings.AllowEnlightenSupportForUpgradedProject()) { *isSupported = false; } }
internal static unsafe void IsLightmapperSupportedByRef(int lightmapper, IntPtr isSupportedPtr) { var isSupported = (bool *)isSupportedPtr; // 0 = Enlighten // if the lightmapper is Enlighten but Enlighten is deprecated and the project isn't upgraded, it's not supported *isSupported = ((lightmapper == 0) && !active.enlighten && !GraphicsSettings.AllowEnlightenSupportForUpgradedProject()) ? false : true; }