Alternative to CEGUI? (part II)

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Van
Hobgoblin
Posts: 512
Joined: Fri Nov 19, 2004 3:56 am
Contact:

Alternative to CEGUI? (part II)

Post by Van »

First; monster, *sigh*.. /edit never mind. :roll:

Second; :wumpus: I didn't find anything about alternatives to CEGUI in the Wiki via the search. Am I missing something?

Third; I am asking the community if there is an alternative GUI interface that integrates with Ogre. I realize that this may not be a popular opinion but my confidence in CEGUI has been shaken with its recent departure of its creator and thus its future maybe uncertain. Furthermore, IMHO, its a difficult package to integrate into a large scale application in its current state. I'm sure that should the CEGUI project continue that in time it will be a very successful package however we must keep our options open.

User avatar
:wumpus:
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3067
Joined: Tue Feb 10, 2004 12:53 pm
Location: The Netherlands
x 1

Post by :wumpus: »

Ogre has been integrated by people with GTK, QT, wxWindows, FLTK, FOX, MFC, and many other GUIs. These are desktop GUIs so must be useful for large scale applications. All is findable through the search function of this forum.

User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19265
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66
Contact:

Post by sinbad »

As a response to your opinion Van, personally I've found people that bitch about CEGui just haven't learned how to use it properly, or want everything perfect on a plate right now. CEGui is an extremely solid library with shedloads of great features. Sure it doesn't have absolutely everything yet (although there really isn't a lot missing), but that's what open source development is about - build it, extend it, help make it better. That's what I did when I used it for a commercial project 6 months ago and needed a Tab control (which is didn't have at the time). Rather than bitch and moan, I just got on with it. Unfortunately the attitude of many people to open source is 'nice free lunch, give me more'. That's not the point - it's meant to be a collaborative effort. The 'all take and no give' attitude of a lot of people is what made CE quit in the first place. People have said the same about OGRE in the past where there are gaps (and there still are), but I just grew used to ignoring them. It all comes out in the wash, with time.

You won't find a rendersystem-independent, embeddable GUI system better than CEGui. The ones :wumpus: mentions above are external GUI toolkits - if you want to render GUI in a 3D window, CEGui is the best. If it wasn't, we wouldn't be using it. It's quite capable of surviving without CE, provided there are people who are constructive rather than just complaining all the time.
Last edited by sinbad on Fri Apr 08, 2005 1:22 pm, edited 1 time in total.

User avatar
CrazyEddie
Goblin
Posts: 228
Joined: Thu Feb 12, 2004 10:03 am
Location: Workin' on someting cool
x 1
Contact:

Re: Alternative to CEGUI? (part II)

Post by CrazyEddie »

Van wrote:my confidence in CEGUI has been shaken with its recent departure of its creator and thus its future maybe uncertain.
I will, here and now, guarantee the future of CEGUI; the library will continue to exist and grow.

User avatar
monster
OGRE Community Helper
OGRE Community Helper
Posts: 1098
Joined: Mon Sep 22, 2003 2:40 am
Location: Melbourne, Australia
Contact:

Post by monster »

First of all, Van, sorry if my original reply offended you. I don't know what the subsequent "rude" replies were, I assume that they've been deleted and that it wasn't my use of the word "cr4p".

Since my original sentiments have basically been echoed by the posters here I'll say no more than that.

User avatar
_mental_
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 419
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX
Contact:

Post by _mental_ »

Just to second what CE said, CEGUI's future is still bright. Development has slowed a bit since CE's departure as project lead, but I only see that as being temporary until everyone settles into their new roles.

I was actually planning on rolling out 0.2.1 this weekend (as long as the OSX build fixes are in).

Van
Hobgoblin
Posts: 512
Joined: Fri Nov 19, 2004 3:56 am
Contact:

Post by Van »

sinbad wrote:As a response to your opinion Van, personally I've found people that bitch about CEGui just haven't learned how to use it properly, or want everything perfect on a plate right now. CEGui is an extremely solid library with shedloads of great features. Sure it doesn't have absolutely everything yet (although there really isn't a lot missing), but that's what open source development is about - build it, extend it, help make it better. That's what I did when I used it for a commercial project 6 months ago and needed a Tab control (which is didn't have at the time). Rather than bitch and moan, I just got on with it. Unfortunately the attitude of many people to open source is 'nice free lunch, give me more'. That's not the point - it's meant to be a collaborative effort. The 'all take and no give' attitude of a lot of people is what made CE quit in the first place. People have said the same about OGRE in the past where there are gaps (and there still are), but I just grew used to ignoring them. It all comes out in the wash, with time.
I don't mind moving on with the CEGUI library. I have been using it for the last six months. I have posted several times that I think the library is a great library - although I believe it has room to mature. My concern is not with the stability of the library but its longevity. I can wade through and work around its deficientcies as I have been doing. It's just I didn't want to be the last rat to abandoned the ship - if it was even being being abondend.
sinbad wrote:You won't find a rendersystem-independent, embeddable GUI system better than CEGui. The ones :wumpus: mentions above are external GUI toolkits - if you want to render GUI in a 3D window, CEGui is the best.
Ah, thank you. That was an answer I was looking for in the first place.

User avatar
neocryptek
Gnome
Posts: 335
Joined: Sat Mar 01, 2003 11:21 pm
Location: Idaho, USA
Contact:

Post by neocryptek »

Re your original concern about header includes:
According to this topic HERE that problem was at least on the verge of being fixed. Did it get lost in the shakeup, or is it actually in and this is moot?

-N30

User avatar
:wumpus:
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3067
Joined: Tue Feb 10, 2004 12:53 pm
Location: The Netherlands
x 1

Post by :wumpus: »

neocryptek wrote:Re your original concern about header includes:
According to this topic HERE that problem was at least on the verge of being fixed. Did it get lost in the shakeup, or is it actually in and this is moot?
That problem is caused by the Ogre memory macros (which only exist in debug mode, and can be disabled either temporarily or permanently by a OgreConfig.h option), not CEGUI, so it's not really fair to account it to CEGUI.

User avatar
Goosey
Halfling
Posts: 88
Joined: Wed Sep 29, 2004 3:33 am
Location: Ohio, USA
Contact:

Post by Goosey »

Please see this wiki page about a way to help make Ogre and CEGUI's memory manager's work together easily: http://www.ogre3d.org/wiki/index.php/CEGUI_fix
I <3 the OGRE Wiki, and SO SHOULD YOU! :)

