Je suis une novice en programmation de jeux vidéo, pour commencer, j’ai voulu d’abord connaître les bases d’une programmation de jeux vidéo à 2 dimensions, et pour entamer ceci, j’ai installé le Dev-C++ (je souligne que je travaille sous Windows xp), ensuite j’ai installé la bibliothèque SDL (la SDL était sous forme d’un fichier qui avait le nom suivant SDL-devel-1.2.9- mingw32.tar.gz) sous Dev-C++ en suivant ces étapes :
1. j’ai décompressé cette archive (SDL) dans le dossier de Dev-C++ (par défaut: C:\Dev-Cpp).
2. j’ai lancé Dev-C++, je suis allé dans "Outils", "Options du Compilateur", onglet "Répertoire".
3. pour Répertoire bibliothèques", j’ai ajouté le chemin des fichiers .lib de SDL (par défaut: C:\Dev-Cpp\SDL-1.2.9\lib).
4. pour "Répertoire C .h", j’ai ajouté le chemin des fichiers .h de SDL (par défaut: C:\Dev-Cpp\SDL-1.2.9\include).
5. pour "Répertoire C++ .h", j’ai ajouté la même chose qu'à l'étape précédente (par défaut: C:\Dev-Cpp\SDL-1.2.9\include).
6. j’ai validé le tout en cliquant sur OK : c'est installé.
Après, j’ai commencé la création d’un projet SDL, en suivant ces étapes :
1. j’ai créé normalement un projet vide ("Fichier", "Nouveau", "Projet", "Empty Project"), je lui donné un nom et sauvegardé dans son propre répertoire.
2. je suis allé dans les options du projet ("Projet", "Options du Projet").
3. dans l'onglet "Général", j’ai choisi "Win32 GUI".
4. dans l'onglet "Paramètres", zone "Editeur de liens", j’ai ajouté "-lmingw32 -lSDLmain -lSDL".
5. j’ai validé le tout en cliquant sur OK.
6. j’ai copié le runtime SDL (SDL.DLL, que l'on trouve dans le dossier bin de la SDL, par défaut: C:\Dev-Cpp\SDL-1.2.9\bin) dans le dossier de mon projet.
7. c’est prêt.
J’ai voulu ensuite exécuter un exemple d’un programme que le voici.
Le but de ce programme est d’ouvrir une fenêtre et de la fermer après, et mon problème réside dans le fait que je ne sais pas comment procéder pour écrire ce programme dans le Dev-C++, et comment le compiler et l’exécuter après. j’espère que l’énoncé de mon problème est aussi clair que possible, parce que je compte énormément sur votre aide pour le résoudre. .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 #include <SDL.h> #include <iostream> const int WIDTH=640; const int HEIGHT=480; int main(int argc, char **argv) { //Déclaration des variables SDL_Event event; SDL_Surface *screen; int done = 0; //Initialisation de SDL if(SDL_Init(SDL_INIT_VIDEO)!=0) { std::cerr << "Probleme pour initialiser SDL" << SDL_GetError() << std::endl; return 1; } //Mettre un titre à la fenêtre SDL_WM_SetCaption("Programme SDL de base", NULL); //Ouvrerture d'une surface pour l'affichage de la fenêtre screen = SDL_SetVideoMode(WIDTH,HEIGHT, 32, SDL_DOUBLEBUF | SDL_HWSURFACE); if(screen==NULL) done = 1; //Boucle generale while(!done) { //Traiter les évènements while(SDL_PollEvent(&event)) { switch(event.type) { //Si on veut quitter, done=1 suffira case SDL_QUIT: done=1; break; //Si on vient de relacher une touche de clavier case SDL_KEYUP: //Et si c'est la lettre q /* Attention, ceci ne fonctionne pas avec tous les Systèmes d'exploitation et tous les claviers Pour le rendre portable, il faudrait passer par les Unicodes, mais cela sort du cadre de ce tutoriel d'introduction. Si vous voulez utiliser la lettre 'q' pour quitter et ceci ne fonctionne pas, alors c'est la lettre 'a' qu'il faudra utiliser (c'est la place de la lettre 'q' sur le clavier QWERTY). Si vous voulez vraiment la lettre 'q', remplacer SDLK_q par SDLK_a, cela devrait faire l'affaire */ if(event.key.keysym.sym==SDLK_q) //On met done a 1 pour quitter done=1; break; //Sinon on ne fait rien default: break; } } } SDL_Quit(); return 0; }
Merci d’avance pour votre aide
Partager