Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411512 Posts in 69376 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 08:42:14 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)SDL vs. Allegro
Pages: [1]
Print
Author Topic: SDL vs. Allegro  (Read 10778 times)
OryBand
Level 0
***


Screamadelica.


View Profile WWW
« on: July 19, 2008, 02:56:48 PM »

Hello everyone.

I've been following the TIG website for more than a month now, and have finally decided to join the community. I've just finished registering my nick and staying around a bit at the #tigIRC chatroom an hour back. Smiley

For short, my name's Ory, and I'm from Israel.
Started serious digging into indie games about the same time Aquaria went out.

I will post my introductory post soon, don't worry. It's just really late here, and I wanna ask this question first, so I could check for answer when I get up.

I've decided to start developing my own game a couple months back.
I have just finished an OpenGL book, and am looking forward to learn either SDL or Allegro to help me with the game. These two just seem the best options for my kind of game programming.

I know this question must have been asked a hundred times, but I haven't found a serious answer for my problem (even the search function in this forum didn't help).

My game will be a 2d platform game, but with vector-graphics. No sprites at all. This should resemble something similar to Another World by Delphine.


There will be some 3d effects, like a couple of 2d layers one behind another, particle effects and such. But, the overall theme will be 2d.

In addition, the game will be potentially cross-platform.

This is why I've decided to work with OpenGL, and not DirectX.

I have looked a bit into SDL and Allegro, and have been trying to decide which library I would use. However, I'm a bit unfamiliar with both and can't decide.

I've understood Allegro is simpler, and is more comfortable to work with on game programming. However, I've learned that it is not that compatible with OpenGL. I know there are some libraries to help with that, like AllegroGL and OpenLayer, but I don't how good are they.

SDL should be more tweak-able and gives better control over the different aspects of the program. In additions, it allows multi-threading and some other needed stuff. However, it is more complicated.

My question is: From your knowledge and experience, which gaming library will be better for what I'm trying to achieve?

Thank you very much for your help.
Logged

Never go to bed mad, stay up and fight. - Phyllis Diller
Alec
Level 10
*****



View Profile WWW
« Reply #1 on: July 19, 2008, 02:58:29 PM »

If you're going to use OpenGL, use it with SDL. SDL is actually really easy to use!
Logged

Massena
Level 4
****


Satisfied.


View Profile
« Reply #2 on: July 19, 2008, 03:10:35 PM »

If you're going to use OpenGL, use it with SDL. SDL is actually really easy to use!

SDL all the way. Allegro broke my heart with terrible tearing problems that I couldn't solve, and yeah, SDL interfaces very nicely with OpenGL.
Logged

Ryan
Level 1
*



View Profile
« Reply #3 on: July 19, 2008, 10:24:08 PM »

As far as I know, allegro has merged AllegroGL into their codebase since 4.3.10, so that's an option. The community over at http://www.allegro.cc/ is pretty awesome, if you decide on allegro you'll be taken care of.

SDL is a pretty awesome library as well for GL thingies, you can't really go wrong with it. I as well as other members on this forum use the SDL/GL combo, so I'm sure any questions or problems you have we can be of assistance.

Gentleman
Logged
Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #4 on: July 19, 2008, 10:28:13 PM »

Another one for SDL+GL.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
Kekskiller
Guest
« Reply #5 on: July 20, 2008, 12:43:06 AM »

SDL is pretty limited to lower funtionality, but very stable and has a good interface design. We should ALL use data types such as Uint32 and so on Kiss Kiss Kiss ... You can do almost EVERYTHING with SDL + GL, good choice!

Allegro reminds me of Blitzbasic, only for C++. I've seen many Blitzbasic programmers using allegro, it seems that they're very happy about it. I don't really think it's something that will bring you to programming self-awareness, because it's more a collection of functions to make some game-related stuff.

With SDL you'll have to code a bit more, until you're using OpenGL (which is has a similar good interface).
Logged
Terry
TIGSource Editor
Level 10
******



View Profile WWW
« Reply #6 on: July 20, 2008, 04:22:33 AM »

They're both great libraries, to be honest. I use Allegro, but that's just a personal preference.
Logged

OryBand
Level 0
***


Screamadelica.


View Profile WWW
« Reply #7 on: July 20, 2008, 05:43:48 AM »

Thanks for the replies, everyone. It really helps.

I'll see what I can do with it. Smiley
Logged

Never go to bed mad, stay up and fight. - Phyllis Diller
cmspice
Level 1
*


View Profile
« Reply #8 on: July 20, 2008, 11:12:31 AM »

I think when you use SDL with OpenGL you outsource any drawing to openGL and use SDL to handle threading input and sound which is pretty easy in SDL. (To be honest, the drawing functions are pretty easy to use too).

