Which is the best available, free, easy-to-learn game programming library for C++?
Ogre is the best Graphic Engine available for free. Ogre doesn't cover all field a game engine should do. Ogre doesn't handle physics, networking, AI, audio...
If you want to collect a good set of free libraries I suggest you to use
- OGRE for graphics
- Bullets (or ODE) for physics
- Raknet for Networking and MatchMaking
- "something else" for audio and AI
If you need something powerfull (but expensive) I suggest you C4 Engine (350$) or Torque (150$).
SDL is also quite popular and there is a ton of information about it floating around the web, a lot of it geared specifically towards making games. This tutorial looks particularly good.
Like previously said Ogre3d and Irrlicht are probably your best options in regards to "free". If you also want "easy to learn" it boils down to Irrlicht.
Very clean interface and great tutorials.
Edit: Actually you should be a little bit more specific. Do you want 2d or 3d graphics? Do you need sound, physics and all that or just graphics? Which platforms do you want to target?
Also, are you sure it has to be C++? While C++ is pretty much mandatory for professional game engines, for learning purposes C# with XNA or some scripting language is way better.
If you want C++ and your just starting out I'd go with Irrlicht (its free, and its code although not blazing fast like Ogre, its very well structured and a good example of what a C++ should look like). But if you're ready for some hardcore work Ogre would be better (although its source can be much more enigmatic and hard for a new comer).
Same source code compiles directly to:
-Desktop Windows (with or without hardware acceleration)
-Windows CE devices (HandheldPC, PocketPC, Smartphone)
-Symbian OS (virtually any device with Symbian OS version 6.0 or newer)
@OJ Irrlicht is a full game engine, it does more than rendering. Such as sound ,network, collision, animation, etc...
It even has an editor for creating game areas.
Check this out from 2D Boy, the makers of World of Goo: Rapid Prototyping Framework
It's only for prototyping, but you can still learn from it.
My favourites are Irrlicht and Ogre. Both are very powerful, but (if you are familiar with C++) are fairly easy to get started with thanks to the documentation and examples. You can find a step by step tutorial that shows you how to get started with Irrlicht here, and with Ogre here.