pkoi pas tout coder direct avec glut ?
pour passer à la vitese supérieure, pour avoir une meilleure gestion de l'environnement opengl, pour pouvoir intégrer plusieurs librairies graphiques en même temps.
pour ce qui est de la source, c'est vraiment le tout début, ya pas grand chose:
int main (int argc, char **argv)
{
FILE *fichier_log=fopen("sdl.log", "w");
if (SDL_Init (SDL_INIT_VIDEO) < 0)
{
fprintf (fichier_log, "%s\n",SDL_GetError ());
return 1;
}
atexit (SDL_Quit); // Pour quitter proprement
screen = SDL_SetVideoMode (640, 480, 16, SDL_HWSURFACE | SDL_DOUBLEBUF);
if (screen == NULL)
{
fprintf (fichier_log, "%s\n", SDL_GetError ());
return 2;
}
SDL_EnableUNICODE(1);
fprintf(fichier_log, "Initialisation de SDL terminée\n");
SDL_Event event; // Fermer la fenêtre proprement
int end=0;
while (!end)
{
if (SDL_PollEvent (&event) && event.type==SDL_QUIT) // on ferme !!
end=1;
switch(event.type)
{
case SDL_KEYDOWN: // touche appuyée
switch(event.key.keysym.sym)
{// machin
}
break;
default:
break;
}
affichage();
}
fclose(fichier_log);
return 0;
}
avec la fonction d'affichage :
void affichage()
{
SDL_FillRect(screen, NULL, 0);
glBegin(GL_POLYGON);
glColor3f(1.0,0.0,0.0);
glVertex2f(0,0);
glColor3f(0.0,1.0,0.0);
glVertex2f(.5,0);
glColor3f(0.0,0.0,1.0);
glVertex2f(.5,.5);
glColor3f(1.0,1.0,1.0);
glVertex2f(0,.5);
glEnd();
SDL_Flip(screen);
}
mes includes sont
#include <SDL/SDL.h>
#include <stdio.h>
#include <GL/glut.h>
la compilation se passe sans encombre (donc le linkage est ok)