SDL v. SFML

Which one is better for 2D RPG type games and has more room for control and fine tuning?
Last edited on
They both allow you to make any kind of game you want. Personally I think SFML is the better library, but each have their pros and cons.

Here's a list of the pros and cons I could think of. It's probably incomplete... but it shows why I like SFML better:

SDL
Pros:
- It's a C library, so linking to it is easier and you probably don't need to rebuild it yourself.
- It's older, so it has had more time to get accepted and ported to more obscure devices. There are also more tutorials, a wider user base, fewer bugs, etc.

Cons:
- It's a C library, so using it is more awkward (need to manually clean up things, need to manually initialize things)
- Its graphic lib completely sucks. It's based on archaic surface blitting techniques that are 10 years out of date. You pretty much have to use OpenGL directly if you want any kind of respectable performance.
- Its audio lib is also outdated and rather minimalist. It pretty much only allows you to stream raw pcm. There is an SDL_Mixer add-on library which makes it easier to play individual files, but AFAIK all the mixing with SDL_Mixer is done in software (yuk).


SFML:
Pros:
- OOP design makes it simpler to use and harder to mess up (leaking memory with it is much more difficult).
- More modern techniques used in both audio and video libs. Things like flipping/rotating graphics (which SDL can't do with it's surface blitting nonsense) are very simple. Audio is hw mixed when possible, and more complex things like pixel shaders are supported.
- The 'Thor' add-on lib goes even further and adds things like particles, and I think lights.
- Graphic lib driven by OpenGL, so it's fast.

Cons:
- Not as mature. Bugs still being ironed out, fewer tutorials available, smaller user base.
- C++ lib, so much more difficult to install and link. This is a very common stumbling block for newbies that try to use it.
Thank you very much, due to internet restrictions where i am at i cant download much and sites are blocked so all i can use is SDL at the moment but when i return to the states i will check out SFML it was my first choice but i ended up not being able to download it haha. :/
Topic archived. No new replies allowed.