SDL or Allegro
Which one do you think is better suited for game development? SDL appears to be able to support more graphics and audio formats than Allegro and its just as portable not to mention that it seems to be easier to use. i.e. You don't have to deal with so much low level C code. I program in C++ so do you think SDL is better? But Allegro seems to be better at manipulating graphics in and sound. I don't see anything about rotating images in SDL. Also the documentation of SDL seems to be incomplete. What should I do?
I used bth, and can tell you that allegro is much easier to use IMHO. It could just be me though.
SDL isn't a bad choice at all, don't get me wrong. Both APIs uinclude everything you need to make games, and easily at that (compared to monster APIS like DirectX and OpenGL).
I chose allegro because I was more comfortable with its documentation and syntax. The allergo community is large and responsive to any questions (www.allegro.cc) and SDL just wasnt as "warm", per say.
You'll find a lot of advice by searching the board, this is a question that has been discussed many times before.
I like SDL. Allegro is such a pin to set up. I also find SDL much easier to understand (as opposed to allegro's weaird transparency/screen slcearing methods that I never quite understood...)
Also, I find it much easier to find libraries for SDL, like SDL_TTF and SDL_Mixer. The only thing that Allegro has an advantage over SDl in the pictures region, IMO, is the fact that it has a rotate_image built into (although it reuires some math skills to use).
I've almost the same problem because I want to start writing games which uses graphics (text-based games are fun to make but boring to play however I've learnt few useful things making them). My question is a bit different. If (in the future) I want to expand my knowledge and start using OpenGL then what should I choose? SDL or Allegro? Is there any similarity with these in comparison to OGL & DX?
SDL or Allegro? I recommend SDL.. first of all, imho it's easier to use than allegro.. i tried allegro some time ago.. it took me 3 days to just get it installed and make a simple black window appear.. sdl is much easier.. and everything's explained here: cone3d.gamedev.net - go to the C++ and SDL section.. good site but marius'll never finish lesson 7 :(. .. he stopped working on his site.. someone email him and tell him to complete just one last lesson :P
I didn't get the answer in 1 day and because I'm very impatient when comes to starting new things I grabbed first one which I found and started working with it. My choice is Allegro and it took me 5 minutes to install and run my first program in it (WinXP and Dev-Cpp). Now I'm reading some good tutorials + source codes + documentation and I'm working at simple tic-tac-toe game. From what I've learnt so far Allegro isn't that hard but I don't know SDL at all so I can't compare them.
Thanks for reply,
Can you give me an examples of (rather known) games written in both SDL and Allegro. I know that Icy Tower was written in Allegro but I wanted to have an overview of what these libraries can do. Or do you think that they can do the same things but in (sometimes) different way?
SDL is a thinner library in that functions for drawing circles, lines and text are left out. You can of course do these type of things with SDL, but you'll either want to it yourself or use a library. A lot of the commerical games for Linux that were ported from windows use SDL to setup a window and opengl context. You'll also have have less name clashes if you use SDL; all of the SDL functions and macros are prefixed. Allegro, on the other hand, has more functions for creating bitmaps and drawing shapes. It's probably easier to do a 2D game using Allegro than SDL.