Montag, 1 Feb, 2010
Lektion 1
In dieser Lektion sagen wir der Welt mit einen kleinen Bild hallo.
Als erstes fügen wir die nötigen SDL-Header ein
#include "SDL/SDL.h"
Nun deklarieren wir als erstes in unserer Main-Funktion, die benötigten Oberflächen, in SDL Surface genannt. Wir breuchen zu einen ein Fenster und ein Bild was wir im Fenster anzeigen
int main( int argc, char* args[] )
{
// Das Hallo Bild
SDL_Surface* hallo = NULL;
// Das Fenster in dem das Bild angezeigt werden soll
SDL_Surface* fenster = NULL;
Mit SDL_Init() initalisieren wir SDL, mit SDL_INIT_EVERYTHING geben wir an das wir jedes Subsystem, wie Audio, Vidio usw. starten und verwenden möchten.
//Initialisieren von SDL SDL_Init( SDL_INIT_EVERYTHING );
Im nächsten Schritt setzen wir die Attribute für unser Fenster mit SDL_SetVideoMode. Das erste Attribut gibt die Breite des Fensters an, das zweite Attribut die Höhe, das dritte die Farbtiefe und das vierte setzt das Fenster im Speicher.
//Fenster Konfigurieren fenster = SDL_SetVideoMode( 640, 480, 32, SDL_SWSURFACE );
Jetzt laden wir unser Bild:
//Bild laden hallo = SDL_LoadBMP( "hallo.bmp" );
Mit SDL_BlitSurface schieben wir unser Bild auf das Fenster. Das erste Argument enthält das Bilder und das dritte Argument ist das Zielfenster:
//Bild auf dem Fenster anzeigen SDL_BlitSurface( hallo, NULL, fenster, NULL );
Damit auch wirklich was angezeigt wird, müssen wir das Fenster aktualisieren, wenn wir das nicht tun, sehen wir nur ein schwarzes Bild.
//Anzeige aktualisieren SDL_Flip( fenster );
Nun wird unser Bild schon angeigt, jedoch nur ganz kurz, damit wir was sehen pausieren wir unser Programm für 3 Sekunden (angegeben die tausendstel Sekunden).
//Pause SDL_Delay( 3000 );
Damit wir unser Bild nicht nach dem Programm ende im Speicher lassen, geben wir den Speicher wieder frei:
//Bildspeicher freigeben SDL_FreeSurface( hallo );
SDL_Quit beendet SDL und gibt auch den Speicher für unser Fenster frei:
//SDL beenden SDL_Quit(); return 0; }
So das war es dann auch schon, fertig ist unser erstes SDL-Programm.
Kommentar hinzufügen
Die Felder Name und Kommentar sind Pflichtfelder.