Hey all!
Over the course of the last 3 years, trying to find time between work and finishing my degree, I built Nodus.
And this is it! For only $50! (Or whatever the Euro equivalent is with VAT…)
Nodus is a Visual Programming Language for Unity, designed to replace the need for having to constantly tweak scripts and dig through code to debug.
This extension can be used by anyone, whether it’s experienced programmers, or artists and animators.
Some knowledge of how to program in C# goes a long way however, as that is the language Nodus is based off of, and uses the standard aspects of the language.
The main purpose of this system is to allow you to create MonoBehaviour components without ever having to look at a single line of code.
Some details for the interested (Programmers/Enthusiasts/etc.):
ACCESSING EXISTING CODE:
You can add namespaces to the HInfo object, and every class/type/function/property in that namespace is then accessible by Nodus. (That’s literally all you have to do).
This is for Unity’s own API, and 3rd Party APIs. The reason behind this is that you don’t need or want EVERY single function Unity has ever made in every namespace, but the option is there for you. And if you have another 3rd Party system that’s wrapped in a library, adding the namespace does everything for you. (Just tell Nodus to compile that into it’s library)
If you make changes above, Nodus will require a recompile, but this is the only time you have to do it.
(Unless you change a function header, or add new functionality into your own code).
And the massive XML library Nodus creates is Editor side only, so the only information that goes out to your end game is a series of instructions in the form of nodes.
ADDING YOUR OWN CODE:
The main goal of Nodus was to make things as easy as possible.
No one should ever have to actually touch the Nodus source, but can if they wish.
Similarly, no one should ever have to worry about reflection, or anything more than writing their code as normal.
It’s all done with attributes, and you’ve 3 to work with.
So syntax wise, you have a choice.
- [NOBJECT] will pull in every prop/field/function in a class/struct
- [NFUNCTION] will add a function as a singular node for you
- [NEVENT] makes an event accessible as a node for you
IT DOESN’T END THERE:
I forgot to mention that not only is there all of the code based stuff above, but users can create their own sub functions!
Subgraphs as they’re called behind the scenes in Nodus (in case you ever look).
They can be saved out to your assets, and shared through here.
Essentially they are normal looking Nodes within Nodus, and you can double click (or right click) to enter it, and it is similar to a scripted function, with entry and exit points, and you can design it as if it was a normal graph.
So if you made something cool, you can share it with others!
Here’s a gif of me entering my looping timer sub-function:

Other Details:
WHAT YOU GET: (Functionality)
- Works on Unity Pro and Free!
- Simple, yet useful UI
- Uses all of the basic principles of C#
- Create custom functions within the editor and save them for later
- Real Time Debugging
- Full Undo/Redo Features
- Full ‘behind the scenes’, customisable Metadata system for node names and descriptions
- Reflective precompile of the entire assembly creates over 100,000 node by default, and 1000’s more can be added with a click.
WHAT YOU GET: (Assets)
- Nodus Editor
- Full Source Code
- Reflective C# precompiler which builds the Node library, which is excluded from built games.
- Demo Top Down Shooter Game, built entirely with Nodus.
THINGS TO COME:
- Full Code Generation (Any script type)
- Networking Implementation
- Editor Extensibility.
- Multilingual Support.
- Tutorial Videos.
- Store submissions from earlier versions of Unity 5.
Nodus Site (Tutorials can now be found here too!)
Nodus Forums
Thanks for checking it out!
Change Log:
1.0.5f2:
- Added Overload handling.
- You can now choose the overload you want from the hierarchy.
- Highlighting the overloads will tell you their details (variables and return) in a tooltip.
- The same can be said for all Nodes that don’t have a user given summary.
- You can now add user only generated code through your compilation asset.
1.0.5f3:
- Reorderable Compilation info
- New way to save/load hierarchy (Makes things faster for playing, changing info, etc)
- Added graph-only based Nodes to favourites
- (Better than events where you have to also reference your graph, as these self reference).
- Always available basic/primitive types
- Drag and drop variables
- “This” (Graph Self Referencing) node
1.0.5f4:
- Now the hierarchies only load once on editor start up, and persist for the duration of your Unity Session.
- The ability to search when dragging off from a type.
- Left click empty graph to cancel mouse selection
- “Don’t show again” for expansion options