-
DirectX or SDL?
I've just finished learning how windows programming works. I can successfully write my own drawing functions, get smooth movement with bitmaps, write resource scripts, make animations with frames, graphical menus, pausing features, etc.
Now I'm thinking of taking a stab at learning DirectX. I briefly looked over a tutorial for it and nothing look real foreign or anything, looks pretty easy actually.
Anyhow, this thursday I'm going to be installing a distribution of linux on my spare 20 GB hard drive, and use it to dual boot with Windows XP (Windows gets the 100 GB hard drive heh). I'm expecting to be using linux a lot, so might want to try out SDL, as I won't be able to use DirectX on linux (I don't think?).
What kind of games can SDL create? Good quality? As good or better than Windows API games? I'm sure DirectX has to be better, but how much?
By better, I mean -> DirectX and OpenGL are better than console and Windows API alone. Is SDL up there, or no?
-
SDL uses Direct-X or OpenGL, if im not mistaken.
-
SDL was used by Loki, among others, to port games to Linux.
Such games include:
Heretic II
Myth II
Soldier of Fortune
Heavy Gear II
Heroes of Might and Magic III
Postal
and more
Also, LGP still uses it, and they're porting:
Majesty
Disciples 2
Bandits: Phoenix Rising
and more
Of course, SDL does 2D and interfaces to OpenGL nicely (I've only compared some examples that do the same task, and the SDL/GL combo looked easier).
In Windows, it will use DirectX for the 2D drawing routines, not sure about 3D, since I don't think that SDL does 3D by itself. But SDL would still be good to use for input, network, sound, etc. and there is the option touse OpenGL for 3D... That would make cross-platform compatability easier, if you wanted to go that route.
I like SDL, having actually used it for a game now, and I'll learn OpenGL myself, primarily because I use Linux, which has no DirectX, but I can release stuff for Windows as well, since Windows does have SDL and OpenGL.
Anyhow, that's my opinion. I'm sure someone will disagree with me.