Concept: Visual Designer for Unity Editor Windows...

Hey guys. I wanted to throw out an idea and get your opinion.

How many of you would be interested in a visual designer for Editor Windows? This would be similar to the designer for Windows Forms or WPF.

Primary features would be

  • Drag controls onto a window from a toolbox
  • Select Controls in the Hierarchy
  • Preview GUI Layout
  • Resize and Position Controls
  • Edit Properties for Selected Control
  • Bind Controls To Data (automatic sync)

This is mainly for designing Editor Windows (On GUI) but could also be used for SceneView editor overlays, Inspectors, and in game GUIs.

I’m already working on an advanced Editor GUI Framework. And I want to know if I should focus my efforts on including a visual designer.

So what do you think? Would you like to see a visual designer for editor windows on the asset store?

Edit: Uploaded a mockup image.

2 Likes

What advantages does this offer over uGui?

It’s for editor windows :p.

On topic though…I find it easy enough to make cool editor windows, although there certainly is a need for a great library that implements stuff like centering buttons etc in a nicer way. A visual designer, not sure…

UGUI only makes in game GUIs. This is for Edidor GUIs like custom Windows, inspectors, etc.

AFAIK there is nothing like this on the asset store.

Ah gotcha. Cool.

Funny, I made this yesterday for the uGUI system.

https://bitbucket.org/Zeroto/uitoolbox

Yes! I’ve wanted a editor window editor for ages!

I would buy this. waves hand make it so.

If you can make it easy to rip out a single element from an inspector and replace it with something else without having to rebuild the entire thing, then you would get my money… eventually.

Uploaded a new mockup image. That should give a better idea of what I’m talking about. See original post.

Looking forward to seeing how this turns out. I do a ton of editor panels, primarily copy and paste and have a handful of helper methods. A clean tool for fleshing them out quickly could be very useful. Styling would a nice feature as well.

Thanks for the support guys.

Have you looked at PropertyDrawer? I believe you can already do this by creating a custom PropertyDrawer and PropertyAttribute, but it does require a little coding and you’ll have to translate the examples from JS if your working in C#.

You should be able to make fully functional editor windows with almost no code at all. The framework will automatically keep your data in sync by using dynamic data binding.

1896590--122170--Data-Binding-Mockup.jpg

To add button functionality you would just write an event handler and bind it in the designer like this…

1896590--122182--Event-Binding-Mockup.jpg

Edit: Updated the graphic.

I have, although I haven’t gotten around to doing anything with it. Any time I have to mess around with the editor, it always feels like I’m doing something improperly, so I usually end up not bothering. That’s probably just my issue though.

That’s cool. Personally, I don’t have much need for the data binding, most of the stuff I do is tools for artists/designers or pipeline tools. If it does layout and structure/styles that would be very interesting to me. I spend more time than I really should on tweaking. If works like your mockup and kicks out an editor layout without dependencies, I would definitely take a look! These are the kinds of things I typically build:
1896896--122216--Screen Shot 2014-12-23 at 5.56.32 PM.png 1896896--122217--Screen Shot 2014-12-21 at 6.05.35 PM.png 1896896--122218--Screen Shot 2014-12-21 at 4.56.47 PM.png 1896896--122219--Screen Shot 2014-12-21 at 6.08.57 PM.png 1896896--122220--Screen Shot 2014-12-21 at 6.01.55 PM.png

Speeding up the process would a welcome time saver!

Keep us posted!

3 Likes

Nice! I like it and it would be useful for us. :slight_smile: Thanks.

I’d be interested in this too… a RAD tool for Unity is most needed.

This tedious processes and discombobulated framework is sad. Their solution for scroll view and scroll bars are really limited and terribly documented.

Data binding would be ok, but really just something to assist in layout is all that is needed. Making sure to be able to support nested BeginArea & BeginGroup would be handy.

as it is, since scroll bars for GUI are pretty much dysfunction in my use case, I’m going to have to roll my own.

on that note, I probably wouldn’t use the “scene” view as my RAD environment… I would create an editor window to make editor layouts… and you could probably use your framework to make the tool :smile:

Ok…I have to ask and if it’s a trade secret then I understand.
How did you get the edit window updating in real-time? Is it just references to the controls?

Data binding is going to be key to something like this. They way the GUI calls are implemented it’s a pain in the backside getting data in and out them in a way that’s useful to anything other than a top down script.

Did anything ever come of this?