The Complete Visual Behaviour Authoring Framework for Unity

Behaviour Trees | Create Reactive Behaviour Trees in an intuitive visual node editor.

NodeCanvas is the complete node-based Visual Behaviour Authoring framework for Unity, enabling you to create advanced AI behaviours and logic without the fuss in an intuitive visual node editor, including three powerful, separate, yet fully interchangeable and fully featured modules for you to choose and easily add in your game.

Behaviour Trees

Use Reactive Behaviour Trees to create dynamic and believable character Artificial Intelligence or behaviours for your games, by putting together small and modular building blocks. Reuse made behaviours amongst any number of different agents, save valuable time and organize your designs better with seamless combination of Behaviour Trees with State Machines.

State Machines

Use Hierarchical State Machines to create definite state logic and systems. Switch from state to state based on modular conditional transitions directly. Use sub-state machines to create hierarchical and flexible state systems of any depth, or utilize sub-behaviour tree states to seamlessly combine the power of Behaviour trees within State machines.

Dialogue Trees

Use Branching Dialogue Trees to create non-linear conversations and interactions between multiple actors with support for multiple player choices,  randomizations, conditions, variables checking and more. Utilize sub-dialogues for organization and seamless integration with both Behaviour Trees and State Machines.


NodeCanvas has a full set of consistent features that you will love. Here are just some of them!

Intuitive Visual Editor

NodeCanvas has the most intuitive and comprehensive visual node editor for Unity, polished with unique features and made by designers for designers! Robust Minimap, Graph Explorer, Copy/Paste, Full Undo, Comments, Groups, and more.

Coherent Workflow

Seamlessly combine Behaviour Trees and State Machines, two of the most powerful systems used in the industry into one coherent workflow. Use SubTrees and SubFSMs within one another and map their variables for superior reusability and flexibility.

Blackboard Variables

Use any type of variable, including lists/arrays, enums, interfaces, and your own custom types. Utilize Graph, Object, Asset, and Global Blackboards, as well as  Blackboard Parenting to create a network of variables and parametrize behaviours to any extent.

Modular Tasks

Utilize a non-destructive workflow using modular actions and conditions across all three systems. Create once and use anywhere. Includes hundreds of premade game-oriented tasks to get you up and running quickly!

Advanced Visual Debugging

See exactly how your designs work with advanced, colorful, and informative visual debugging. Live edit anything while in play mode, add breakpoints, and get instant variable feedback.

Data Binding

Data Bind (map) any variable to any component property or field on the agent game object, thus significantly decreasing the tasks needed and interfacing with existing code with ease.


Auto-Convert variables to linked task parameters of non-identical types allow you to work expressively without the need to worry about such conversions and lets you do more with far less.

Built In Event System

Utilize the built-in event system and asset-based signals to dynamically react to world changes with the added ability to transfer any variable data along the events sent for a fine grained communication.

Intuitive Visual Editor

Advanced Visual Debugging


Extend upon the framework to create your own actions, conditions, nodes, or even completely new graph modules with the ease of a powerful and well documented API.

Reflection Tasks

Utilize any existing code directly with advanced and extremely efficient reflection based tasks, automaticaly integrating any and all Unity’s and 3rd Party asset APIs without writing a single line of code!

Solid Performance

Control hundreds of running behaviours simultaneously with rock solid performance, async graph loading, and zero allocations after initialization.

Full Source Code

The full source code is included within the package. See how things are done or maybe learn something new. You can’t go wrong with this one!

Regular Updates

NodeCanvas is regularly updated with new features based on your requests, with hotfixes and improvements, and it’s hardly going to stop any time soon!

Multiplatform Publishing

Publish to any non-beta platform supported by Unity out of the box, including iOS, Android and XBox.

Extensive Documentation

Enjoy extensive online documentation written with care and regularly improved based on your own feedback and suggestions.

Responsible Support

Enjoy responsible support there to help you in case you encounter any issues.


Integrate with your favourite assets using both official and community driven integration extensions


Cinema Director

Core Game Kit





Motion Controller 1

Master Audio



Slate Sequencer


Simple Waypoint System

A* Pathfinding Project


Final IK



Furthermore, NodeCanvas seamlessly integrates with our FlowCanvas visual scripting software, able to use sub-flowscripts within Behaviour Trees, State Machines, and Dialogue Trees, as well as the other way around.


Awesome games are being made using NodeCanvas. Here are some of them!


(Hover your cursor over the nodes to learn why)