protected void Start() { Debug.Log("[AdditiveShader] AdditiveShaderManager.Start()"); AssetReporter.Timer = Stopwatch.StartNew(); managedAssets = AssetScanner.CollateManagedAssets(); if (managedAssets.Count == 0) { OnDestroy(); return; } RefreshRenderGroups(); BuildCategories(); remoteGroups = new Dictionary <Guid, List <ManagedAsset> >(); instance = this; if (twilightAssets.Count != 0) { CheckForTwilight(FORCE); InvokeRepeating(nameof(CheckForTwilight), TWILIGHT_CHECK_INTERVAL, TWILIGHT_CHECK_INTERVAL); } else { enabled = timeBasedAssets.Count != 0; } HookEvents(true); }
protected void OnDestroy() { Debug.Log("[AdditiveShader] Manager shutting down."); HookEvents(false); instance = null; CancelInvoke(); enabled = false; remoteGroups = null; RestoreOriginalAssetSettings(); DisposeAssetLists(); }