Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Bug d'affichage des Sprite  (Lu 1607 fois)

0 Membres et 1 Invité sur ce sujet

Magnat

  • Newbie
  • *
  • Messages: 4
    • Voir le profil
Bug d'affichage des Sprite
« le: Janvier 15, 2019, 12:25:07 am »
Bonjour, je suis actuellement sur un petit projet mais j'ai léger bug.
J'ai un personnage qui est le centre de ma vue, le centre est toujours actualisé sur mon personnage.
Mon monde est enfaîte un grand tableau de sprite de taille 16*16 qui sont draw a chaque affichage.
Mon problème est le suivant :

Quand je move mon personnage de valeur entière il n'y a aucun problème, par-contre si je le bouge de valeur float il arrive que des fois il y ai de micro blanc entre 2 sprite 16*16. C'est très bref mais cela arrive souvent. C'est assez problématique si je veux faire bouger mon personnage en fonction d'une clock..

Si vous avez une idée pour résoudre ce problème je suis preneur ! Merci d'avance !

(Sur beaucoup de sujet similaire il est dit qu'il faut désactiver le smooth des textures mais je ne les utilise pas et j'ai quand même essayé de setSmooth(false) et même problème !)

Edit : C'est bon j'ai trouvé une solution ! Enfaîte a partir du moment ou l'on bouge le sprite avec une valeur dépassant les 5 chiffres après la virgule le bug commençai a se produire du coup il suffit de limiter le float a un certain nombre après la virgule !

exemple :

test = move_clock.restart().asSeconds();
         x = x * ((int)(test*10000))/10000.f;
         y = y * ((int)(test*10000))/10000.f;

move_clock est une clock, x et y sont des float qui valent la vitesse (exemple 100.0)
« Modifié: Janvier 15, 2019, 01:55:52 am par Magnat »

 

anything