click to edit title

FeatureSet

Performant

no reflection, no string lookup, no GC in runtime

UIElement based

great looking and fast editor performance

Flexible to implement

can create multiple type of graphs
left to right, right to left, flow chart, behavior etc

Concepts

Ports

TypedPorts

can only accept connection that can convert into this type

WildCard Ports

convert into typed port when connected

Sequence Ports

connect from Node to Node
useful for flow process

Nodes

SubGraphNode

DataNode

Advanced Features

Reusability

Collapse into Subgraph node

Graph

Any ScriptableObj with IGraph can be a graph
it also needs a reference to Graph Connection

Optional Entry and exit node
Entry or exit can be the Node itself which implements IGraph

Graph Connection (Scriptable Object)

This is serialization object that saves and restores node and port connections
This will be a child object of a graph

Editor

saves type and color?

Blackboard for Variables

Ease Of Use

drop items to create node in graph

node search

frequently used nodes

Graph settings
a setting object created for each

minimap

stacknode? 2019?

token node?