Comme vous savez quand nous voulons dessiner un objet à trois dimensions dans DirectX, nous devons définir une caméra. Maintenant, nous avons un objet Device dont le nom est 'device1'. C'est ma question: device1.View = Matrix.Look ... (Nouveau Vector3(), Nouveau Vector3(), Nouveau Vector3()); L'argument n ° 3 est Up Vector. Qu'est-ce que ça fait exactement?Que fait exactement Up Vector dans DirectX?
Répondre
Comme son nom l'indique, il définit dans quelle direction "haut" est. C'est une chose assez importante. Vous devez connaître la position de la caméra, vous devez savoir dans quelle direction elle se trouve, mais vous devez également savoir comment elle est tournée, c'est-à-dire ce qui sera perçu comme haut et bas, gauche et droite.
Dans notre monde réel, le vecteur «haut» de notre champ de vision est (généralement) impliqué par le champ de gravité, c'est-à-dire l'inverse du vecteur de gravité exercé par la Terre.
Dans une matrice de caméra, vous devez former une matrice de base "orthonormale" pour décrire la trame de coordonnées.
Si vous pensez à un cadre de coordonnées 3D, vous avez 3 axes. L'axe X (ou vecteur latéral/latéral), l'axe Y (vecteur ascendant) et l'axe Z (vecteur directionnel).
Le vecteur ascendant est simplement important pour définir ce repère.
Une matrice de base de rangée principale est définie comme suit:
xx, xy, xz, 0
yx, yy, yz, 0
zx, zy, zz, 0
px, py, pz, 1
xx, xy, xz est un 3-vecteur définissant l'axe des x, yx, yy, yz l'axe y, zx, zy, zz l'axe z et px, py, pz définit le vecteur de position. Aussi, si vous y pensez si vous avez pointé le vecteur vers le haut, alors vous vous attendez à voir tout à l'envers .. non? De plus, comme vous n'avez pas fait pivoter le vecteur vers le haut, vous remarquerez également que le vecteur latéral pointe dans le mauvais sens et que vous verrez quelque chose qui apparaît en miroir sur l'axe X et qui est également à l'envers.
- 1. Que fait exactement rangeOfCharacterFromSet?
- 2. Que fait exactement MIBCC.EXE?
- 3. Que fait exactement FillMode?
- 4. Que fait exactement @synthesize?
- 5. Que fait exactement visibleContentsAsDataURL?
- 6. Que fait exactement reloadData?
- 7. Que fait exactement Panel.IsItemsHost?
- 8. Que fait SetPrivateData dans Managed DirectX?
- 9. WCF: Que fait exactement IsInitiating?
- 10. Que fait exactement System.Diagnostics.Process UseShellExecute?
- 11. Que fait exactement -march = natif?
- 12. Que fait exactement l'utilitaire "ar"?
- 13. Que fait exactement ce programme OpenCV?
- 14. Que fait le réglage "RAILS_GEM_VERSION" exactement?
- 15. EntityClient Provider - Que fait-il exactement?
- 16. Que fait exactement Windbg "d esp"?
- 17. Que fait exactement la directive using?
- 18. Que fait exactement "foo = (foo + 1)% bar"?
- 19. Que fait exactement la méthode .join()?
- 20. Que fait exactement ce code ML standard?
- 21. Que fait un gestionnaire de racks exactement?
- 22. que fait exactement le mot-clé prototype dans jquery?
- 23. Que fait exactement la clause "Over" dans T-Sql?
- 24. Que fait exactement "map.resource" dans le fichier de route?
- 25. Que fait exactement Response.Redirect ("~/...") dans la réponse HTTP?
- 26. Qu'est-ce que CDATA et que fait-il exactement?
- 27. Que fait exactement cette syntaxe de javascript getElementsByTagName?
- 28. Que fait exactement le profilage C++ (google cpu perf tools)?
- 29. Ruby on Rails: alias_method_chain, que fait-il exactement?
- 30. Que fait exactement la règle de suppression de Nullify?