Coté visible d'une face d'un cube

Résolu
nicotwo Messages postés 34 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 5 février 2010 - 21 août 2009 à 11:28
nicotwo Messages postés 34 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 5 février 2010 - 23 août 2009 à 23:41
Bonjour,

Je suis actuellement en train d'apprendre à faire de la 3D avec directX 10 à l'aide des tutoriels du SDK. Étant au tutoriel 4, j'ai fait une expérience et il se trouve que lorsque j'inverse 2 par 2 l'ordre des vertices (cf tuto 4), les faces sont opaques à l'intérieur. Pourriez-vous donc m'expliquer de quelle façons directX colore un côté d'une face plutôt qu'une autre.

Merci d'avance.

5 réponses

cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
21 août 2009 à 17:36
Toutes les primitives sont des triangles; la coloration se fait du côté où, regardant par au-dessus et parcourant les points dans l'ordre où ils apparaissent dans le buffer, on tourne dans le sens anti-horaire (me semble).
3
mezaya Messages postés 202 Date d'inscription dimanche 18 mai 2003 Statut Membre Dernière intervention 6 mars 2010
23 août 2009 à 11:53
Pour info, on appelle ça le culling.
techniquement pour un triangle abc, directx fait un dot3( ab, ac ) si c'est positif il l'affiche sinon il supprime le triangle. on peut modifier pour afficher le culling dans un sens, dans l'autre ou dans les 2 (dans ce cas, aucun triangle ne sera "cullé" ).

Voili,Voilou
3
nicotwo Messages postés 34 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 5 février 2010
21 août 2009 à 21:34
Merci pour ta réponse : en effet, si on tourne dans le sens horaire, ca explique pourquoi le fait d'inverser les points change le côté de la face colorisée. Reste à savoir si c'est le sens horaire (indirect) ou direct (je peux me débrouiller pour cela. Merci encore.
0
nicotwo Messages postés 34 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 5 février 2010
22 août 2009 à 00:01
Il s'agit bien du sens indirect (ou sens horaire), pour ceux qui se posent la question (en tout cas pour mon cas).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicotwo Messages postés 34 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 5 février 2010
23 août 2009 à 23:41
Merci pour cet info. Je viens de voir que c'était l'objet du tutoriel 14 de la doc directX 10.
0
Rejoignez-nous