Il existe un certain nombre de projets qui se sont installés sur le site de l'Union européenne. Boîte à outils graphique générique pour cela. Le GMTL qu'il contient est agréable - il est assez petit, très fonctionnel, et a été utilisé assez largement pour être très fiable. OpenSG, VRJuggler, et d'autres projets sont tous passés à l'utilisation de cette méthode au lieu de leurs propres calculs de vertor/matrix.
Je l'ai trouvé très agréable - il fait tout via des modèles, il est donc très flexible et très rapide.
Edit :
Après la discussion sur les commentaires, et les modifications, j'ai pensé que je pourrais donner plus d'informations sur les avantages et les inconvénients des implémentations spécifiques, et pourquoi vous pourriez choisir l'une plutôt que l'autre, selon votre situation.
GMTL -
Avantages : API simple, spécialement conçue pour les moteurs graphiques. Comprend de nombreux types primitifs orientés vers le rendu (tels que les plans, AABB, quatenrions avec interpolation multiple, etc) qui ne sont pas dans d'autres paquets. Très faible consommation de mémoire, assez rapide, facile à utiliser.
Inconvénients : L'API est très axée spécifiquement sur le rendu et les graphiques. Elle n'inclut pas les matrices d'usage général (NxM), la décomposition et la résolution de matrices, etc., car elles ne font pas partie du domaine des applications graphiques/géométriques traditionnelles.
Eigen -
Avantages : API propre assez facile à utiliser. Comprend un Module de géométrie avec les quaternions et les transformées géométriques. Faible consommation de mémoire. Complet, hautement performant résolution de grandes matrices NxN et autres routines mathématiques d'usage général.
Inconvénients : Le champ d'application peut être un peu plus large que ce que vous souhaitez ( ?). Moins de routines spécifiques à la géométrie et au rendu par rapport à GMTL (par exemple : définitions des angles d'Euler, etc.).
IMSL -
Avantages : Bibliothèque numérique très complète. Très, très rapide (supposé être le solveur le plus rapide). De loin l'API mathématique la plus grande et la plus complète. Supporté commercialement, mature et stable.
Inconvénients : Coût - pas bon marché. Très peu de méthodes spécifiques à la géométrie et au rendu, vous devrez donc vous débrouiller en plus de leurs cours d'algèbre linéaire.
NT2 -
Avantages : Fournit une syntaxe qui est plus familière si vous êtes habitué à MATLAB. Permet la décomposition complète et la résolution de grandes matrices, etc.
Inconvénients : Mathématique, pas axé sur le rendu. Probablement pas aussi performant que Eigen.
LAPACK -
Avantages : Très stable, algorithmes éprouvés. Existent depuis longtemps. Résolution complète de matrices, etc. Nombreuses options pour les mathématiques obscures.
Inconvénients : Pas aussi performant dans certains cas. Porté depuis Fortran, avec une API bizarre pour l'utilisation.
Personnellement, pour moi, cela se résume à une seule question : comment comptez-vous l'utiliser ? Si vous vous concentrez uniquement sur le rendu et les graphiques, j'aime bien Boîte à outils graphique générique Il s'agit d'un outil très performant, qui prend en charge de nombreuses opérations de rendu utiles sans avoir à mettre en œuvre les vôtres. Si vous avez besoin de résoudre des matrices de manière générale (par exemple, décomposition SVD ou LU de grandes matrices), j'opterais pour Eigen puisqu'il gère cela, fournit quelques opérations géométriques, et est très performant avec les solutions de grandes matrices. Vous devrez peut-être écrire vos propres opérations graphiques/géométriques (sur leurs matrices/vecteurs), mais ce n'est pas horrible.