Simple DirectMedia Layer
Z Wikipedie, otevřené encyklopedie
Simple DirectMedia Layer (SDL) je multiplatformní multimediální knihovna poskytující nízkoúrovňový přístup na audio, klávesnici, joystick, 2D počítačovou grafiku a 3D hardware přes OpenGL. Napsaná je v jazyku C, nicméně existuje řada wrapperů například pro jazyky Java, Delphi, Python, Perl a další. Její verze pro Microsoft Windows využívá knihovnu DirectX verze 6. Samotná knihovna obsahuje jen základní věci, na vše ostatní jsou potřebné doplňující knihovny (SDL_image, SDL_ttf, SDL_net, SDL_Sound, SDL_Mixer, smpeg a další).
Příklady v C - inicializace videa
Základ je vložit SDL.h, tato knihovna obssahuje hlavní funkce SDL. Protože budeme inicialitovat video => budem používat backbuffer, k tomuto účelu slouží v SDL ukazetel Screen na SDL_Surface. V samotné funkci nejdříve zkontrolujem, jesli lze video incializovat, pokud ne vypíšeme chybu do stderr což je už SDL automaticky vytvořený stream pro zápis chyb. Do ukazetele Screen vložíme všechna nastavení našeho okna, tedy šířku, výšku, barevnou hloubku a příznaky (lze kombinovat |), pokud se inicializace nezdařila vypíšeme chybu.
#include <SDL.h>
typedef enum{false, true}BOOL;
SDL_Surface * Screen;
BOOL InitVideo(Uint16 ScreenWidth, Uint16 ScreenHeight, Uint32 Flags, Uint16 ColorDepth)
{
if(SDL_Init(SDL_INIT_VIDEO) != 0)
{
fprintf(stderr, "Nepodařilo se incializovat SDL: %s\n", SDL_GetError());
return false;
}
Screen = SDL_SetVideoMode(ScreenWidth, ScreenHeight, ColorDetph, Flags);
if(!Screen)
{
fprintf(stderr, "Nepodařilo se nastavit video mod: %s\n", SDL_GetError());
return false;
}
}
[editovat] Externí odkazy
- www.libsdl.org – Domovská stránka SDL (anglicky)