Tyn
Gremlin
Posts: 195
Joined: Mon Jul 19, 2004 11:40 pm
Location: England
Contact:

Post by Tyn »

Hey all, I don't usually post but I do scan the forums a lot. I can understand that the designers of Ogre want to us to use CeGUI, but really there is no alternative, correct? It seems this is the case and I have no problem with this as CeGUI does seem powerful, I have seen some nice screenshots.

However, I can include myself in that list of people who are frustrated by it's steep learning curve and have not managed to get the look I am looking for.

Are there projects out there that have open sourced and have significantly modified the default styles? Such examples are 100x better than tutorials ( not that more tutorials wouldn't be nice, but I understand the long process it takes to create takes away from coding ).

Sorry to see Crazy Ed stop working on the library as well, I hope he gets to see a lot of quality work being put out there with it in the future.
"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams

http://www.spacecolonization.net
2080: Space Colonization

User avatar
monster
OGRE Community Helper
OGRE Community Helper
Posts: 1098
Joined: Mon Sep 22, 2003 2:40 am
Location: Melbourne, Australia
Contact:

Post by monster »

Righty-ho. First off, CEGUI is the only GUI toolkit that will work more or less straight out of the box with Ogre. That's because a lot of work has been put in by various people to interface CEGUI with Ogre. So, if you want to implement an in-Ogre GUI with the minimum amount of work then use CEGUI.

If CEGUI doesn't do it for you, for whatever reason, then obviously it's possible to use some other toolkit, but be prepared to do some heavy lifting yourself. As I see it there are 3 basic options open to you if you choose this route;
1) Write your own from scratch
2) Port the old Ogre GUI to the current API
3) Adapt or integrate an existing toolkit in a similar fashion to what's been done with CEGUI.