Great source for SDL tutorials and a section on SDL + GL. http://lazyfoo.net/SDL_tutorials/index.php

Goodluck.
Logged
OryBand
Level 0
***


Screamadelica.


View Profile WWW
« Reply #9 on: July 20, 2008, 12:22:42 PM »

I think when you use SDL with OpenGL you outsource any drawing to openGL and use SDL to handle threading input and sound which is pretty easy in SDL. (To be honest, the drawing functions are pretty easy to use too).

Great source for SDL tutorials and a section on SDL + GL. http://lazyfoo.net/SDL_tutorials/index.php

Goodluck.
Thank you! Beer!

If anybody else here got some good stuff, please let me know.
Logged

Never go to bed mad, stay up and fight. - Phyllis Diller
Ishi
Pixelhead
Level 10
******


coffee&coding


View Profile WWW
« Reply #10 on: July 20, 2008, 03:50:58 PM »

Another vote for SDL+OpenGL. SDL has cross platform stuff for opening a window, input etc, and then just lets you use OpenGL directly which will be what you'll want for doing vector graphics I think. (code example: http://gpwiki.org/index.php/C:SDL_With_OpenGL)
Logged

cmspice
Level 1
*


View Profile
« Reply #11 on: July 20, 2008, 11:55:04 PM »

heavens, those tutorials were GODSEND for me. The previous tutorials I had been using made SDL sound so complicated. I learned SDL with lazy's tutorials in 2 days.
Logged
muku
Level 10
*****


View Profile
« Reply #12 on: July 20, 2008, 11:55:59 PM »

I use SDL with OpenGL too, works just fine.

Also, if you're really serious about vector graphics, you might be interested in ShivaVG, an open-source implementation of OpenVG, a vector graphics standard similar in design to OpenGL:

http://ivanleben.blogspot.com/2007/07/shivavg-open-source-ansi-c-openvg.html

This was pointed out to me in a recent thread on vector graphics. Maybe it's of use to you.
Logged
OryBand
Level 0
***


Screamadelica.


View Profile WWW
« Reply #13 on: July 21, 2008, 08:34:04 AM »

Another vote for SDL+OpenGL. SDL has cross platform stuff for opening a window, input etc, and then just lets you use OpenGL directly which will be what you'll want for doing vector graphics I think. (code example: http://gpwiki.org/index.php/C:SDL_With_OpenGL)

Thanks, will look into it.

I use SDL with OpenGL too, works just fine.

Also, if you're really serious about vector graphics, you might be interested in ShivaVG, an open-source implementation of OpenVG, a vector graphics standard similar in design to OpenGL:

http://ivanleben.blogspot.com/2007/07/shivavg-open-source-ansi-c-openvg.html

This was pointed out to me in a recent thread on vector graphics. Maybe it's of use to you.

Thanks also, but I do intend to use some sprites (perhaps, not sure yet) for GUI and such. Besides, why should I use this instead of OpenGL? It's pretty new and I don't how stable or supported it is.
Logged

Never go to bed mad, stay up and fight. - Phyllis Diller
MekanikDestructiwKommando
Level 3
***


Let's ROCK!


View Profile
« Reply #14 on: July 31, 2008, 05:32:50 AM »

My game will be a 2d platform game, but with vector-graphics. No sprites at all. This should resemble something similar to Another World by Delphine.
Cool ftw man.
Logged

Quote
There have always been interactive experiences that go beyond entertainment.  For example, if mafia games are too fun for you, then you can always join the mafia.
OryBand
Level 0
***


Screamadelica.


View Profile WWW
« Reply #15 on: July 31, 2008, 01:32:31 PM »

My game will be a 2d platform game, but with vector-graphics. No sprites at all. This should resemble something similar to Another World by Delphine.
Cool ftw man.

Thanks..? Gentleman
Logged

Never go to bed mad, stay up and fight. - Phyllis Diller
Wilson Saunders
Level 5
*****


Nobody suspects the hamster


View Profile WWW
« Reply #16 on: July 31, 2008, 04:57:45 PM »

I have only used Allegro and never looked at SDL. While Allegro Vecror graphics are ok it is not realy the library's strength. If SDL does a better job with them go for it. Allegro does wrap user input, sounds, and graphics into a nice bundle. However for all I know SDL does the same.

Finaly no matter how simple it looks don't undertake Another World by Delphine as your first project. Learn the basics remaking Pong before you get more ambitious. Propperly handeling platforms is a complex task for a beginer.
Logged

Play my games at http://monkeydev.com/
ravuya
Level 7
**


Yip yip yip yip yip


View Profile WWW
« Reply #17 on: August 01, 2008, 05:33:34 AM »

I use GL and SDL, but I would second the advice to start with a smaller game.
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic