Au début, je me suis demandé pourquoi NDC varie de -1 à 1, plutôt que de 0 à 1. Je pensais que l'origine au centre est peut-être utile pour quelque chose. P>
Mais pourquoi utilise-t-il un système de coordonnées gaucher? P>
pourrait-il être juste pour que la valeur Z soit plus élevée pour les objets plus éloignés? Ce serait une bonne raison pour moi. p>
3 Réponses :
Mais pourquoi utilise-t-il un système de coordonnées gaucher? P> blockQuote>
Pour augmenter les distances du plan de projection dans la carte de la direction de la carte pour augmenter les valeurs du tampon de profondeur. P>
pourrait-il être juste pour que la valeur Z soit plus élevée pour les objets plus éloignés? Ce serait une bonne raison pour moi. P> blockQuote>
Eh bien, c'est exactement pourquoi c'est comme ça. P>
Mais pourquoi utilise-t-il un système de coordonnées gaucher? p> blockQuote>
Ajoutons "par défaut" à cette question. Parce que tout ce qui est nécessaire pour changer, c'est
GLDEPTHANGE (1.0F, 0.0F); code> et maintenant vous êtes droitier. Et oui, c'est une syntaxe GL parfaitement légale; Il n'ya jamais eu de restriction que la gamme près de Z est inférieure à la fourchette Z. P>
Pourquoi est-il gaucher par défaut? Peut-être que quelqu'un sur l'arb a aimé cela comme ça. Peut-être que quelqu'un sur l'arb a aimé une plage de profondeur croissante au lieu de diminuer et l'orientation de coin inférieur gauche rendait nécessaire que nécessaire. Peut-être parce que le progéniteur de OpenGL, Irix GL, l'a fait de cette façon et l'arb n'a pas vu de besoin de le changer. P>
La raison de cela est immatérielle; La Handedness est purement une commodité de notation. À certains endroits, le droitier a du sens. Dans d'autres, gaucher a du sens. Et puisqu'il est changé trivialement, utilisez simplement ce qui fonctionne pour vous. P>
Il serait alors cohérent avec tout le reste. P> blockQuote>
cohérent avec quoi em> tout le reste? Toutes les trucs de fonction fixe qui ont été supprimés? P>
La transformation Viewport est terminée en interne, où personne ne peut y arriver. Vous ne fournissez même pas une matrice; Vous offrez simplement une plage de visualisation et de profondeur. Donc, du point de vue de quelqu'un utilisant un GL de fonction fixe, tout est vraiment droitier. P>
La seule fois que la Harlandness se présente, c'est lors de la gestion directe avec des sommets de sommet, où vous devez savoir quelle est la garantie de l'espace de clip. Et dans ce cas, la modification de la mainness est une fonction simple de la projection de perspective nier la Z. ou, si vous aimez les coordonnées de gauche, la projection de la perspective pas em> nier la Z. ou à nouveau, juste Inverser le
GLDEPTHANGE code> et maintenant vous êtes droitier. p>
Devinez que le changement de la droiture appartient à la manière dont les cartes graphiques interprètent les valeurs Z. Valeur z supérieure -> plus grande profondeur. Le changement de garantie implicite peut être effectué par la matrice de projection sans frais supplémentaires. Changer plus tard ajouterait une étape de calcul supplémentaire. P>
Je ne comprends pas comment une origine centrée signifie qu'il est "gaucher" ...
Je n'ai jamais impliqué ça. Voyez ici: SONGHO.CA/OPENGL/GL_PROJEXMATRIX.HTML Refarés ma question.
Pourquoi un système droitier serait-il meilleur?
@ cbamber85, il serait alors compatible avec tout le reste. Et s'il vous plaît justifier les bowvotes, quiconque c'était ...
Je vois. Je demandais honnêtement que je n'ai pas compris la distinction.
Comme tout système de coordonnées tridimensionnel qui n'est pas utilisé par des trolls pour confondre les autres personnes. Je plaisante bien sûr mais je cherche juste une raison pour laquelle un système de coordonnées gaucher pour NDC est justifié. Parce que s'il n'y a pas de justification, je suis sûr qu'ils l'auraient fait de la main droite comme tout le reste.
Vous devriez éditer votre question pour inclure le "tout le reste", le seul cadre / API que je puisse penser que le système de coordonnées droitiers fixe i> est Direct3D ... sinon ils sont mathématiquement et informaticement équivalents.