As far as the relative merits of these options are concerned;
1) Don't underestimate how hard this will be, and how long it will take, there's a reason why CEGUI has a steep learning curve; it's complicated
2) That GUI was dropped for a reason. ;)

Which leaves us with 3. A quick surf around teh interweb took me to this page;
http://www.atai.org/guitool/
Mostly it's concerned with external toolkits, like GTK or wxWidgets, etc, but some of them seem to be OpenGL based. A couple that caught my eye were;
http://www.cs.unc.edu/~rademach/glui/
http://glow.sourceforge.net/
Both of these seem to use OpenGL to render their widgets (possibly via GLUT) so it might be fairly simple to hack (sorry; "enhance") the code to render through Ogre's graphics.

The one that seems most promising is this one though;
http://libufo.sourceforge.net/index.html
The passage that really caught my eye on the home page is where is says "You may also create your own backend or use a dummy driver to include libUFO widgets into an already existing OpenGL context." - Now I don't know how flexible it is, but maybe it would be possible to simply create an Ogre "backend" and use the library as-is?

As I say, none of these will work with Ogre without you doing some substantial integration of your own. And also, bear in mind that the Ogre devs have done much more research into this than me and they came up with CEGUI. There's a reason for that.

Mawen
Halfling
Posts: 54
Joined: Wed Jun 04, 2003 7:34 pm
Location: Calgary, Canada
Contact:

Another porting possibility..

Post by Mawen »

Before CEGUI I was looking at alternatives and as far as mature, mainstream GUI libraries is concerned (not ones designed for OpenGL as the previous post mentions), I found that GTK+ is probably the easiest to port to OGRE, and Fox, wxWindows, FLTK, et al are probably much more difficult.

I started working on this and am maybe 1/4 of the way through (rough estimate) but am not working on it right now so it probably won't get finished anytime soon (5-12 months minimum). (Someday, I'd like to have a common GUI for apps I write for my desktop and in-OGRE and while Glib seems like an abomination, GTK+ or gtkmm seems like the best choice for me, especially since it is mature and skinnable.)

But for now, like everyone says, the only option is CEGUI, which fortunately is pretty sweet. The previous alternative was Ogre's internal GUI, and it was dropped because it wasn't really an adequate solution.


