| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | using System.Collections;using System.Collections.Generic;using UnityEditor;using UnityEngine;using UnityEngine.Rendering;namespace FXV{    [ExecuteInEditMode]    public class VolumeFogManager    {        public static VolumeFogManager instance = null;        static Camera currentCamera = null;#if UNITY_EDITOR        [InitializeOnLoadMethod]#endif        [RuntimeInitializeOnLoadMethod]        static void CreateInstance()        {            instance = new VolumeFogManager();            RenderPipelineManager.beginCameraRendering -= OnBeginCamRender;            if (Internal.fxvFogAssetConfig.ActiveRenderPipeline != Internal.fxvFogAssetConfig.Pipeline.BuiltIn)            {                RenderPipelineManager.beginCameraRendering += OnBeginCamRender;            }        }        static void OnBeginCamRender(ScriptableRenderContext context, Camera camera)        {            currentCamera = camera;        }        public Camera GetCurrentRenderingCamera()        {            if (Internal.fxvFogAssetConfig.ActiveRenderPipeline != Internal.fxvFogAssetConfig.Pipeline.BuiltIn)            {                return currentCamera;            }            return Camera.current;        }    }}
 |