Search code examples
unity-game-engineblenderdiagramclass-diagrammermaid

What is the formal name of diagrams like the "shader graphs" in Blender and Unity?


Blender and Unity both offer a "Shader Editor" / "Shader Graph," a visual programming tool that shows the flow of data through individual inputs and outputs, which are color-coded by type:

Example image from the Blender documentation page linked above

Is there a consistent name for this type of visualization in the more general diagramming world? It seems similar to but more fine-grained than a UML2 Class Diagram. This project calls it a "flow chart," but that seems like a potentially non-standard use of the term (e.g., Mermaid.js' flowcharts do not necessarily readily allow this level of detail). The Rete project seems just to call it a "visual programming" interface.

Is there a standard name for this type of visualization, not specific to visual programming?


Solution

  • I believe the general name is a Node Graph.

    Unity has the GraphView, available in the UnityEditor.Experimental.GraphView namespace. This is the one used by Shader Graph.

    Since it's 'experimental' it's not very well documented, but it's fairly easy to use.

    In Unity terminology: The GraphView is the container. Nodes are the individual elements. Each node has input and/or output Ports. Ports are connected by Edges.