Partage
  • Partager sur Facebook
  • Partager sur Twitter

Structurer son programme

Ex : déclaration de textures

    24 juillet 2006 à 16:57:06

    Bonjour, voici un exemple de programme en SDL/OpenGL :

    #include <SDL/SDL.h>
    #include <GL/GL.h>
    #include <GL/GLU.h>
    #include "sdlglutils.h"

    struct {
            GLuint bois;
            GLuint mur;
           }texture;

    void dessiner();

    int main(int argc, char *argv[])
    {
        SDL_Event event;
       
        //Initialisation de la fenetre
        SDL_Init(SDL_INIT_VIDEO);
        SDL_WM_SetCaption("Maison", NULL);
        SDL_SetVideoMode(640, 480, 32, SDL_OPENGL);
       
        //Initialisation de la matrice
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        gluPerspective(70, (double)4/3, 1, 1000);
        glEnable(GL_TEXTURE_2D);
       
        texture.bois = loadTexture("images/bois.png");
        texture.mur = loadTexture("images/mur.png");
       
        for(;;)
        {
            while(SDL_PollEvent(&event))
            {
                switch(event.type)
                {
                    case SDL_QUIT:
                         exit(0);
                         break;
                }
            }
           
            dessiner();
        }
       
        SDL_Quit();
        return 0;
    }

    void dessiner()
    {
         //Dessin
    }
           
       


    Bon c'est tout simple, ce morceau de programme permet de dessiner quelquechose sur l'écran. Il n'y a aucune erreur.

    Là où je veux en venir, c'est faire en sorte de ne pas avoir à se trimballer toutes les textures en même temps (imaginez que l'on ait des dizaines et des dizaines de textures à faire passer dans la fonction dessiner() :p )
    J'ai donc mis toutes ces textures dans un struct, ce qui permet d'avoir toutes les textures sous le coude en même temps.
    Cependant, je l'ai déclaré en variable globale :-°
    Et je ne sais pas comment faire pour éviter cela, sachant que je doit doit pouvoir disposer des textures dans la fonction dessiner().

    Quelqu'un aurait-il une petite astuce? :)

    Merci pour vos réponses.
    • Partager sur Facebook
    • Partager sur Twitter

    Structurer son programme

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown