Skip to content

BusStopStudios/Unity-Visual-Graph-Editor

Repository files navigation

Node Based Visual Graph System for Unity

This graph editor allows you to skip the editor work and create a Node Graph that is customizable. The tool that uses Unity's Experimental GraphView.

Visul Graph Features

  • Extensible
  • Scriptable Assets that can be used at rumtime through custom behaviour
  • Minimap.
  • Search window.
  • Blackboard that supports most types.

Usage

  • VisualGraph generates a starting point for you to create your custom graph
  • To start create a script that extends VisualGraphNode. This is either the basic node for your graph or a base node your graph will use.
    • You can add the following attributes: [NodeName()] [NodePortAggregate()] [PortCapacity()] [CustomNodeStyle()]
    • You can create more node scripts that extend your base node
  • Next create a script that extends VisualGraph, add [CreateAssetMenu] and [DefaultNodeType(typeof(YOURBASENODE_YOU_JUST_CREATED))]
  • Generate your graph
  • It is recommended to extend the VisualGraphMonoBehaviour to create a MonoBehaviour to use in your game
    • The VisualGraphMonoBehaviour will create an internal copy of the graph so it does not change the actual ScriptableObject data (at runtime and in the editor)
  • Once you have created your VisualGraphMonoBehaviour script add this to a game object. Access the graph by using InternalGraph
  • From there you can navigate your graph in your node scripts.
  • You can also add Blackboard properties to your graph, if you have added the graph to you MonoBehaviour it will make a copy of the properties
    • Properties can be overriden and set which are used at runtime
    • There are refresh issues with the properties in the inspector (working on this)

Examples

Basic Example Graph

FSM Example

Bugs

  • Inspector does not refresh when blackboard properties change (new, delete, or update)

About

Visual Graph Editor based on Unity's Experimental GraphView

Topics

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.meta

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages