UnityGame/Library/PackageCache/com.unity.render-pipelines.universal/Editor/Decal/CreateDecalShaderGraph.cs
2024-10-27 10:53:47 +03:00

31 lines
1.2 KiB
C#

using System;
using UnityEditor.ShaderGraph;
using UnityEngine.Rendering;
namespace UnityEditor.Rendering.Universal.ShaderGraph
{
internal static class CreateDecalShaderGraph
{
[MenuItem("Assets/Create/Shader Graph/URP/Decal Shader Graph", priority = CoreUtils.Sections.section4 + CoreUtils.Priorities.assetsCreateShaderMenuPriority + 1)]
public static void CreateLitGraph()
{
var target = (UniversalTarget)Activator.CreateInstance(typeof(UniversalTarget));
target.TrySetActiveSubTarget(typeof(UniversalDecalSubTarget));
var blockDescriptors = new[]
{
BlockFields.SurfaceDescription.BaseColor,
BlockFields.SurfaceDescription.Alpha,
BlockFields.SurfaceDescription.NormalTS,
UniversalBlockFields.SurfaceDescription.NormalAlpha,
BlockFields.SurfaceDescription.Metallic,
BlockFields.SurfaceDescription.Occlusion,
BlockFields.SurfaceDescription.Smoothness,
UniversalBlockFields.SurfaceDescription.MAOSAlpha,
};
GraphUtil.CreateNewGraphWithOutputs(new[] { target }, blockDescriptors);
}
}
}