(Edit: Another interesting development for GTK+ is that they seem to be planning to implement Cairo as a backend for drawing. If this happened, I could maybe port Glitz (Cairo's OpenGL backend) to Ogre instead of GDK.)

User avatar
zarthrag
Greenskin
Posts: 128
Joined: Sat Jul 24, 2004 9:07 am
Location: Tulsa, Oklahoma

Post by zarthrag »

Just accept that CEGUI is it. It's curve is steeper than other libs, but it's getting better. In all, it's no more chaotic than any other lib commonly used, even Ogre, which is subject to the occassional major change. As far as "maturity" goes, forget it - in "0.2.0" that zero is present for a reason.

Silent
Kobold
Posts: 33
Joined: Sun Apr 27, 2003 6:57 pm
Location: New York, USA

Post by Silent »

There are other GUI systems being worked on. I plan on releasing a new one in a few months.

User avatar
:wumpus:
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3067
Joined: Tue Feb 10, 2004 12:53 pm
Location: The Netherlands
x 1

Post by :wumpus: »

It will take a long time for a new one to be as mature as CEGUI though. I don't think the solution is writing another lib from scratch, but rather improving on what exists.

qsilver
OGRE Community Helper
OGRE Community Helper
Posts: 198
Joined: Sat Oct 02, 2004 9:11 am
Location: San Francisco, California, USA

Post by qsilver »

Well, I find that CEGUI is overkill for many projects. There's still a large niche for app that want a few buttons or a menu and not much else.

User avatar
johnhpus
Platinum Sponsor
Platinum Sponsor
Posts: 1186
Joined: Sat Apr 17, 2004 2:49 am
x 3

Post by johnhpus »

There's still a large niche for app that want a few buttons or a menu and not much else.
Anyone who only wants a few simple buttons with no extra overhead shouldn't be looking at a GUI library anyway.

User avatar
IoN_PuLse
Goblin
Posts: 220
Joined: Mon May 31, 2004 5:54 am
Location: Canada
Contact:

Post by IoN_PuLse »

Exactly, I wrote a quick-and-dirty buttons implementation because I felt I didn't need all the functionality CEGUI exposes, and when I do have such a need, I will use it :)

User avatar
Kristian
Hobgoblin
Posts: 542
Joined: Sun Jan 12, 2003 7:35 pm
Location: Copenhagen, Denmark

Post by Kristian »

I personally feel that CEGUI is awsome i many ways. Still It would be nice to have an alternative lightweight gui libery.
Kristian, crying out loud: "If it works. Don't fix it!" :p
HCA
HCA2
GuppyLife

User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 148
Contact:

Post by spookyboo »

CEGUI is also very good for just a few buttons. I dont understand what the fuzz is al about. I've read somewhere that CEGUI has a steep learning curve. I don't agree. In fact CEGUI has the same 'development experience' as Ogre.

User avatar
alphageek
Gnome
Posts: 365
Joined: Mon Jan 03, 2005 11:56 am

Post by alphageek »

I agree with spookyboo: CEGUI doesn't have a steep learning curve.
I think it is a great alternative to, say, no menus at all or writing your own.

However I definitely don't like the TaharezLook, and my experience customising the look of CEGUI made me a little frustrated with some of the widget-code. Not too hard to work-around or fix though.
Axiomatic: action-packed space shooter
TaskScheduler 0.3

User avatar
:wumpus:
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3067
Joined: Tue Feb 10, 2004 12:53 pm
Location: The Netherlands
x 1

Post by :wumpus: »

As soon as you figured out how CEGUI works using it for applications that need only a few buttons and a menu is a breeze too. I don't really see the neccesity for a stripped down CEGUI.
CEGUI isn't that heavyweight anyway, it's not like it has zillions of rarely used widgets or legacy crap (especially compared to real desktop GUI libs). It's neat for games.

A generally usable lib just needs some "feature bloat" to statisfy everyone. Implementing your own GUI is boring and time-sinking work, and then you generally end up with a one-shot hack instead of a well designed lib but yeah that's just IMO.

Other
Gnoblar
Posts: 5
Joined: Tue Apr 26, 2005 5:00 pm

Post by Other »

Whats about CEGUI-Bugs in Linux???

I was realy interested (sorry for my english) in an alternative for
CEGUI.

1. have problems with CEGUI's Eventhandler in Linux
and
2. The Licence makes me unhappy. I develope also a OS (OpenSource, not OperatingSystem ;-)), but
my users wouldn't like it to have such limitation like LGPL. May be they want to use my API in commercial products.

GTK, wxWindows etc looks bad for a Game. really!

If u find anything, say it please ;-)
Last edited by Other on Sat Apr 30, 2005 7:47 pm, edited 1 time in total.
---------------------
Irrlicht forever ;-)

User avatar
psyclonist
OGRE Expert User
OGRE Expert User
Posts: 286
Joined: Fri Nov 01, 2002 3:54 pm
Location: Berlin & Nuremberg, Germany
x 1
Contact:

Post by psyclonist »

Other: Funny signature...

What are your problems with CEGUI? Please be a bit more specific. Otherwise it's hard to help you.

And what bothers you about the license? It's LGPL, the same as OGRE...

-psy

Post Reply