The above image was done more in a challenge way than anything else.
I discovered lot of very useful things while doing that. For example, everything I assumed was impossible to reach or to modify in UnityEditor assembly is actually all within reach.
So far, I haven’t done much; just added some events here and there for me to hook on from my own editor script.
However, this approach offer lot of unexplored potential. I’m wondering if there’s actually enough interest to start a open source-like project for “jailbreaking” UnityEditor properly.
The question is; “Should I actually put my time in this?”
For the same reason this cannot be published on the AssetStore; it’s most likely against the user agreement since it modifies the UnityEditor.dll. I’m all for community project, but I doubt Unity would support it.
Frankly, I still don’t understand why Unity flagged so much as being internal in their library. Why so much wasted space in that toolbar and no ability to add anything in there?
Ah…make sense… hoping any unity official can respoding on this.
it would be great tho if this can be community projects and doing it directly in Unity forum
All the functions that are not available may change at any time or may be removed. All the functionality that is available but not documented will less likely change, but you can’t expect any official support for it.
I like it that not any extension from the asset store thinks, they should modify my toolbar. It is enough that many modify the gui of the hierarchy and components like the transform.
In this example, I added an event at the begin and at the ends of all method named “OnGUI”. I doubt Unity would change that method names, and even if they do, it’s easy to change.
You might not like messing with the toolbar, and it’s fine. But there’s lot of place I would love to add something - like an icon at the top of the inspector beside that ? blue book icon - and I can’t because they exposed nothing for it.
In my opinion, one of the huge advantages of Unity is the understandability and the simplicity of the user interface. The more things that can be added at various places, the less intuitive the interface becomes. I love it to have a very consistent concept and almost every user understands where some functionality can be found.
Even now I find almost hidden things in the user interface. E.g. I never expected to find functionality in the gear wheel at the top right. Bitmap2Material has an option in there to export the generated textures. In my opinion it was not a good decision to hide this functionality there, because almost no one I know is even aware that some things can be found at that gear wheel.
What I want to express with that is that Unity has a very solid concept in my opinion that allows beginners and advanced users alike to become comfortable with many packages from the Asset Store pretty easily. If we as publishers had a lot more freedom to modify the interface, I am fairly certain that we would loose a lot of that intuitive understandability.