Ejemplo n.º 1
0
 public void ClearSceneCamera()
 {
     if (!bInitSceneCamera)
     {
         return;
     }
     bInitSceneCamera = false;
     if (ImageEffectManager.IsStandAlone)
     {
         CameraRenderFlagsTable.Clear();
         ImageEffectManagerTable.Clear();
     }
     else
     {
         CameraRenderFlagsTable.Clear();
         ImageEffectManagerTable.Remove(HostCam);
     }
 }
Ejemplo n.º 2
0
        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();
                    }
                }
            }
        }