A game about forced loneliness, made by TACStudios
at master 775 B view raw
1using System.Linq; 2using UnityEditor.Graphing; 3 4namespace UnityEditor.ShaderGraph 5{ 6 readonly struct GraphDataReadOnly 7 { 8 private readonly GraphData m_Graph; 9 10 public GraphDataReadOnly(GraphData graph) 11 { 12 m_Graph = graph; 13 } 14 15 private bool AnyConnectedControl<T>() where T : IControl 16 { 17 var matchingNodes = m_Graph.GetNodes<BlockNode>().Where(o => o.descriptor.control is T); 18 return matchingNodes.SelectMany(o => o.GetInputSlots<MaterialSlot>()).Any(o => o.isConnected); 19 } 20 21 public bool AnyVertexAnimationActive() 22 { 23 return AnyConnectedControl<PositionControl>(); 24 } 25 26 public bool IsVFXCompatible() => m_Graph.hasVFXCompatibleTarget; 27 } 28}