MyGUI integration

290 views
Skip to first unread message

Владимир Побединский

unread,
Nov 8, 2013, 9:49:55 PM11/8/13
to urh...@googlegroups.com

Lasse may be need switch to more modern and flexi GUI system? 

MyGUI is very well candidate to this role.



It cover all features of current GUI, but more flexible and has some tools to create layouts, skins and fonts.

It support DirectX (11 also), OpenGL, Ogre platforms. Stable and powerful gui system. MyGUI is released under the MIT License, which is a permissive open source license. 

Please look it.

Message has been deleted

Chris Friesen

unread,
Nov 8, 2013, 11:22:06 PM11/8/13
to urh...@googlegroups.com
Have you seen the editors layout/skinning capabilities?  It is a little unintuitive to modify the ui.png.  The Data/UI/default.xml houses the base styles for all of the controls and is sensible.  If you find the editor unfriendly to use please leave feedback.  Switching ui's would require quite a bit of effort reworking the events, sererializers, and lua/angelscript integrations.  The editor would also have to be rewritten.  I can understand the appeal though.  I find it kind of crazy that there is a comparable LOC for the ui components vs graphics subsystems. 

Chris Friesen

unread,
Nov 8, 2013, 11:33:00 PM11/8/13
to urh...@googlegroups.com
I also think switching to a different font and bumping up the padding/sizes just slightly would make it feel more modern.  If the concern is mostly aesthetic that is.

Владимир Побединский

unread,
Nov 9, 2013, 12:16:35 AM11/9/13
to urh...@googlegroups.com
Ok. Don't switch but add it and smooth integrate it by time.
Some fearures of current UI is missing - precent size and position, anchors, align, tooltips,switch skins on fly, controllers, plugins and others. All this is present in MyGUI.
Can talk with creators of MyGUI and maybe we can take help and consultations.

cloud chen

unread,
Nov 9, 2013, 12:49:00 AM11/9/13
to urh...@googlegroups.com
 MYGUI is used widely in game develop. It can be a very useful feature, if it will be integrated!

Chris Friesen

unread,
Nov 9, 2013, 1:48:20 AM11/9/13
to urh...@googlegroups.com
Someone has done a small integration with librocket. 

https://github.com/realrunner/urho3d-librocket

It doesn't have events i belive so you can't talk with it very effectively.  The code for rendering to urho's surfaceis probably applicable.

Lasse Öörni

unread,
Nov 9, 2013, 9:57:50 AM11/9/13
to urh...@googlegroups.com
The largest work is indeed the integration of events and scripting. Typically 3d party GUI systems (like MyGUI) come with their own event system and wrapping it in a manner that is also scripting friendly will be hard or inefficient.

I would say that if you want eg. MyGUI in your Urho project you should go ahead and integrate it yourself, then report back with your findings. If you're using C++ only it will be easier (for your project) but the demands are much higher for integrating as the new default UI.

To be honest I don't have terribly much love for the self-built UI system as it's a lot of code and the UI elements have grown to have many (possibly too many) attributes, but due to not integrating any 3rd party system we have ensured that the event & resource use are native to Urho3D and therefore remain cohesive & efficient.

Владимир Побединский

unread,
Nov 11, 2013, 2:16:51 AM11/11/13
to urh...@googlegroups.com
Enhancement of current GUI not planned?

Lasse Öörni

unread,
Nov 11, 2013, 2:54:28 AM11/11/13
to urh...@googlegroups.com
Certainly I hope it will improve, but how and when is undecided.

The UI started strictly as a pixel-perfect (integer positions and sizes) system and that probably was not a good design decision, as instead forcing integer sizes could be an option. Ideally the system should work for both game and editor -like UIs and integrate into 3D scenes (so that you could have eg. UI showing in an inworld monitor screen mesh)

The important point, do not hold your breath for major improvements happening very soon. Always, if something is blocking you right now, make your own changes, then perhaps pull request them if you think they're good for sharing.

Chris Friesen

unread,
Nov 11, 2013, 11:57:30 AM11/11/13
to urh...@googlegroups.com
I think a 3DUIElement could be kind of cool.  A base class with a model/animations as and position themselves in screen space and or world space that capture the same events as the UIElement.
Reply all
Reply to author
Forward
0 new messages