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;
- }
- }
- }
|