Ich suche eine schnelle OpenSource-C ++ - Mathematikbibliothek für meine Spiel-Engine mit den folgenden Funktionen:
- schnell (sse?)
- Vektoren
- Matrizen
- Quaternionen
geeignet für opengl und directx
c++
mathematics
Pragmaskript
quelle
quelle
Antworten:
XNA Math könnte für Sie sein. Es handelt sich um eine reine C ++ - Header-Mathematikbibliothek, die mit dem neuesten DirectX SDK ausgeliefert wird und SSE-Eigenheiten verwendet. Ich kann nicht viel über seine Leistung sprechen, aber nach allem, was ich darüber gelesen habe, scheint es ziemlich anständig zu sein.
XNA Math Reference
XNA Math Programmieranleitung
DX SDK herunterladen
EDIT: Ich bin mir auch nicht sicher über die Lizenzbedingungen. Das DX SDK Eula gibt an, dass "Distributable Code" möglicherweise nicht "Distributable Code" ist
Ich bin mir nicht ganz sicher, ob dies für xna math gilt, da nur der Beispiel- und Utility-Code explizit als "Distributable Code" gekennzeichnet ist.
quelle
Wir verwenden OpenGL Mathematics
Obwohl der Name impliziert, dass es nur für OpenGL ist, sehe ich keinen Grund, warum es für DirectX nicht funktionieren würde. Es ist eine reine Header-Bibliothek, einfach zu bedienen und wird sehr aktiv aktualisiert.
Hör zu.
quelle
Testen Sie Eigen - schnelle Ausdrucksvorlagen, vektorisiert, benutzerfreundlich und unter der MPL2 lizenziert
quelle
Vielleicht CML http://www.cmldev.net/
quelle
Die im Rahmen von Bullet Physics verwendete Vektormath-Bibliothek von Sony erfüllt alle Ihre Anforderungen. Einige Arbeiten sind erforderlich, um es von Bullet zu trennen, aber nichts Ernstes - es hängt nicht von Bullet ab, nur dass niemand es offiziell getrennt davon verpackt hat.
Die derzeit im Bullet Tree enthaltene Version unterstützt SSE-Optimierungen und verfügt über eine C ++ - Schnittstelle.
Eine ältere Version (wahrscheinlich jetzt nicht unterstützt) unterstützt auch SOA-Formate und eine reine C-Schnittstelle.
quelle
Oder aus Gründen der Geschwindigkeit http://sourceforge.net/projects/simdx86/ .
quelle