public void ClearSceneCamera() { if (!bInitSceneCamera) { return; } bInitSceneCamera = false; if (ImageEffectManager.IsStandAlone) { CameraRenderFlagsTable.Clear(); ImageEffectManagerTable.Clear(); } else { CameraRenderFlagsTable.Clear(); ImageEffectManagerTable.Remove(HostCam); } }
public void InitSceneCamera() { if (bInitSceneCamera) { return; } bInitSceneCamera = true; HostCam = GetComponent <Camera>(); OpaqueQueue = GetComponent <ImageEffectOpaqueQueue>(); if (OpaqueQueue == null) { OpaqueQueue = gameObject.AddComponent <ImageEffectOpaqueQueue>(); } if (OpaqueTypeEffectTable == null || OpaqueTypeEffectTable.Count <= 0) { OpaqueTypeEffectTable = BuildOpaqueQueueTable(); } if (NormalTypeEffectTable == null || NormalTypeEffectTable.Count <= 0) { NormalTypeEffectTable = BuildNormalQueueTable(); } Add <RadialBlur>(); DisableImageEffect <RadialBlur>(); Add <BlurAndDownScreen>(); DisableImageEffect <BlurAndDownScreen>(); Add <FullScreenSaturation>(); DisableImageEffect <FullScreenSaturation>(); Add <ModifyGameBrightness>(); DisableImageEffect <ModifyGameBrightness>(); HostCam.depthTextureMode = DepthTextureMode.None; Refresh(); OpaqueQueue.hostImageEffectManager = this; ImageEffectManagerTable.Add(HostCam, this); foreach (ImageEffectNodeList nodelist in OpaqueTypeEffectTable.Values) { foreach (ImageEffectNode node in nodelist.list) { if (node) { node.OnSceneCameraInit(); } } } foreach (ImageEffectNodeList nodelist in NormalTypeEffectTable.Values) { foreach (ImageEffectNode node in nodelist.list) { if (node) { node.OnSceneCameraInit(); } } } }