Die Version 1.0.0 der Linearen Algebra-Bibliothek für C++ (Standard C++23) wurde veröffentlicht. smath, die unter der Apache 2.0 Lizenz als einzige kleine Header-Datei verteilt wird.
- Der Generik-Klasse Vec<N, T> mit nützlichen Aliasnamen Vec2/Vec3/Vec4 und Accessoren (x/y/z/w, r/g/b/a). Vektoren unterstützen annähernde Vergleiche und tuple-/strukturierte Bindungen;
- Der Typ Quaternion<T> basierend auf Vec4;
- Der Generik-Klasse Mat mit nützlichen Aliasnamen Mat2/Mat3/Mat4;
- Hilfsfunktionen für Winkel rad/deg/runden unter Berücksichtigung der einstellbaren Basiseinheit durch das Makro SMATH_ANGLE_UNIT.
- поддержка Swizzling während der Kompilierung (swizzle<"…">);
- Unterstützung für std::format;
- Optionale implizite Konvertierungen;
- Hilfsfunktionen zum Packen von normalisierten RGBA (pack_unorm4x8, unpack_snorm4x8 usw.);
- Unterstützung für C++20-Module;
- es werden ebenfalls zusätzliche Adapter für die Interaktion mit Bibliotheken Eigen, GLM (OpenGL Mathematics), Handmade-Math, raylib и SFML.
Quelle: linux.org.ru
