SDL or Windows

Started by
10 comments, last by FireNet 19 years, 6 months ago
ok im working on an engine (and other classes) that will help me in future creation of tile based games but right now i am creating this engine for SDL (which i have never used but might move to as i find the windows API is (and im being nice here) bad) and i dont know if i should maybe just stick with windows because i am more comfortable with it or should i just finsih the engine then learn more SDL and then fine tune it Thanks for the imput [smile]
____________________________"This just in, 9 out of 10 americans agree that 1 out of 10 americans will disagree with the other 9"- Colin Mochrie
Advertisement
I find SDL easier to use, and it will also make porting to other OS's much easier (if you decide to or let others). If you prefer Windows programming, though, go for it. It's mainly a matter of opinion.
Stick with SDL, win32api isn't meant for games.
SDL is great. I'm using it now to write my third game (asteroids). Thing is, I don't plan on using it religiously though because I have no idea if it's even used in the "real" world (that is, in the professional world). What I'm saying is you might want to keep learning the Win32 stuff anyways, especially for level editors and whatnot. Then again, there is always gtk+...

Personally, I view SDL as a very convenient crutch with which I can use to learn OpenGL.

- heap
I'd definately recommend sticking with SDL. It's a bit of a pain for making things like level editors because you can't just create menus and buttons, but win32 isn't all that easy for such things either. I use c# for my level editors because it takes so much less time. win32 is an all around pain

by the way, there have been some AAA games that were ported to linux using SDL.
-------------------------------See my tutorial site: Click here
SDL is used in the real world - if you look on there website you can find a list of comercial games that uses it. I think one of the recent UT games used it, and there are a few others. Its a solid, well developed and stable library that just play joy to use compared with anything else i've tried. Besides whatever you use, most game companies have they're own inhouse source so you'll have to learn something new no matter what you learn for your own projects. I'd say go with SDL - if you already know win32 it should take you about 15 minutes :D
I belive SDL requires payment for use in commercial games,not too sure though.

Anyway SDL is really good and makes output/input/sound quite easy.Beats having to have much code like OpenGL and DirectX to get a window open.

Knowing the widows API will be very usefull if you want to learn DirectX and OpenGL which are standards in the industry.

Quote:Original post by ontheheap
SDL is great. I'm using it now to write my third game (asteroids).


Same here (4th), but in SVGA and only lines(colored ofcourse).(Why SVGA, since the windows API sucks for games [grin] and OpenGL is way to advanced just to wasted on lines, hence SVGA)
(Why not SDL, you know, now that it comes up,.... I forgot about it[grin])
______________________________________________________________________________________________________
[AirBash.com]
Quote:Original post by FireNet
I belive SDL requires payment for use in commercial games,not too sure though.

This is a pretty touchy area. Technically, I've heard, you're safe if you only dynamically link (use the DLLs) to the library. However if you statically link (use the source), then you're under control of the LGPL.

I'm not a lawyer however, and even Tom Buscaglia has warded off this subject. My advice, if you're looking to commercialize a game with SDL (like me) would be to find a good lawyer and talk to other people who have published using SDL to make sure you don't get bitten.

And even still, there's nothing wrong with donating a bit of sales to the SDL fund - it's a great lib after all. (even tho it's starting to grow a bit stale)

Drew Sikora
Executive Producer
GameDev.net

Quote:Anyway SDL is really good and makes output/input/sound quite easy.Beats having to have much code like OpenGL and DirectX to get a window open. Knowing the widows API will be very usefull if you want to learn DirectX and OpenGL which are standards in the industry.

Opengl does not create its own window, and therefore not knowing win32 will not hinder your learning of it, as there are several ways to get by. as has been mentioned, sdl ports opengl nicely (both being in commercial use), and glut does as well.
one of the benefits to sdl is that fact that it is fast, simple, and 2d; you can make your own extensions quite easily. and if you really need a HDC(or is it a HWND), for some arcane purpose, you can get it.
try to refrain from doing that.
- stormrunner
Quote:Original post by stormrunner
Quote:Anyway SDL is really good and makes output/input/sound quite easy.Beats having to have much code like OpenGL and DirectX to get a window open. Knowing the widows API will be very usefull if you want to learn DirectX and OpenGL which are standards in the industry.

Opengl does not create its own window, and therefore not knowing win32 will not hinder your learning of it, as there are several ways to get by. as has been mentioned, sdl ports opengl nicely (both being in commercial use), and glut does as well.
one of the benefits to sdl is that fact that it is fast, simple, and 2d; you can make your own extensions quite easily. and if you really need a HDC(or is it a HWND), for some arcane purpose, you can get it.
try to refrain from doing that.


OpenGL does not create it's window, yea it's true but you still need Window API code for get a window open.So knowing the API will make the code understandable rather than having to copy it blindly.

Also if one is using OpenGL with just the Windows API knowing it (the API) is very useful for getting stuff like input and for tons of other small things that may make life easier.

Anyway you are using windows, so what's the harm in learning it's API, it not too difficult once you get the hang of it [smile]

Btw after getting the HWND you can create an HDC.
______________________________________________________________________________________________________
[AirBash.com]

This topic is closed to new replies.

Advertisement