Que signifie pour normaliser une valeur?
Je suis actuellement des études d'éclairage en OpenGL, qui utilise une fonction en GLSL appelle la "normalisation". Selon OpenGL docs, il dit qu'il "calcule le normalisée produit de deux vecteurs". Toutefois, il n'explique toujours pas ce que "normalisé" signifie. J'ai essayé de chercher ce qu'est un produit normalisé est sur Google, mais je n'arrive pas à trouver quoi que ce soit. Quelqu'un peut-il expliquer ce normaliser les moyens et donner quelques exemple d'une valeur normalisée?
- où avez-vous trouvé? En glsl spec il est: normalize(genType x) - Renvoie un vecteur dans la direction x, mais avec une longueur de 1. opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf
- Ici, je pense que c'était la première chose qui m'est venue quand j'ai googlé. opengl.org/sdk/docs/manglsl/xhtml/normalize.xml
- étrange... mais la description qu'il ya une bonne info.
- En règle générale, vous devriez avoir au moins des connaissances de base en simple algèbre linéaire lorsque les plonger dans de l'infographie, de normaliser un vecteur ne restera pas le plus complexe de la chose, vous rencontrerez très souvent.
- Je m'excuse de poser cette question simple que je ne suis qu'un étudiant en deuxième année. Je ne pensais pas qu'un tel niveau élevé de mathématiques qui serait requis pour les programmes graphiques.
- Pourquoi cette question, de sorte downvoted? C'est une question tout à fait pertinente qui a un parfaitement réponse valable.
- Parce que c'est une leçon de vocabulaire. Nous avons english.stackexchange.com pour cela, bien qu'ils ne seraient probablement fermer cette question comme "de référence général."
- C'est une question valable. Il devrait être évident @theAmateurProgrammer a donné à ce pensent certains, mais est confondu par beaucoup de l'écriture qui suppose que vous êtes déjà familier avec le vecteur des mathématiques. Il/elle a toute ma sympathie; ce n'est pas un cas de quelqu'un demande à quelqu'un d'envoyer teh codez kthxbye.
- Récemment, j'ai couru à travers cette question de la recherche de la même réponse! Toutes les réponses et les commentaires de l'aide. J'ai voulu contribuer à cette série qui m'a vraiment aidé, khanacademy.org/math/linear-algebra/vectors-and-spaces/vectors/...
Vous devez vous connecter pour publier un commentaire.
C'est un terme mathématique et ce lien explique son sens dans assez simple:
Je pense que la confusion vient de l'idée de normaliser "une valeur" par opposition à "vecteur"; si vous pensez à un numéro unique, en tant que valeur, la normalisation n'a pas de sens. La normalisation n'est utile que lorsqu'il est appliqué à un vecteur.
Un vecteur est une séquence de nombres; dans des graphismes en 3D, il est généralement un système de coordonnées exprimées en
v = <x,y,z>
.Chaque vecteur a une ampleur ou longueur, qui peuvent être trouvés en utilisant le théorème de Pythagore le théorème de:
|v| = sqrt(x^2 + y^2 + z^2)
C'est en gros la longueur d'une ligne à partir de l'origine<0,0,0>
au point exprimé par le vecteur.Un vecteur est normal si sa longueur est de 1. Ça y est!
À normaliser un vecteur moyen de le changer pour qu'il pointe dans la même direction (pensez à la ligne à partir de l'origine), mais sa longueur est égale à un.
La principale raison pour laquelle nous utilisons vecteurs normaux est de représenter une direction; par exemple, si vous êtes à la modélisation d'une source de lumière qui est à une distance infinie, vous ne pouvez pas donner les coordonnées précises pour cela. Mais vous pouvez indiquer où la trouver à partir d'un point particulier à l'aide d'un vecteur normal.