SFML ve Polycode'a bakmanızı tavsiye ederim .
Bence buradaki cevaplar biraz eksik. Bazı temel XNA özelliklerini almak için Freetype, libpng, tinyxml, Ogg, Vorbis, vb. Gibi on farklı kütüphaneye bağlanmak can sıkıcı bir durum.
SFML
http://www.sfml-dev.org/features.php
SFML, grafik, giriş, ses vb.'ye düşük ve yüksek düzeyde erişim sağlayan ücretsiz bir multimedya C ++ API'sidir. Bir anlamda, XNA'ya benzer, ancak elinizi tutmaz. Örneğin, SFML'nin bir Model sınıfı yoktur.
Oyunlarınızda Modeller kullanmayı planlıyorsanız, Assimp kullanmaya bakmalısınız .
Assimp, aşağıdaki biçimleri içe aktarmak için destek ekler:
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, yaratıcı kod için ücretsiz, açık kaynaklı, platformlar arası bir çerçevedir. Hızlandırılmış 2D ve 3D grafiklere, donanım gölgelendiricilerine, ses ve ağ programlamasına, fizik motorlarına ve daha fazlasına kolay ve basit erişim elde etmek için bir C ++ API'si veya bağımsız bir komut dosyası dili olarak kullanabilirsiniz.
Çekirdek Polycode API C ++ ile yazılmıştır ve taşınabilir yerel uygulamalar oluşturmak için kullanılabilir.
Çekirdek C ++ API'sinin üstünde, Polycode kendi derleme araçları setiyle Lua tabanlı bir komut dosyası sistemi sunar. Lua API, C ++ API'sini yansıtır ve C ++ derlemeden kolayca prototipler oluşturmak ve hatta tüm uygulamaları birden fazla platforma yayınlamak için kullanılabilir.
Polycode açık kaynak kodludur, yani perde arkasında işlerin nasıl yapıldığını öğrenebilirsiniz. Ayrıca, modelleri yüklemek için Assimp'i kullanır, böylece Assimp'e manuel olarak bağlanma konusunda endişelenmenize gerek kalmaz.