PDA

View Full Version : wxWidgets



MrPhil
10-07-2004, 06:45 PM
In Eric Sink's (http://notalegend.com/) latest article on MSDN (http://msdn.microsoft.com/longhorn/default.aspx?pull=/library/en-us/dnsoftware/html/software10012004.asp) he mentions that he used the wxWidgets (http://www.wxwidgets.org/) class library to build his Winnable Solitaire (http://solitaire.ericsink.com/) on. I hadn't come across this library before and wondered if anyone has any experience using it to make games?

PS For you C# lovers: wxNet (http://wxnet.sourceforge.net/)

Rainer Deyke
10-07-2004, 07:21 PM
I've briefly tried wxWindows. I remember that it encourages bad C++ practices and that it was ultimately too slow for what I was using it for.

Diragor
10-07-2004, 08:24 PM
From my brief experimentation with it I don't recall much that would be useful for most game development, except maybe for a level editor or something. Winnable Solitaire is a windowed app with a toolbar so I can see the use there, but for a full screen, graphically rich game I think something like SDL would be much better.

Jim Buck
10-07-2004, 10:20 PM
I am using it for a viewer app at work, and I love the library. It's awesome for building a GUI app. Unless you are doing something with a lot of windows-based UI, you wouldn't really use it for a game. Perhaps as a high-level framework.. or maybe for a debug build of the game where you have lots of things you can control/edit during the gameplay (with menus, pop-up dialogs, etc).. but not for shipping the game.

Kai Backman
10-07-2004, 11:16 PM
I'm trying to get it to compile statically and in that case we will use it to run our launcher application. The launcher includes a self updating feature which requires a bit more UI than a single button. Seems like a clean solution if you desire cross platform support.

EpicBoy
10-08-2004, 04:58 AM
We're using it at Epic Games for the next iteration of UnrealEd. It's serving our needs well and I haven't seen the speed issues or bad coding practices that someone above mentioned. Seems fine to me.

I would also say that unless you're doing an editor or something that you expected to be cross platform, there wouldn't be a lot of benefit to using it. For a graphically based game where you're drawing to the entire window every frame, there's little point.

Mike Wiering
10-08-2004, 05:17 AM
Some of you might be interested in wxBasic: http://wxbasic.sourceforge.net/

It's still in early development and the last time I tried it all OpenGL commands seemed to be broken, but I think it's an interesting project. It might be useful for creating a simple multi-platform app.

Jim Buck
10-08-2004, 06:32 AM
Oh, and on that topic, there is also a wxPython. It seems a lot of bindings for various languages were created for wxWidgets (argh, I just can't get used to that name over it's former one wxWindows).

Wow, UnrealEd could definitely be the "killer app" that really gives wxWidgets some serious exposure.

SyneRyder
10-08-2004, 08:03 AM
... I haven't seen the speed issues or bad coding practices that someone above mentioned....

What about window flicker? When I tried making some apps with it, it had horrific flicker whenever I tried to resize the window. Have you noticed this, and if so how did you work around it?

EpicBoy
10-08-2004, 09:15 AM
Flicker can usually be worked around. It's generally a matter of handling your paint messages properly. Raw Windows programming has the same issues if you just go with the default implementation for your window. Judicious use of CS_CLIPCHILDREN and CS_CLIPSIBLINGS eliminates most of the flicker issues I come across.

MrPhil
10-08-2004, 04:04 PM
I remember that it encourages bad C++ practices and that it was ultimately too slow for what I was using it for.

:eek:
Unless you are doing something with a lot of windows-based UI, you wouldn't really use it for a game. This is what I suspected, thanks!


The launcher includes a self updating feature which requires a bit more UI than a single button.Excellent idea, I'll have to keep it in mind. (PS I loved Space Station Manager; I’d love to see you expand it into a Space Program Manager!)

Thanks for all the feedback.

Game On or Make Game On,
-Mr.Phil