Estou procurando uma biblioteca matemática C ++ de código aberto para o meu mecanismo de jogo com os seguintes recursos:
- rápido (sse?)
- vetores
- matrizes
- quaternions
adequado para opengl e directx
c++
mathematics
pragmascript
fonte
fonte
Respostas:
XNA Math pode ser para você. É uma biblioteca matemática C ++ apenas de cabeçalho, que é distribuída com o DirectX SDK mais recente e usa intrínsecas SSE. Não posso falar muito sobre o seu desempenho, mas pelo que li sobre isso, parece bastante decente.
Referência matemática XNA
Guia de programação do XNA Math
Download do SDK do DX
EDIT: Também não tenho certeza sobre os termos de licenciamento. O DX SDK Eula afirma que "Código Distribuível" pode não ser
Não tenho certeza se isso se aplica ao xna math, pois apenas o código de exemplo e utilitário está explicitamente marcado como "Código Distribuível"
fonte
Usamos Matemática OpenGL
Embora o nome implique que seja apenas para o OpenGL, não vejo razão para que não funcione no DirectX. É uma biblioteca apenas de cabeçalho, fácil de usar e é atualizada ativamente.
Confira.
fonte
Experimente o Eigen - modelos de expressão rápidos, vetorizados, fáceis de usar e licenciados sob o MPL2
fonte
Talvez a CML http://www.cmldev.net/
fonte
A biblioteca de vetores da Sony, usada como parte da Bullet Physics , atende a todos os seus requisitos. Há algum trabalho envolvido para separá-lo do Bullet, mas nada sério - ele não depende do bullet, apenas que ninguém jamais o empacotou oficialmente.
A versão atualmente na árvore de marcadores suporta otimizações de SSE e possui uma interface C ++.
Uma versão mais antiga (provavelmente agora não suportada) também suporta formatos SOA e uma interface C pura.
fonte
Ou, para velocidade, http://sourceforge.net/projects/simdx86/ .
fonte