Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Reyhn

Pages: [1]
1
Graphique / Re : sf::VertexArray et artefacts
« le: Juillet 21, 2014, 12:01:10 am »
Arf, OK et merci Laurent pour cette réponse rapide.

2
Graphique / 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.

Pages: [1]