Estoy buscando una biblioteca matemática C ++ de código abierto rápida para mi motor de juego con las siguientes características:
- rápido (sse?)
- vectores
- matrices
- cuaterniones
Adecuado para opengl y directx
c++
mathematics
pragmascript
fuente
fuente
Respuestas:
XNA Math podría ser para ti. Es una biblioteca matemática de C ++ solo con encabezado que se distribuye con el último DirectX SDK y utiliza intrínsecos SSE. No puedo hablar mucho sobre su rendimiento, pero por lo que leí al respecto, parece ser bastante decente.
XNA Math Reference
Guía de programación de XNA Math
Descarga de DX SDK
EDITAR: tampoco estoy seguro de los términos de licencia. El DX SDK Eula establece que "Código distribuible" puede no ser
No estoy completamente seguro de si esto se aplica a xna math ya que solo el código de muestra y de utilidad está marcado explícitamente como "Código Distribuible"
fuente
Usamos Matemáticas OpenGL
Aunque el nombre implica que es solo para OpenGL, no veo ninguna razón para que no funcione para DirectX. Es una biblioteca de solo encabezado, fácil de usar y se actualiza muy activamente.
Echale un vistazo.
fuente
Pruebe Eigen : plantillas de expresión rápidas, vectorizadas, fáciles de usar y con licencia MPL2
fuente
Quizás CML http://www.cmldev.net/
fuente
La biblioteca de vectores matemáticos de Sony, utilizada como parte de Bullet Physics , cumple con todos sus requisitos. Se requiere algo de trabajo para separarlo de Bullet, pero nada serio: no depende de bala, solo que nadie lo empaquetó oficialmente aparte de él.
La versión actualmente en el árbol de viñetas admite optimizaciones SSE y tiene una interfaz C ++.
Una versión anterior (probablemente ahora no compatible) también admite formatos SOA y una interfaz C pura.
fuente
O, para mayor velocidad, http://sourceforge.net/projects/simdx86/ .
fuente