choosing a library for c++
Members - Reputation: 375
Posted 24 October 2012 - 06:09 PM
Does anyone have suggestions on what I can use?
If you see a post from me, you can safely assume its C# and XNA
Members - Reputation: 261
Posted 24 October 2012 - 06:31 PM
And for input and sound I like SFML and you can use this for commercial or non commercial games whether they are open source or not.
Also here is a tutorial I have used and it is great for starting out in SFML. It shows you how you can set up SFML and any other library in Visual Studios C++. It also shows you how to make a pong game with SFML.
Edited by Manill66, 24 October 2012 - 06:34 PM.
Crossbones+ - Reputation: 1871
Posted 24 October 2012 - 08:42 PM
SDL: Functional programming, Great for input and has a large community
Allegro: Slowly moving to Object Oriented Programming (Like SFML). It's fallen out of popularity but is a great library.
For 3d you can either use:
DirectX: For windows platform only.
OpenGL: Android, Windows, and I believe Mac?
Ogre3d: A rendering engine. I don't like it. There's a lot of good stuff, however it's slow (From what I've heard). I wouldn't use it, however I recommend you try it out and see if you like it.
Overall, you should try out all the options available for a little bit and see what you like. No matter which one you choose, they all have the same end resolution. (If you're going to be dealing with OpenGL however, use SDL, it's far better than SFML or Allegro currently)
I'm a game programmer and computer science ninja !
or Personal-Message me on here !
Members - Reputation: 794
Posted 25 October 2012 - 04:47 AM
If you use the Direct3D, you can run your game only on Windows (and maybe Wine), so the best windowing library is the Windows API.
If you use OpenGL, you must choose a windowing library:
- Windows API (as demonstrated by NeHe) is not recommended to use. You lose your portability and it's messy.
- GLUT was a nice library, it has been discontinued by the author, but its fork FreeGLUT looked fine to me.
- I personally prefer GLFW, it is a lightweight library, so don't expect much, but it is clean and stable.
- SFML is another choice, but I found its documentation lacking and the library kind of new and missing important features. The sprite-manipulation API looks half-done to me at this point.
- Allegro and SDL are heavy-weight libraries, having 2D functionality, more helper functions and so on. I would recommend the latter as it has much larger community.
If you want to use graphics engines (Ogre3D, Irrlicht), you will have to cope with incomplete documentation, some bugs and inflexibility. But you will learn it (and make a game with it) much sooner than a 3D library. I used only Ogre3D and I have to say that it is a rapid and sufficient tool to make a game with. You can always modify it (MIT license). Some people say that Irrlicht is good, but I don't know.
In the end, the thing that matters is whether you want to make an engine or a game.
Members - Reputation: 175
Posted 25 October 2012 - 07:42 AM
http://www.osrebel.com <-- En Français
L'information libre et la joie d'apprendre
http://www.osrebel.com/english <-- English Version
Free information and the joy of learning