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

Auteur Sujet: sf::VertexArray et artefacts  (Lu 1105 fois)

0 Membres et 1 Invité sur ce sujet

Reyhn

  • Newbie
  • *
  • Messages: 13
    • Voir le profil
sf::VertexArray et artefacts
« le: Juillet 20, 2014, 09:08:44 pm »
Salut,

J'utilise dans une application SFML des VertexArray pour construire des objets qui sont affichés et  bougent à l'écran. Ces objets sont un simple quadrillage de tiles. Je place mes tiles et assigne les valeurs voulues aux vertices, ça fonctionne et ça s'affiche bien.
Mes tiles sont des petits carrés de couleur placés en ligne dans une texture.

Le seul petit soucis (excepté que j'arrive pas à passer de sf::Quads à sf::TrianglesStrip comme mentionné dans le livre SFML :-[) c'est que mes objets pouvant bouger avec des coordonnées flottantes (je suppose que ça vient de là), j'ai parfois des artefacts qui apparaissent.

Ces artefacts sont en fait des lignes verticales de 1 pixel de large, qui proviennent de la tile suivante. Le résultat est équivalent à des quads qui prendraient d'un coup et sans raison +1 pixel de largeur, et empièteraient sur la tile suivante. J'ai joint un exemple qui s'affiche correctement, et un exemple avec les artefacts. C'est pas facile à screenshot car en général ce n'est présent qu'une fraction de seconde (à cause du mouvement).
Précisions pour les images : la tile "transparent" est suivie de la bleue qu'on peut voir sur l'objet, la bleue est suivie de la rouge et la rouge est suivie d'une verte.

J'ai testé sur deux machines avec une carte AMD, et le problème est présent. Ensuite j'ai essayé sur une machine avec un chipset graphique Intel, et je ne l'ai pas observé. Ce qui ne veut pas dire qu'il n'est pas présent, faudrait que je vérifie bien en profondeur mais il ne me semble pas.

Voilà, j'aimerais savoir si ça ressemble à quelque chose de connu, si je peux y faire quelque chose, si ça semble plus venir des drivers, tout ce qui est bon à prendre.

Pas de SSCCE pour l'instant désolé, mais c'est pas tant une question de code pure.
« Modifié: Juillet 20, 2014, 09:11:35 pm par Reyhn »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : sf::VertexArray et artefacts
« Réponse #1 le: Juillet 20, 2014, 11:07:13 pm »
C'est connu (même normal), et le plus simple est de s'assurer que les coordonnées de tes primitives soient toujours entières.
Laurent Gomila - SFML developer

Reyhn

  • Newbie
  • *
  • Messages: 13
    • Voir le profil
Re : sf::VertexArray et artefacts
« Réponse #2 le: Juillet 21, 2014, 12:01:10 am »
Arf, OK et merci Laurent pour cette réponse rapide.