Version: 2022.3

RenderPipelineManager.activeRenderPipelineAssetChanged

切换到手册

参数

value The delegate that will be executed when the current RenderPipelineAsset has changed between frames. The first argument will be the previous RenderPipelineAsset, and the second argument will be the current RenderPipelineAsset. The one used to create the current RenderPipeline used to render the last frame.

描述

Delegate that you can use to invoke custom code when the current RenderPipelineAsset between frames has changed.

using UnityEngine;
using UnityEngine.Rendering;

public class CurrentRenderPipelineAssetChangedExample : MonoBehaviour { void Start() { RenderPipelineManager.activeRenderPipelineAssetChanged += RenderPipelineManager_activeRenderPipelineAssetChanged; }

private void OnDestroy() { RenderPipelineManager.activeRenderPipelineAssetChanged -= RenderPipelineManager_activeRenderPipelineAssetChanged; }

private void RenderPipelineManager_activeRenderPipelineAssetChanged(RenderPipelineAsset from, RenderPipelineAsset to) { Debug.Log($"RenderPipelineAsset has changed {(from != null ? from.GetType().Name : "Built-In")} to {(to != null ? to.GetType().Name : "Built-In")}"); } }