Introduction

Hi, I’m Febucci and I’ve created this package to help having a clearer Hierarchy in Unity, organizing everything in a “tree view” and including extra informations like Components Icons and groups/divisors.

2020 febucci custom hierarchy for unity free plugin

I have a lot of gameObjects in each scene of my current game and I started getting lost in the default Unity Hierarchy. That’s why I’ve spent a lot of time making this little plugin and now I’m super happy to share it with you, for free!


Features

Here’s what the plugin can achieve.

Non-intrusive

First of all, the package is non-intrusive. This means that once you install it, you don’t need to add any Component to your gameObjects (as opposed to some similar plugins in the Asset Store).

Everything is automatic and applied to all scenes, and once you unistall it your project is left unaltered.

Tree View

The “tree view” helps understanding the nesting level of parents and children (this phrase makes no sense outside this context).

You can specify how many “branches” there are and all their colors (once an array ends, its colors are looped back).

2020 febucci custom hierarchy for unity tree view

Icons

You can visualize gameObject’s Components icons directly in the hierarchy, without having to modify their scripts “gizmos” (which caused a reload and took me a lot of time).

It works by assigning a texture to a scripts (via a ScriptableObject), and it also works for its inherited classes. You can also visualize the GameObject’s Scene icon.

2020 febucci custom hierarchy for unity icons

This was the main reason I created this plugin. I have a lot of different components on a lot of different gameObjects, and I reeeally got lost in the hierarchy most of the time. Example: with this plugin now, I can set up an icon for all the classes that inherit from my abstract “SceneTrigger” class, and instantly visualize all the other game triggers in the hierarchy.

P.S. Interfaces don’t work.

Separator

I use “EditorOnly” gameObjects to separate the hierarchy of my scenes, since they are removed from the build (my unitytip here). For this reason, this feature colors a GameObject if it has an ‘EditorOnly’ tag and starts with ‘>’.

2020 febucci custom hierarchy for unity separator

You can set a different color and a different intensity.

Alternating Lines

This feature helps distinguishing one line from the next one. As always, you can modify color and intensity on this one as well.

2020 febucci custom hierarchy for unity alternating lines


Combine all the above features together and here you have ‘Custom Hierachy for Unity’.

2020 febucci custom hierarchy for unity preview


Limitations

Here’s what the plugin cannot achieve.

Support

I’ve created this package based on my specific needs.
I won’t actively update it (and/or reply to support requests), so if you need any other feature you have to modify the source code (or get another asset from the Asset Store).

This is also why this plugin is free and it is available on GitHub! We can all improve it together, for everyone <3

Overlay

The background colors are actually overlays. This means that if you set a color alpha too high, it will hide the below label. It shouldn’t be a problem (it definitely isn’t for me), but just be aware about it.

In case you want to fix it: I haven’t found anywhere how to draw colors behind the hierarchy labels, so the ‘fix’ would be drawing the color and then drawing on top the label another time. Please let me know if you are able to solve it!


Download

If you find this project useful, please let me know!!!
I’ve spent a lot of time working on it and I’d be super happy to see you taking part in it and sharing it around.

You can find the project on its GitHub repository.

As always, you can subscribe to my game-dev newsletter below, and never miss a post like this.

Have a lovely day and hear you soon, cheers!