Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher une image plusieurs fois...

...grâce à une boucle .

    10 juin 2006 à 11:09:19

    Bonjour :)

    J'éspère que la question n'a pas deja été posée o_O
    En fait, voila mon probleme !


    Je veux blitter une image deux fois ( une barriere en bois autour d'une cabane ).
    Mais je veux pas m'amuser a redéclarer l'image de la barriere une deuxieme fois pour la placer.

    J'ai alors pensé à faire une boucle pour afficher l'image.


     while ( i != 2 )
            { 

              SDL_BlitSurface(barriereDroite, NULL, ecran, &positionBarriereDroite);
              positionBarriereDroite.x += 5 ;
              i++;

                }




    Les déclarations :
    i = 0 ;

    positionBarriereDroite.x = 100;
    positionBarriereDroite.y = 100;


    Mais sur l'écran, mon image ne s'affiche meme pas une fois >_<
    Alors que si je la blitte normalement, ca marche tres bien !

    (j'ai activé le double buffer )

    Voila :( Merci d'avance :)
    ++
    • Partager sur Facebook
    • Partager sur Twitter
      10 juin 2006 à 11:24:21

      Il faut que tu fasse un tableau de positions:
      SDL_Rect positionBarriereDroite[2]={0}


      Et apres tu fait ta boucle:
      while ( i != 2 ) {
        SDL_BlitSurface(barriereDroite, NULL, ecran, &positionBarriereDroite[i]);
        positionBarriereDroite[i].x += 5 ;
        i++;
      }

      • Partager sur Facebook
      • Partager sur Twitter
        10 juin 2006 à 11:26:59

        Reussi sans faire de boucle, juste grace au tableau !
        Merci 1000 fois :)
        • Partager sur Facebook
        • Partager sur Twitter
          10 juin 2006 à 12:32:03

          Citation : Patou

          Je veux blitter une image deux fois ( une barriere en bois autour d'une cabane ).
          Mais je veux pas m'amuser a redéclarer l'image de la barriere une deuxieme fois pour la placer.


          Quoi ? Tu charges deux fois l'image pour l'afficher deux fois ???
          • Partager sur Facebook
          • Partager sur Twitter
            10 juin 2006 à 12:43:56

            Ba ouai o_O


                    SDL_BlitSurface(barriereDroite, NULL, ecran, &positionBarriereDroite[0]);
                    SDL_BlitSurface(barriereDroite, NULL, ecran, &positionBarriereDroite[1]);

            • Partager sur Facebook
            • Partager sur Twitter
              10 juin 2006 à 12:45:43

              Non tu ne charge l'image qu'une fois mais tu l'affiche deux fois
              • Partager sur Facebook
              • Partager sur Twitter
                10 juin 2006 à 12:50:14

                Ouai mais au fond je la charge deux fois nan?
                • Partager sur Facebook
                • Partager sur Twitter
                  10 juin 2006 à 12:52:42

                  Non, tu charge l'image quand tu fait:
                  image = SDL_LoadBMP("image.bmp");

                  Et ça en général tu ne le fait qu'une fois
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 juin 2006 à 12:58:15

                    Ha c'est ca "charger l'image" !
                    Ok ;)
                    Dans ce cas, je charge bien qu'une fois !
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Afficher une image plusieurs fois...

                    × 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