Je comprends que les sujets mathématiques suivants sont requis pour la programmation graphique 3D. J'ai commencé à en faire certains dans mon cours de mathématiques. Quelqu'un peut-il m'orienter vers une ressource qui explique comment ils postulent? Quels problèmes graphiques / jeux sont-ils utilisés pour résoudre?
- mathématiques de vecteur
- mathématiques matricielles
- quaternions
- algèbre linéaire
Autant que je puisse voir, ce sont tous des sujets d'algèbre / matrice linéaire. Y a-t-il d'autres sujets requis?
3d
mathematics
matrix
linear-algebra
quaternion
Katherine Rix
la source
la source
Réponses:
L'algèbre linéaire est la principale discipline pour la programmation graphique 3D simplement parce que c'est le langage mathématique pour décrire la géométrie spatiale. Vos trois autres sujets ne sont en réalité que des sous-ensembles d'algèbre linéaire:
En ce qui concerne les autres mathématiques pertinentes pour la programmation graphique 3D, celle que je recommanderais qui ne suscite pas assez d'amour est la géométrie informatique. Beaucoup de problèmes naturels se résument aux sujets de la géométrie informatique:
Après cela, j'encouragerais la recherche dans le calcul de base et en particulier les méthodes numériques pour les équations différentielles; ceux-ci sont moins pertinents pour les graphiques 3D en soi qu'ils ne le sont pour la physique 3D, mais en général, les deux sujets sont assez étroitement couplés (même pour des problèmes simples de cinématique - par exemple, pour les animations de personnages et autres) et une certaine connaissance des deux sera améliorer considérablement votre connaissance de l'un ou l'autre; il est difficile, voire impossible, de travailler la physique pertinente sans les mêmes connaissances de base en algèbre linéaire que les graphiques, mais en même temps, la connaissance de la physique fournit un autre point de référence pour comprendre les sujets des graphiques.
la source
Voici une excellente introduction http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-2/
la source
http://www.dickbaldwin.com/KjellTutorial/KjellVectorTutorialIndex.htm est un didacticiel assez bon et simple sur les mathématiques vectorielles 2D / 3D ET ses applications sur la programmation graphique.
la source
Si vous connaissez les coordonnées cartésiennes, l'application des sujets ci-dessus à l'infographie devrait être assez claire. Il existe des tutoriels tels que ceux-ci pour OpenGL qui aideront à clarifier l'application des mathématiques à la résolution des problèmes d'affichage de base, par exemple comment faire tourner un modèle filaire. L'article de Wikipédia sur le dessin en perspective pourrait aider avec un peu de contexte historique.
Au-delà, il existe de nombreux sujets d'affichage qui bénéficient de la formulation mathématique. Par exemple, les solides 3D sont généralement représentés par des triangulations de leur surface. Comment ne montrer que la partie de la surface qu'un observateur "devrait" voir (algorithmes de surface / ligne cachés)? Si un objet doit être illuminé à partir d'une source / direction particulière, comment cela interagit-il avec la perspective pour donner un rendu de surface convaincant?
Au-delà de cela, il y a toutes sortes de sujets de modélisation intéressants, tels que l'animation d'une brume ou d'une flamme. Mais la transformation des coordonnées, comme votre liste de sujets semble se concentrer, est un aliment de base de toutes les avancées ultérieures.
la source
Algèbre linéaire pratique et principes de base de l'infographie sont deux très bons livres qui couvriront les sujets que vous mentionnez (et leur utilisation dans l'infographie), si vous aimez les livres et autres.
la source
Ils ne sont pas tous obligatoires. Les mathématiques vectorielles sont partout dans les graphiques 3D, vous pourriez être en mesure de configurer la géométrie sans connaître les points les plus fins des mathématiques vectorielles, mais des choses comme les cartes de relief vont devenir très difficiles, et vous tomberez sur la physique.
Les quaternions offrent simplement une description différente pour certains des mathématiques, cela peut être agréable d'avoir, mais ce n'est certainement pas nécessaire car des mathématiques plus conventionnelles suffisent pour décrire tout calcul que vous pouvez faire avec les quaternions.
Les mathématiques matricielles et l'algèbre linéaire sont très proches, elles décrivent surtout des opérations linéaires sur des ensembles de nombres. Mais encore une fois, c'est juste une autre façon de décrire certaines choses qui pourraient être décrites avec des vecteurs et l'algèbre.
Je ne sais pas si vous considérez que ce n'est qu'une partie des mathématiques de base, mais la trigonométrie doit certainement faire la liste également.
la source