[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Which Game SDK to choose?



Hi List!

I want to program a 2D RPG called Empire of Angels. Actually, I have already 
begun to do so and it is also registered at SourceForge. The game shall be 
running on different platforms, at least Linux and Windows, with Linux being 
the development platform. Apart from the game, I want to program some tools, 
too, including a map editor to design the levels. My first attempt was to use 
the Allegro library for the game and Qt for the map editor. You can get the 
code at SourceForge.
Unfortunately, I am not satified with this choice, primarily because I cannot 
use the game engine in the map editor, so I have to reinvent the wheel quite 
often. Plus, Allegro uses the DGA library for hardware accelaration under 
Linux, which requires the program to be run as root. I think this causes 
unnessesary security issues. Furthermore, the uncommercial Qt version for 
Windows is the old 2.3.2, but I want to have Qt 3 on my Linux machine. I 
addition to that, my coding style has changed a lot, so I don't mind a 
rewrite of the code.

So, what I am looking for is a solution which allows me to write a game engine 
in C++ and integrate it in the game and the map editor. The library used for 
the game engine should be able to draw graphics using hardware accelaration, 
play sound, draw TrueType fonts (perhaps anti-aliased), manage input and 
should preferably provide timers, easy directory access and other sweet 
goodies. The tricky part will be the map editor: It needs a fairly advanced 
GUI, though I am not sure if it should be inside the window managed by the 
game engine, or if the game engine should be integrated in a window managed 
by the GUI Framework. Furthermore, it would be nice if the GUI could be 
programmed in a higher-level language like Python or Perl. It is particularly 
important that I want to create a 2D game, so I don't want to use OpenGL. 
There are many frameworks around which work with OpenGL, but that's not what 
I am looking for.

I have done some research and have found the following possibilities:

SDL + wxWindows:
This is the first approach I have thought of: SDL shall be used for the game 
engine, wxWindows for the map editor, integrating an SDL surface. I haven't 
tested it yet, but there has been a discussion on it at the SDL mailing list 
in January 2003, and people seemed to believe it is possible. This solution 
would be nice, too because wxWindows is able to do Python and Perl, too. 
Addionaly, I would get the Look & Feel of a normal GTK+/Windows application. 
Has anyone ever tried this?

SDL + FLTK:
I have heard of this at the SDL mailing list, too, and the people seemed to be 
quite happy with it.

SDL + ParaGUI:
ParaGUI is a library to create a GUI inside an SDL surface. This would meen 
that the map editor will not look like a normal windowed app but why not? 
Would you like this?

ClanLib:
This is a complete game framework including a GUI and many other things. It 
works on Linux and Windows. Of course, it would be nice to require only one 
library instead of a combination of two. But I would have to code everything 
in C++.

PowerPak:
I have seen it on resources page on lgdc and it sounds pretty good. Has 
anybody used it?


I would very much like to hear your comments on the previous points and would 
appreciate any other suggestions to my problem. Any advice is good.

TIA,
Pascal Maillard