Salut,
J'aimerrais faire un jeu avec un décor qui défile... Pour ça j'ai besoin de pouvoir positionner des sprites à des positions négatives!
Malheuresement lorsque j'entre une valeur négative l'image est positionnée à 0,0 !!! !
Donc comment faire !
je sais pas du tout si ce que je vais te proposer va marrcher mais ça vaut la peine d'essayer.
prenont par un exmple comme position:(-50,-20)
au lieu de déclarer ta position comme ça:
position.x=-50
crée une variable qui contien la valeur de l'abssice(idem pour les orrdonnés)et travaille uniquement sur cette variable.Au lieu de mettre
position.x--;
met
a--;
au moment ou on doit voir le sprite verrifit si a est positif, qu'il ne te l'affiche pas a 0,0.Ce qui équivaut a ce que le sprite soit dans l'écran.
puis donne ta variable comme valeur de sa position:
position.x=a
De cette manière le sprite devrait bouger ors de l'ecran et s'aficher quand il est dans l'ecran.
Pour faire ça, il faut passer un SDL_Rect en 2e paramètre SDL_BlitSurface(). Ce paramètre définit en fait quelle partie de la surface de base blitter sur la surface d'arrivée .
C'est très pratique car ça permet de blitter qu'une partie de l'image de base.
Donc pour ton décor qui défile, c'est ce que tu dois utiliser, en blittant une partie de la surface qui contient le décor sur tout l'écran. Et tu fait défiler le rectangle de base afin de changer la partie du décor a blitter sur tout l'écran.
× 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.