skroue
Messages postés2Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention27 mai 2009
-
27 mai 2009 à 19:15
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 2013
-
28 mai 2009 à 15:29
Hello,
J'ai un souci que je n'arrive pas à comprendre. J'essaie d'afficher un simple triangle sur un device. Je crée donc un tableau de CustomVertex.TransformedColored comme suit:
CustomVertex.TransformedColored[] _vertices = new CustomVertex.TransformedColored[3];
_vertices[0] = new CustomVertex.TransformedColored(100.0f, 100.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
_vertices[1] = new CustomVertex.TransformedColored(200.0f, 200.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
_vertices[2] = new CustomVertex.TransformedColored(100.0f, 200.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
Mon triangle s'affiche bien mais si j'inverse dans mon tableau l'index 1 avec le 2 mon triangle ne s'affiche plus:
CustomVertex.TransformedColored[] _vertices = new CustomVertex.TransformedColored[3];
_vertices[0] = new CustomVertex.TransformedColored(100.0f, 100.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
_vertices[1] = new CustomVertex.TransformedColored(100.0f, 200.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
_vertices[2] = new CustomVertex.TransformedColored(200.0f, 200.0f, 0.5f, 1.0f, Color.Blue.ToArgb());
Quelqu'un sait il pourquoi, cela dépasse ma compréhension :)
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 27 mai 2009 à 20:56
Bonsoir,
Toutes les bibliothèques graphiques utilisent certaines conventions.
En l'occurence, il s'agit de donner les vertex dans le sens inverse des aiguilles de la montre, ce qui n'est pas le cas de l'exemple 2...
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 28 mai 2009 à 11:58
Salut
Bon, tout d'abord, j'y connais à peu près rien en bibliothèque graphique.
Cependant, une question trotte dans ma tête quand je lis ta réponse Bidou : Qu'appelles-tu le sens inverse des aiguilles d'une montre dans un espace en 3D ? En regardant le l'autre côté, ça inverse le sens logiquement...
Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 28 mai 2009 à 15:29
En fait, caméra n'est pas le bon terme...
La façon dont tu visualises les données n'a pas d'importances, il faut juste que ce soit cohérent (tout dans le même sens).
En principe, on utilise le sens inverse des aiguilles de la montre par rapport à un point de référence. Le fait de bouger la caméra ne change pas ce point.
Je ne sais pas exactement comment ça fonctionne avec DirectX, à l'époque j'avais travaillé avec OpenGL et Java3D, mais en principe toutes les librairies graphiques sont construits avec certaines conventions identiques...