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
Estou procurando uma biblioteca matemática C ++ de código aberto para o meu mecanismo de jogo com os seguintes recursos:
adequado para opengl e directx
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.
Guia de programação do XNA Math
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
"execute em uma plataforma diferente das plataformas Windows, Xbox e Windows Mobile;"
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"
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.
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 ++.
Ou, para velocidade, http://sourceforge.net/projects/simdx86/ .