During the past couple of months, we’ve been taking a look at our editor tool and noticed a few fundamental design flaws that our testers reported.  We went back to the drawing board and drew inspiration from other tools and games, including Amplify Shader, Blender, and Democracy 3.  A key concept from these tools and games is that information is shown when needed, and hidden (but accessible) when not.


A More Responsive Editor

We overhauled the Editor’s functionality, stability, and design. Such changes include:

  • A redesign of the nodes and connections
    • Nodes now separate incoming connections to better show where the inputs are coming from
    • In Unity’s “Play Mode”, running nodes are colored in shades of green from darkest to lightest to show the order of the AI’s thoughts (Observer -> Decision -> Action)
    • Node design is fully editable via a GUISkin object in the project
  • Knowing what AI to edit
    • Selected templates are marked with a checkbox in the dropdown menu as a quick reminder of what template is being edited
  • Better touchpad support
    • Selecting multiple nodes is a matter of clicking and dragging, as opposed to click-drag-click
    • Scrolling is much faster
  • Dark Skin support
    • We are able to natively support Unity’s dark skin for all the Unity Pro users!
  • Improved performance
    • Faster startup speeds and rendering, especially during Play Mode

Check out the before and after images of the changes we’ve made to our UI!

Our old editor.
Our new editor, after the overhaul.


The editor during “Play Mode”.  The shades of green show the order in which the AIBrain is considering which actions to run.


An example of the editor in dark skin

Clickable Connections

Clicking connections was fairly limited in the old editor.  One would have to click a small square in the middle of the connection in order to select it.  It led to a few problems:

  • Connections were hard to click with the touchpad
  • Large resolutions or high DPI made clicking even more difficult
  • Some squares overlap

Clicking on a connection is important in Dani AI, because the connection provides us additional information that is not normally shown on the editor, such as conditions.  As a result, we changed our click detection to a spline-based detection, so a connection can be clicked anywhere on the line.


A clicked connection and a built-in inspector.  Connections can be clicked anywhere on the line and are shown as bolded lines.


Built-in Inspector

Originally, we offloaded the node-displaying capabilities to the inspector in Unity.  While it does the job well, it led to a couple of issues:

  • It’s easy to lose focus on the node by clicking on another object in Unity
    • Would need to click the node again to refocus on the node again
  • A possible solution is to manage multiple inspectors
    • Done via “Add Tab/Inspector” in any editor window
    • Not many people know this trick
    • It’s easy to forget to lock the inspectors, otherwise all inspectors will show the same selected object

Instead, we opted to bake our own inspector into the editor.  For the editor coding developers, the built-in inspector maintains the same functionality, so you can keep your existing custom inspectors!


As we are nearing the public release for Dani AI (date TBD), we’re happy to continue to work with our testers for bug-hunting and feedback!

And as always, if you have any questions or would like to test our AI, please shoot us an email at info@initialprefabs.com or find us on Facebook or @initialprefabs on Twitter

— initialPrefabs Team


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s