Biblioteka SDL

Biblioteka SDL [ang. Simple Directmedia Layer] to biblioteka multimedialna, umożliwiająca programowanie grafiki 2D i dźwięku, obsługę klawiatury, myszy, joysticków, napędu CD-ROM, odtwarzanie muzyki CD-Audio i odmierzanie czasu. Wraz z kilkoma bibliotekami dodatkowymi umożliwia także pisanie czcionkami TrueType, obsługę wielu formatów plików graficznych i dźwiękowych, miksowanie dźwięku wielokanałowego z efektami specjalnymi i wiele więcej. Jedyne czego w niej nie ma, to obsługi grafiki 3D, jednak biblioteka posiada bardzo dobre wsparcie dla OpenGL i dobrze przygotowuje dla niego grunt, co bardzo ułatwia sprawę zwłaszcza początkującym koderom ;-)

Największym atutem tej biblioteki jest jednak jej wieloplatformowość. Oznacza to, że kod napisany z jej użyciem, daje się skompilować dla różnych systemów operacyjnych i platform sprzętowych, nawet bez żadnych zmian w kodzie! Biblioteka ma swoje wersje na systemy takie jak Windows, Linux, MacOS, MacOS X, BSD, BeOS i kilka innych [po szczegóły odsyłam na stronę projektu: www.libsdl.org].

Mimo tak wielkich możliwości, biblioteka ta jest bardzo łatwa w użyciu, ponieważ wymaga od programisty jedynie podstawowej znajomości języka C lub C++ na poziomie funkcji i struktur. W przeciwieństwie do biblioteki DirectX Microsoftu, SDL nie wymaga zaawansowanej wiedzy o programowaniu obiektowym, ani znajomości technologii COM Microsoftu. Jest też bardzo często używana z tego względu, że uwalnia programistę gier od konieczności uczenia się niskopoziomowych API systemowych. Docenią to na pewno zwłaszcza programiści Windows, bo jego API wymaga conajmniej dwóch ekranów tekstu żeby wogóle odpalić okienko :-P a co dopiero coś w nim narysować ;-P

SDL korzysta z przyspieszania sprzętowego wszędzie tam, gdzie to możliwe. Na Windowsach używa w tym celu elementów DirectX, a na systemach Linux korzysta z modułów DRI serwera X. Również do innych zadań biblioteka wykorzystuje natywne API danego systemu, by nie zwiększać niepotrzebnie wymagań systemowych.

No i jest to biblioteka rozprowadzana na licencji GNU LGPL :-) Oznacza to, że możesz bez obaw używać jej także w projektach komercyjnych, łącząc twoje programy z biblioteką dynamiczną. Jeśli coś zarobisz na sprzedawaniu twojej gry korzystającej z SDL, nie musisz nikomu odpalać działki z tego tytułu ;-J [oczywiście jeśli chcesz "podziękować" autorom tej biblioteki za ich świetną robotę, możesz dobrowolnie przelać im jakąś sumkę ;-D].

Poniżej znajdziesz kurs SDL mojego autorstwa:

  1. Instalacja bibliotek
  2. Tworzenie projektu
  3. Init i obsługa błędów
  4. Podsystem graficzny

Subskrybcja

Buttony
Button1 Button2 Button3 Button4 Button5 Button6 Button7 Dodaj swój button