Files
stas-barecky/Library/PackageCache/com.unity.shadergraph@3cfe1d1f3f8c/Editor/Importers/RenderPipelineChangedCallback.cs
2026-01-08 20:43:08 +05:00

24 lines
832 B
C#

using UnityEngine;
using UnityEngine.Rendering;
namespace UnityEditor.ShaderGraph
{
static class RenderPipelineChangedCallback
{
internal static readonly string k_CustomDependencyKey = "ShaderGraph/RenderPipelineChanged";
[InitializeOnLoadMethod]
private static void RegisterSRPChangeCallback()
{
RenderPipelineManager.activeRenderPipelineTypeChanged -= SRPChanged;
RenderPipelineManager.activeRenderPipelineTypeChanged += SRPChanged;
}
static Hash128 ComputeCurrentRenderPipelineHash()
=> Hash128.Compute(GraphicsSettings.currentRenderPipelineAssetType?.FullName ?? string.Empty);
static void SRPChanged()
=> AssetDatabase.RegisterCustomDependency(k_CustomDependencyKey,ComputeCurrentRenderPipelineHash());
}
}