Giga-Nova :
Pour afficher un background défilant, moi j´ai fait une variable Avancement qui se décrémente du nombre de pixel dont le fond défile à chaque tour.(et qui revient à 640(1024) si elle passe sous 0)
Ensuite, je fais une surface qui contient mon fond ( moi c´est en 640x480), et je l´affiche comme ça :
( Carré représenté plus bas en " .")
Tu dessines en ( 0;0) la SDL_Rect suivant :
SDL_Rect.x = ( 640-Avancement); / / 1024
SDL_Rect.y = 0;
SDL_Rect.w = Avancement;
SDL_Rect.h = 480; / / ( 768)
( Carré représenté plus bas en " o")
Et tu dessines en ( Avancement;0) celui-ci :
SDL_Rect.x = 0;
SDL_Rect.y = 0;
SDL_Rect.w = ( 640 - Avancement); / / 1024
SDL_Rect.h = 480; / / ( 768)
Voilà, si t´y réfléchis un peu, tu verras qu´en fait ça dessine deux carrés :
________________________________________
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
|..........|oooooooooooooooooooooooooooo|
Evidemment quand Avancement vaut 0, le tableau est rempli par du " o", vu que la largeur du rectangle de " ." est égale à l´avancement.