Someone on here mentioned SFML ("Simple and Fast Multimedia Library") before and I just decided to try it. It's very, very intuitive and easy to use. I don't even need to read the explanations -- I can immediately understand what the code is doing. The tutorial is excellent.
I really like it. SDL is a little irritating because it has all these extension libraries written by different people, and tutorials all over the place. With SFML, all the libraries and the tutorials are in one place. It's much easier to use.
SDL is a bit more low level than SFML although SFML can do a majority of whatever SDL can do and then some. Plus, it has great structure using C++. A fine example of a good C++ library.
Also, unlike SDL, its graphics package is rendered in OpenGL instead of a software renderer (although next SDL release (which has been coming out for the past two years) supposedly has support for it).
@computerquip.
That's one of the things I like about SFML. All the libraries are centralized in one place. With SDL, they all seem to be written by other people.
I have found some strange kinks here and there on Linux. Mainly since Xorg doesn't cooperate and fails to make sense a majority of the time but there are work around you can use.
Speaking of Linux, could you test the kernel module I just made? It makes beeps with the built-in PC Speaker. Just run the shell script, it will tell you what to do. By the way, I wouldn't go over 1 KHz, I started getting worried when It went too high.
Thanks :)
Source code's included, if you want to compile it yourself or modify it, the Makefile's also included but you'll likely need to have a set of headers in /usr/src.
- You can't specify a non-looping "intro" portion for the music (though I'm currently writing my own class based on sf::Music to add support for that, so it's not a big deal)
- No 3D (or "2.5D"). This is kind of a huge turnoff in my book. At least with SDL you can use OpenGL directly and bypass SDL's video completely (which is something I pretty much always do since SDL's video is pretty much crap). But I don't see how you can do the same thing with SFML.
It's great if you just want normal 2D blitting with rotation and alpha blending though. I just really wish it went the extra step and had a interface for 3D rendering.
Apparently I'm wrong about the second thing. I just didn't look into it enough.