Consiglierei di guardare SFML e Polycode .
Penso che le risposte qui siano un po 'carenti. È fastidioso dover collegarsi a dieci diverse librerie, come Freetype, libpng, tinyxml, Ogg, Vorbis, ecc., Per ottenere alcune funzionalità XNA di base.
SFML
http://www.sfml-dev.org/features.php
SFML è un'API C ++ multimediale gratuita che ti offre un accesso di basso e alto livello a grafica, input, audio, ecc. In un certo senso, è simile a XNA ma non ti tiene tanto in mano. Ad esempio, SFML non ha una classe Model.
Se hai intenzione di utilizzare i modelli nei tuoi giochi, dovresti guardare usando Assimp .
Assimp aggiunge il supporto per l'importazione dei seguenti formati:
Collada ( .dae )
Blender 3D ( .blend )
3ds Max 3DS ( .3ds )
3ds Max ASE ( .ase )
Wavefront Object ( .obj )
Stanford Polygon Library ( .ply )
AutoCAD DXF ( .dxf )
LightWave ( .lwo )
Modo ( .lxo )
Stereolithography ( .stl )
AC3D ( .ac )
Milkshape 3D ( .ms3d )
Quake I Mesh ( .mdl )
Quake II Mesh ( .md2 )
Quake III Mesh ( .md3 )
Quake III BSP ( .pk3 )
Biovision BVH ( .bvh )
DirectX X ( .x )
BlitzBasic 3D ( .b3d )
Quick3D ( .q3d,.q3s )
Ogre XML ( .mesh.xml )
Irrlicht Mesh ( .irrmesh )
Neutral File Format ( .nff )
Sense8 WorldToolKit ( .nff )
Object File Format ( .off )
PovRAY Raw ( .raw )
Terragen Terrain ( .ter )
3D GameStudio ( .mdl )
3D GameStudio Terrain ( .hmp )
Izware Nendo ( .ndo )
Polycode
http://polycode.org/features/
Polycode è un framework multipiattaforma gratuito, open source per codice creativo. Puoi usarlo come API C ++ o come linguaggio di scripting autonomo per ottenere un accesso facile e semplice a grafica 2D e 3D accelerata, shader hardware, programmazione audio e di rete, motori fisici e altro ancora.
L'API Polycode di base è scritta in C ++ e può essere utilizzata per creare applicazioni native portatili.
Oltre all'API C ++ di base, Polycode offre un sistema di scripting basato su Lua con un proprio set di strumenti di compilazione. L'API Lua rispecchia l'API C ++ e può essere utilizzata per creare facilmente prototipi e persino pubblicare applicazioni complete su più piattaforme senza compilare C ++.
Polycode è open source, il che significa che puoi imparare da come vengono fatte le cose dietro le quinte. Inoltre, utilizza Assimp per caricare i modelli, quindi non è necessario preoccuparsi del collegamento manuale ad Assimp.