Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

What game engine/graphics engine should I use for my first indie game? I'd like to add that this is not my first game, I've previously used Allegro for 2d development (pong, chess and stuff).

I am open to suggestions for other engines. I was thinking about a game like "The legend of Zelda" for the NES (just to give you an idea what I was planning).

I've heard of SDL, I've used Allegro, my friends use OpenGL, what is the best for starting? (SDL seemed a bit hard, judging from their Wiki, a lot of stuff I haven't used before).

BTW, the language is C++.

share|improve this question

closed as not constructive by Byte56, Trevor Powell, Anko, bummzack, Josh Petrie Apr 15 '13 at 17:55

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

4  
Two notes about using OpenGL: 1, if you think SDL is hard then forget about using OpenGL. 2, OpenGL is not an engine, it is a graphics API that is often used in game engines. –  jhocking Aug 16 '11 at 13:30
    
You need to define "best". What qualities are you looking for? blog.stackoverflow.com/2011/08/gorilla-vs-shark –  Tetrad Aug 16 '11 at 16:01
1  
What platform are you wanting to develop for ( iOS, Android, PC, Web )? –  Joey Green Aug 17 '11 at 1:40

1 Answer 1

First of all, what you're looking for isn't really an engine. You're looking for a graphics API or a graphics API Wrapper to do your drawing.

I can recommend SFML. It's a C++ library that manages most of the basic things that everyone needs for you.

It features a relatively powerful graphics part which wraps around OpenGL, but also includes basic support for window-management, input (keyboard, mouse, joystick/gamepad), audio (playing sounds and music) and networking.

Since it's C++ and entirely object-oriented, it will be very simple to understand. For example, loading an image and displaying it more or less looks as simple as this (in SFML2.0):

sf::Texture texture.
texture.LoadFromFile("blabla/test/supermario.png");

sf::Sprite sprite;
sprite.SetTexture(texture);

//somewhere else
window.Draw(sprite /*, myAwesomeShader Optional shader argument */);

Apart from the superior code-design, it's also a lot faster than the current version of SDL and has more features (if you use the basic SDL libs).

I can really recommend it if you're using C++.

Also, if you're going to pick SFML, start with SFML2 instead of 1.6. It isn't officially released yet, but it is going to be very soon and not a lot will change in the API until then. The latest SVN snapshots of SFML are always available on the download page.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.