Jump to content
Ywa

GUI system

Recommended Posts

Several people here have integrated CEGUI with Leadwerks.

 

I wrote an article about it some time ago: http://leadwerks.com/werkspace/index.php?/page/resources/_/programming/cpp/leadwerks-and-cegui-r30

 

I do not think it would be a good idea to integrate existing GUI libraries in the engine. People should have the freedom to pick whatever GUI library they want and not be stuck with the one Josh decides to roll in the engine. Leadwerks should just stick to doing what it's great at. Rendering 3D graphics.

 

EDIT: think you mixed up GWEN and CEGUI. CEGUI has an OpenGL renderer included. Judging by GWEN's website, it does not.

 

We don't have renderers for OpenGL, or OGRE yet - would be very interested in those.

Share this post


Link to post

Several people here have integrated CEGUI with Leadwerks.

 

I wrote an article about it some time ago: http://leadwerks.com/werkspace/index.php?/page/resources/_/programming/cpp/leadwerks-and-cegui-r30

It's difficult to use in Delphi. Plus it's also nearly impossible for Lua users.

 

I do not think it would be a good idea to integrate existing GUI libraries in the engine. People should have the freedom to pick whatever GUI library they want and not be stuck with the one Josh decides to roll in the engine.

Yes, however. You could still load your own GUI system in that case.

 

EDIT: think you mixed up GWEN and CEGUI. CEGUI has an OpenGL renderer included. Judging by GWEN's website, it does not.

It does have one. It's not at the website, but the SVN contains one made by the community. :)

Share this post


Link to post

In that case I can see why you would request a GUI system to be built in although I also feel that there is something to be said for picking the right language for the job. This just seems like LE on hard mode :)

 

Anyway, as long as I am not forced to use the LE implementation of whatever GUI library Josh may or may not roll in then I am impartial to the request.

Share this post


Link to post

In that case I can see why you would request a GUI system to be built in although I also feel that there is something to be said for picking the right language for the job. This just seems like LE on hard mode :)

Leadwerks on Delphi works great (thanks to Wchris his header converter). It's just that it takes a lot of time to convert GWEN or CEGUI headers to Delphi and make libraries that work with it.

 

Plus, I really think a mature game engine (although Leadwerks isn't only for game) should have a build in GUI system. Same with all other features.

Share this post


Link to post

I'm in favor of providing a built-in skinnable GUI designed for games. I think we'll get a better result with this than a third party library.

Share this post


Link to post

I'm in favor of providing a built-in skinnable GUI designed for games. I think we'll get a better result with this than a third party library.

Fine for me. :( So that means adding a GUI is on your to-do list? :)

Share this post


Link to post

I'm in favor of providing a built-in skinnable GUI designed for games. I think we'll get a better result with this than a third party library.

Isn't that what LGui is for in the SDK? yet a build in system doesn't seem bad at all. People don't have to use if they don't want to.

 

I don't see a reason why Lua wouldn't be suited for creating a gui. Old video WIP:

http://www.youtube.com/watch?v=Ai-c0Vyop1w

Share this post


Link to post

Isn't that what LGui is for in the SDK? yet a build in system doesn't seem bad at all. People don't have to use if they don't want to.

 

I don't see a reason why Lua wouldn't be suited for creating a gui.

 

Because it'll be a cold day in hell when I learn LUA :)

 

No, seriously, I think it is much easier if we can just create GUI's in HTML/XML and then load them via some core engine command rather then forcing people to code GUI's in LUA. I feel GUI's should be data-driven and not hardcoded.

 

Besides, you can use all functions in LE right now in any programming language you wish without restriction. I'd hate to see that change.

Share this post


Link to post

I'm in favor of providing a built-in skinnable GUI designed for games. I think we'll get a better result with this than a third party library.

Yep, that's what is needed and it needs to be in Lua.

Share this post


Link to post

Why does it need to be in LUA? I can't see any advantage over having a data-driven HTML/XML format that can be loaded through an engine command, exposed to all languages that can be used with LE.

 

Coding a GUI instead of designing it with highly available WYSIWYG editors is just lunacy.

Share this post


Link to post

xml based GUI for sure. Then the code in C/C++ and exposed to Lua like most of the other commands are. Also have an editor.

Share this post


Link to post

If it were HTML/XML there wouldn't be a need for Josh to create a designer. Plenty of editors out there. Dreamweaver comes to mind.

Share this post


Link to post

I assume that means Josh basically has to write an html renderer? I wonder how hard that would be.

Share this post


Link to post

There are some HTML renderers out there. I believe Tyler implemented Awesomium a while back although that will probably be to expensive in licensing. There's also Gecko which is used by Firefox but I am not sure to what license that is bound.

Share this post


Link to post

Were those able to be GUI elements in a 3D app? The examples I see look like it's just drawing what would be a webpage in 3D space. I would think ideally the GUI would be html elements drawn on top of the 3D application.

Share this post


Link to post

Good point. I know for a fact that Navi (which uses Gecko) draws on a 3D plane attached to the camera. I am not sure if it's possible to draw it as an actual 2D element but I can't imagine it's impossible.

Share this post


Link to post

I'd prefer an internal engine GUI (scalable whenever is possible, so everyone can however integrate more GUIs like CEGUI or WebKit or whatever they prefer) which doesn't require any other external library. Automatic mantain ratio on resolution switch would be also a great feature (yes I know we can do on our own but would be nice if the GUI system handles it automatically).

Share this post


Link to post

I don't really know if it really matters if it's html based or not as long as there is an editor that makes it easy to work with and customize I think that'll make everyone happy.

Share this post


Link to post

The Gui should be written in flowgraphs. Any problems with that? :)

;)

Wha-? How unproductive is that?

Anyhow, XML based would be a good approach in my opinion, with event handlers linking to reflection or DLL calls for native code. Somehow like XAML does it.

Share this post


Link to post

Could be worth taking a look at CEGUI. Their GUI's can be in an XML format, allowing for the binding of events in actual C++ code.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...