Şu anda Blizzard firmasında oyun geliştirme uzmanı olarak çalışan Sam Lantinga önderliğinde geliştirilen Simple DirectMedia Layer (SDL) güçlü, ticari rakipleri ile rekabet edebilecek olgunluğa erişmiş ve platform bağımsız (Linux, Windows, BeOS, MacOS Classic, MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, ve IRIX) bir oyun geliştirme kitaplığı. Bu kitaplık ile 40´ın üzerinde oyun projesi yazıldı ve diğer platformlardan Linux'a aktarıldı (Buna ödül kazanmış olan Civilization: Call To Power Linux portu dahil). SDL´nin çalışması için grafik ekrana sahip bir PC ya da PDA yeterli (bir de üzerinde bir işletim sistemi olsa fena olmaz ;-)
SDL ile ilgili resmi belgeleri okumaya buradan başlayabilirsiniz. Bu da yetmezse kullanıcılar tarafından detaylı olarak yorumlanmış dokümantasyon kütüphesine de buradan erişebilirsiniz. SDL, bünyesinde SDL_image, SDL_net, SDL_mixer ve SDL_ttf çok işe yarar kütüphaneleri de barındırmaktadır. Kütüphanenin doğal programlama dili C/C++ olmakla birlikte Ada, Eiffel, Java, Lua, ML, Perl, PHP, Pike, Python ve Ruby gibi dillerle de kullanılabilir.
Açık kodlu ve serbest SDL ile kapalı kodlu DirectX teknolojilerini kıyaslayan güzel bir makaleyi de burada okuyabilirsiniz.
Bu arada hazır yukarıda Perl lafı geçmişken herhalde şu kitap da ilginizi çeker : Games, Diversions & Perl Culture.
Bol `hacking´ dolu günler dilerim...
GNU/Linux altında oyun programlamak istiyorsunuz öyle değil mi? Ama "nereden başlasam, nasıl anlatsam, hangi kitaplık, vs." şeklinde kara kara düşünüyorsunuz. Düşünmeyin, okuyun ve deneyin!
SDL bu arada bana pek de DX'in ciddi bir rakibi gibi gozukmuyor. En azindan ticari ve ciddi projelerde boy olcusebilecek kapasitede degil henuz, ama iyi ki var tabi. Ancak gunumuzde, linux'cular kizsa da SDL de, Linux'da oyun sektoru de "naif" seviyede. Nedenleri ayrica tartisilir tabi.
Bir de ikisini karsilastirmak cok guc (karsilastiran yazida da bana karsilastirmadan cok SDL'den bahsediyor gibi geldi). Platform ustu olmasi gereken en onemli kisim bence grafik kismi oyunlarda. Ve zaten bu da SDL tarafindan degil OpenGL tarafindan saglaniyor SDL icinde de. Muzik-ses, pencere acma, ag baglantisi, girdi vs gibi isleri daha hafif yontemlerle de yapmak zaten mumkun. (wrapper classlarla) Asil kirilamayan oyun endustrisindeki DX Graphics (eski D3D) hegamonyasi, oyunlarin yuzde 99'u artik DX ile yaziliyor artik. Carmack haric, ciddi bir GL kullanicisi yok.
Sahsen DX kullanmiyorum ve GL'ciyim ama gercekleri de gormek lazim, GL'de bir versiyon atlamak icin yillarca bekliyorsunuz, shader teknolojisi aldi basini gidiyor, GL 2.0'da gelecek olan glSlang (shader dili) en erken bir yila cikacak. DirectX9 ile bu geldi bile (HLSL). Neyse, sizleri daha fazla kizdirmadan susayim ben.