Initilisation de la SDL.

Vous en avez marre de la console, vous voulez changer pour la SDL avec ses fênetres mais vous ne savez pas par où commencez, bah c'est simple commencez par initialiser la SDL.
Connaissances requises: crée un projet SDL(si vous ne savez pas un tutos sur le site est a votre dispositions ici) et les base du C.
Ce que vous saurez faire: ouvrir une fênetre et lui donner un titre


Les includes

Pour un projet en console vous deviez mettre au debut de vos fichiers les includes suivants:

#include <stdlib.h>
#include <stdio.h>

Ne les jetez pas a la poubelle tout de suite car vous en aurez encore besoin et oui ces includes sont en fait des includes de librairies standard en C. Donc vous en aurez encore besoin si vous voulez coder en C, ce qu'on va faire donc vous n'avez pas le choix il faut encore les recopier au debut de tous vos fichiers.c!
Oui mais il va falloir rajouter encore une ligne d'include pour que la SDL fonctionne! Bah oui sans librairie SDL, la SDL ne fonctionne pas! C'est logique non? Cette ligne c'est:

#include <SDL/SDL.h>

Et voilà maintenant la SDL peut fonctionner sans faire de caprices! En resumer, voila les lignes d'includes qu'il faut écrire:

#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>

Ensuite comme dans tous les projet il faut un "main()"! Et bien il reste le même que pour la console. Cela nous fait un code de base ressemblant a celui-ci:
#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>


int main(int argc, char *argv[])
{

return 0;
}
Maintenant voyons comment initialiser propement dit la SDL!


Initialiser la SDL.

Pour initialiser la SDL il faut faire appelle a la fonction SDL_Init().
Elle prend comme paramètres le mode que vous voulez chargé. Par exemple si vous voulez charger le mode video, il faudra lui envoyer comme paramétre: SDL_INIT_VIDEO. Ca donnera ceci:

#include <stdlid.h>
#include <stdio.h>
#include <SDL/SDL.h>


int main(int argc, char *argv[])
{
SDL_Init(SDL_INIT_VIDEO);
return 0;
}
Vous vous dites sans doute qu'est ce que c'est cette histoire de mode! En faite, la SDL est divisé en plusieurs parties, ce sont les modes! Chaque partie gére quelquechose de précis. Par exemple: le son, l'affichage... Je vous ai concoquetez un petit tableau recapitulatif des differents mode que vous pourrez chargez:

Nom Description
SDL_INIT_VIDEO C'est le mode le plus commun, il sert a charge la mode d'affichage! Vous le chargerez la plupart du temps a chaque fois.
SDL_INIT_AUDIO Ce mode, vous le devinez permet de jouer un son.
SDL_INIT_CDROM Cette partie de la SDL gére le lecteur cd!
SDL_INIT_TIMER Comme son nom l'indique, elle gére le systéme de temps!
SDL_INIT_JOYSTIK Gére le joystik
SDL_INIT_EVERYTHING Cette partie est un peu spéciale car elle sert a chargez tous les modes en même temps! Trés pratique si vous avez besoin de tout les modes!

Maintenant, si vous avez besoin de tous les modes, vous pouvez utilisez SDL_INIT_EVERYTHING. Personnelement je ne l'ai encore jamais utilisé.
Mais si vous voulez chargez seulement le mode video et audio,il vous suffit de les écrire les uns apres les autres en les séparant par une barre horizontal. Exemple:

#include <stdlid.h>
#include <stdio.h>
#include <SDL/SDL.h>


int main(int argc, char *argv[])
{
SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO);
return 0;
}

Pour faire la barre horizontal, il faut taper 'Alt Gr + -'. Voila maintenant que vous savez chargez les differents modes de la SDL, il ne vous reste plus qu'a connaitre comment quitter. Et bien c'est trés simple, il suffit de faire: SDL_Quit();. Voila donc pour un projet en SDL, voila comment cela va se présenter:

#include <stdlid.h>
#include <stdio.h>
#include <SDL/SDL.h>


int main(int argc, char *argv[])
{
SDL_Init(SDL_INIT_VIDEO);

/*Ici le corps de votre programme*/

SDL_Quit();
return 0;
}

Ce cours sur l'initialisation de la SDL est maintenant terminés, j'espére qu'il vous as plu. Je vais dés à présent m'ateler à un nouveau cours.
Merci de votre lecture.

© 2007, Le clone intersiderale. Tous droits reservé.