# g-truc/glm

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/g-truc-glm).**

10,710 stars · 2,355 forks · C++ · other · fork

## Links

- GitHub: https://github.com/g-truc/glm
- Homepage: https://glm.g-truc.net
- awesome-repositories: https://awesome-repositories.com/repository/g-truc-glm.md

## Topics

`cpp` `cpp-library` `glm` `header-only` `mathematics` `matrix` `opengl` `quaternion` `simd` `sycl` `vector` `vulkan`

## Description

This project is a header-only C++ library designed for graphics mathematics, providing a comprehensive suite of vector, matrix, and quaternion types. It is built using template metaprogramming to generate mathematical primitives at compile time, eliminating the need for precompiled binary libraries and allowing for direct integration into existing build systems.

The library is distinguished by its strict adherence to the OpenGL Shading Language specification, ensuring that mathematical results remain consistent across both CPU and GPU code. It provides specialized utilities for managing floating-point precision, including epsilon-based comparisons and unit-in-the-last-place accuracy measurements, which are essential for maintaining numerical stability in real-time rendering pipelines.

Beyond core linear algebra, the library covers a broad capability surface including spatial transformations, procedural generation, and bit-level data manipulation. It supports advanced geometric operations such as quaternion-based rotations, spline interpolation, and coordinate system mapping, while offering SIMD-friendly data layouts to facilitate hardware-level acceleration.

The library is distributed as a header-only collection, allowing developers to incorporate mathematical primitives directly into their projects without complex external dependency management.

## Tags

### Development Tools & Productivity

- [C++ Rendering Libraries](https://awesome-repositories.com/f/development-tools-productivity/header-only-libraries/c-rendering-libraries.md) — Provides a header-only C++ library of vector, matrix, and quaternion types mirroring shading language specifications.
- [Header-Only Libraries](https://awesome-repositories.com/f/development-tools-productivity/header-only-libraries.md) — Distributes mathematical primitives as a header-only collection to simplify integration and eliminate binary dependencies.
- [Build System Integrations](https://awesome-repositories.com/f/development-tools-productivity/build-system-integrations.md) — Configures native build systems to include mathematical primitives within existing software projects. ([source](https://cdn.jsdelivr.net/gh/g-truc/glm@master/README.md))

### Programming Languages & Runtimes

- [Shading Language Specification Mappings](https://awesome-repositories.com/f/programming-languages-runtimes/language-specifications-standards/language-specifications/shading-language-specification-mappings.md) — Provides C++ data structures that replicate vector and matrix types defined in standard shading language specifications. ([source](http://glm.g-truc.net/0.9.9/api/a00280.html))
- [Fixed-Width Integer Implementations](https://awesome-repositories.com/f/programming-languages-runtimes/fixed-width-integer-implementations.md) — Provides fixed-width integer types for consistent memory representation across platforms. ([source](http://glm.g-truc.net/0.9.9/api/a00139.html))
- [Diagonal Manipulations](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/language-features/array-operations/diagonal-manipulations.md) — Constructs diagonal matrices with specified values to facilitate scaling and projection operations. ([source](http://glm.g-truc.net/0.9.9/api/a00104.html))
- [Object Construction Optimizations](https://awesome-repositories.com/f/programming-languages-runtimes/object-construction-optimizations.md) — Generates vector or matrix objects by reading raw data from memory addresses to initialize structures from existing buffers. ([source](http://glm.g-truc.net/0.9.9/api/a00305.html))
- [Mathematical](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/type-system-tools/type-definitions/type-aliases/mathematical.md) — Ensures consistent mathematical data structures across different development environments. ([source](http://glm.g-truc.net/0.9.9/api/a00017.html))

### Graphics & Multimedia

- [3D Math and Geometry Toolkits](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits.md) — Provides standard linear algebra operations for vectors and matrices, including common geometric, exponential, and trigonometric functions. ([source](https://cdn.jsdelivr.net/gh/g-truc/glm@master/README.md))
- [Rendering Pipeline Math](https://awesome-repositories.com/f/graphics-multimedia/real-time-neural-renderers/real-time-3d-rendering-engines/rendering-pipeline-math.md) — Generates projection, frustum, and transformation matrices for mapping 3D scenes to 2D screens.
- [Inversion Utilities](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/coordinate-viewport-transformations/matrix-transformation-engines/inversion-utilities.md) — Computes the inverse of affine matrices or the inverse transpose of floating-point matrices to support specialized graphics transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00295.html))
- [Procedural Texture Generators](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/procedural-texture-generators.md) — Supports procedural generation of textures and terrain through noise, gradients, and easing curves. ([source](http://glm.g-truc.net/0.9.9/api/a00327.html))
- [Triangle Rasterization](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/rasterization-engines/triangle-rasterization.md) — Calculates normal vectors for triangles to assist with lighting and surface orientation. ([source](http://glm.g-truc.net/0.9.9/api/a00114.html))
- [Picking Region Matrices](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/texture-mapping-pipelines/render-to-texture-buffers/picking-buffers/picking-region-matrices.md) — Creates transformation matrices that restrict rendering or selection to a specific viewport area for interactive object selection. ([source](http://glm.g-truc.net/0.9.9/api/a00245.html))

### Scientific & Mathematical Computing

- [Shading Language Math Implementations](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/mathematical-libraries/mathematical-function-implementations/shading-language-math-implementations.md) — Provides vector, matrix, and scalar types that mirror shading language specifications for consistent results across CPU and GPU code. ([source](http://glm.g-truc.net/0.9.9/api/modules.html))
- [Floating-Point Precision Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers/floating-point-precision-utilities.md) — Provides specialized utilities for managing floating-point precision and numerical stability in real-time rendering pipelines. ([source](http://glm.g-truc.net/0.9.9/api/modules.html))
- [Vector](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/computational-geometry/geometric-operations/vector.md) — Calculates operations on two to four component vectors using an exhaustive set of operators designed for graphics and geometric transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00281.html))
- [Linear Algebra](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/linear-algebra.md) — Provides a collection of template-based mathematical primitives for high-performance geometric transformations.
- [Quaternion Mathematics](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics.md) — Provides quaternion-based rotation and transformation functions for smooth object movement in 3D space. ([source](http://glm.g-truc.net/0.9.9/api/a00285.html))
- [Floating-Point Quaternions](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/floating-point-quaternions.md) — Provides single-precision floating-point quaternions for 3D rotation and orientation. ([source](http://glm.g-truc.net/0.9.9/api/a00253.html))
- [Geometric Intersection Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/geometric-algorithms/geometric-intersection-calculators.md) — Determines the intersection points, distances, or normals between rays and geometric primitives such as spheres, triangles, and planes. ([source](http://glm.g-truc.net/0.9.9/api/a00044.html))
- [Spatial Vector and Matrix Operations](https://awesome-repositories.com/f/scientific-mathematical-computing/high-performance-execution-environments/scientific-computing-platforms/scientific-computing/matrix-operations/matrix-vector-products/spatial-vector-and-matrix-operations.md) — Executes common mathematical functions for matrices and vectors to support general 3D spatial logic. ([source](http://glm.g-truc.net/0.9.9/api/a00285.html))
- [Matrix Calculation Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/matrix-calculation-utilities.md) — Provides a suite of mathematical types and operators for two-to-four dimensional matrices to facilitate graphics software development. ([source](http://glm.g-truc.net/0.9.9/api/a00283.html))
- [Matrix Rotation Extractors](https://awesome-repositories.com/f/scientific-mathematical-computing/matrix-calculation-utilities/matrix-component-accessors/matrix-rotation-extractors.md) — Isolates rotational components from transformation matrices for orientation data. ([source](http://glm.g-truc.net/0.9.9/api/a00101.html))
- [Rotation Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/matrix-calculation-utilities/matrix-component-accessors/matrix-rotation-extractors/rotation-calculators.md) — Calculates rotation matrices and quaternions from axes and angles for 3D object transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00141.html))
- [Mathematical Function Implementations](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/mathematical-libraries/mathematical-function-implementations.md) — Provides a comprehensive suite of mathematical functions that mirror shading language behavior for consistent graphics development. ([source](http://glm.g-truc.net/0.9.9/api/a00280.html))
- [Floating Point Distance Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers/floating-point-distance-calculators.md) — Computes the number of units in the last place between two floating-point values or vectors to measure numerical precision. ([source](http://glm.g-truc.net/0.9.9/api/a00182.html))
- [Geometric Operations](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/computational-geometry/geometric-operations.md) — Calculates standard geometric properties and transformations for quaternions, including dot products, cross products, and normalization. ([source](http://glm.g-truc.net/0.9.9/api/a00254.html))
- [Dual Quaternion Operators](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/dual-quaternion-operators.md) — Calculates dual quaternion transformations including identity creation, inversion, normalization, and linear interpolation. ([source](http://glm.g-truc.net/0.9.9/api/a00022.html))
- [Dual Quaternions](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/floating-point-quaternions/dual-quaternions.md) — Provides specialized dual quaternion data structures for representing rigid body transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00022.html))
- [High-Precision Quaternion Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/high-precision-quaternion-calculators.md) — Computes rotations and orientations using double-precision floating point numbers to maintain high accuracy. ([source](http://glm.g-truc.net/0.9.9/api/a00250.html))
- [Quaternion Arithmetic Routines](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/quaternion-arithmetic-routines.md) — Calculates exponential, logarithmic, power, and square root values for quaternions to support complex mathematical transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00256.html))
- [Quaternion-Matrix Converters](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/quaternion-mathematics/quaternion-matrix-converters.md) — Transforms dual quaternions into matrices and vice versa to bridge between different mathematical representations of spatial data. ([source](http://glm.g-truc.net/0.9.9/api/a00022.html))
- [Numerical Accuracy Management](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/numerical-libraries/numerical-accuracy-management.md) — Evaluates mathematical function accuracy using ULP metrics to ensure numerical stability. ([source](http://glm.g-truc.net/0.9.9/api/a00285.html))
- [Fast Square Root Approximators](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/statistics-probability/random-variables/expected-value-calculators/absolute-value-calculators/fast-square-root-approximators.md) — Provides high-speed square root approximations for real-time graphics rendering performance. ([source](http://glm.g-truc.net/0.9.9/api/a00032.html))
- [Spline Interpolators](https://awesome-repositories.com/f/scientific-mathematical-computing/spline-interpolators.md) — Computes points along Catmull-Rom, cubic, or Hermite curves based on input control points to facilitate smooth path generation. ([source](http://glm.g-truc.net/0.9.9/api/a00358.html))
- [Exponential Operations](https://awesome-repositories.com/f/scientific-mathematical-computing/exponential-operations.md) — Calculates powers, logarithms, and square roots for floating-point vectors using standard mathematical operations defined for graphics programming. ([source](http://glm.g-truc.net/0.9.9/api/a00242.html))
- [Fast Numerical Methods](https://awesome-repositories.com/f/scientific-mathematical-computing/high-performance-execution-environments/scientific-computing-platforms/scientific-computing/fast-numerical-methods/fast-numerical-methods.md) — Implements fast numerical methods to accelerate graphics-intensive mathematical operations. ([source](http://glm.g-truc.net/0.9.9/api/a00324.html))
- [QR Factorization](https://awesome-repositories.com/f/scientific-mathematical-computing/linear-algebra-routines/qr-factorization.md) — Factors matrices into orthonormal and triangular components to simplify complex linear algebra operations. ([source](http://glm.g-truc.net/0.9.9/api/a00081.html))
- [Norm Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/matrix-calculation-utilities/norm-calculators.md) — Computes various vector norms including L1, L2, and LMax for individual vectors or the distance between two vectors. ([source](http://glm.g-truc.net/0.9.9/api/a00113.html))
- [Geometric Intersections](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers/floating-point-distance-calculators/geometric-intersections.md) — Computes the closest point on a line segment to an arbitrary point in 3D space. ([source](http://glm.g-truc.net/0.9.9/api/a00010.html))
- [Floating-Point Packers](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers/floating-point-packers.md) — Converts floating-point numbers into compact integer representations and restores them to their original precision to optimize memory usage. ([source](http://glm.g-truc.net/0.9.9/api/a00372.html))
- [Power-of-Two Rounding Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/multiplication-algorithms/number-theory-algorithms/power-of-two-identifications/power-of-two-rounding-utilities.md) — Provides utilities for rounding integer vector components to the nearest power of two. ([source](http://glm.g-truc.net/0.9.9/api/a00143.html))
- [Trigonometric Functions](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/calculus/trigonometric-functions.md) — Computes standard and inverse trigonometric functions for scalar and vector inputs to support complex geometric calculations. ([source](http://glm.g-truc.net/0.9.9/api/a00373.html))
- [Mathematical Function Extenders](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/mathematical-libraries/mathematical-function-implementations/mathematical-function-extenders.md) — Adds specialized operations like matrix decomposition and bitfield manipulation to improve performance for complex graphics calculations. ([source](http://glm.g-truc.net/0.9.9/api/files.html))
- [Memory Alignment Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities/memory-alignment-utilities.md) — Aligns mathematical data structures to enable hardware-level acceleration and SIMD optimization. ([source](http://glm.g-truc.net/0.9.9/api/a00303.html))
- [Numerical Representation Converters](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/numerical-representation-converters.md) — Translates rotation data between quaternion and matrix formats to facilitate interoperability between graphics systems. ([source](http://glm.g-truc.net/0.9.9/api/a00126.html))
- [Quaternion Comparators](https://awesome-repositories.com/f/scientific-mathematical-computing/quaternion-comparators.md) — Evaluates component-wise relationships between two quaternions to determine if one is greater than, less than, or equal to another. ([source](http://glm.g-truc.net/0.9.9/api/a00125.html))
- [Vector Type Converters](https://awesome-repositories.com/f/scientific-mathematical-computing/vector-type-converters.md) — Scale integer vector components to normalized floating-point values and vice versa to facilitate data format conversion. ([source](http://glm.g-truc.net/0.9.9/api/a00018.html))
- [Fast Power Calculators](https://awesome-repositories.com/f/scientific-mathematical-computing/high-performance-execution-environments/high-performance-and-parallel-computing/high-performance-computing/fast-power-calculators.md) — Provides optimized power functions to maintain high frame rates in graphics applications. ([source](http://glm.g-truc.net/0.9.9/api/a00031.html))
- [Matrix-Vector Products](https://awesome-repositories.com/f/scientific-mathematical-computing/high-performance-execution-environments/scientific-computing-platforms/scientific-computing/matrix-operations/matrix-vector-products.md) — Creates matrices with specific memory layouts by assembling them from individual vectors or converting existing structures. ([source](http://glm.g-truc.net/0.9.9/api/a00103.html))
- [Matrix Component Accessors](https://awesome-repositories.com/f/scientific-mathematical-computing/matrix-calculation-utilities/matrix-component-accessors.md) — Provides methods to retrieve or modify specific rows or columns within matrix structures. ([source](http://glm.g-truc.net/0.9.9/api/a00058.html))
- [Normalized Value Converters](https://awesome-repositories.com/f/scientific-mathematical-computing/normalized-value-converters.md) — Transforms normalized floating-point values into signed or unsigned integer representations of varying bit-depths for optimized data representation. ([source](http://glm.g-truc.net/0.9.9/api/a00119.html))
- [Floating Point Handlers](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers.md) — Validates floating-point data by checking for infinity or NaN values in quaternion components. ([source](http://glm.g-truc.net/0.9.9/api/a00248.html))
- [Floating-Point Navigators](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/floating-point-handlers/floating-point-navigators.md) — Returns the next or previous representable floating-point value based on a specified number of units in the last place. ([source](http://glm.g-truc.net/0.9.9/api/a00182.html))
- [Exponential Computation Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/multiplication-algorithms/number-theory-algorithms/exponentiation-algorithms/exponential-computation-utilities.md) — Provides optimized exponential and logarithmic functions for performance-sensitive graphics tasks. ([source](http://glm.g-truc.net/0.9.9/api/a00323.html))
- [Power-of-Two Identifications](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/arithmetic-number-types/multiplication-algorithms/number-theory-algorithms/power-of-two-identifications.md) — Determines the nearest, next higher, or next lower power of two value relative to a given input integer or vector. ([source](http://glm.g-truc.net/0.9.9/api/a00008.html))
- [Orthonormalization Routines](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/computational-geometry/geometric-operations/geometric-manipulators/orthonormalization-routines.md) — Provides routines to orthonormalize geometric data for maintaining coordinate system integrity. ([source](http://glm.g-truc.net/0.9.9/api/a00348.html))
- [Orthonormalization Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/computational-geometry/geometric-operations/vector/orthonormalization-utilities.md) — Calculates an orthogonal unit vector from a pair of input vectors to establish a normalized coordinate basis. ([source](http://glm.g-truc.net/0.9.9/api/a00118.html))

### User Interface & Experience

- [Geometric](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/geometric.md) — Calculates geometric matrices for translation, rotation, and scaling to position and orient objects within a graphics pipeline. ([source](http://glm.g-truc.net/0.9.9/api/modules.html))
- [Quaternion Interpolators](https://awesome-repositories.com/f/user-interface-experience/coordinate-normalization/normal-interpolation/vector-interpolators/quaternion-interpolators.md) — Calculates smooth transitions between orientations using normalized linear, short-path, and squad interpolation methods. ([source](http://glm.g-truc.net/0.9.9/api/a00352.html))
- [Transformation Matrices](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices.md) — Calculates perspective or orthographic transformation matrices to define how 3D scenes are mapped onto a 2D screen. ([source](http://glm.g-truc.net/0.9.9/api/a00245.html))
- [Epsilon Matrix Comparators](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/epsilon-matrix-comparators.md) — Evaluates the equality of two matrices by checking if the difference between their corresponding components is within a specified tolerance level. ([source](http://glm.g-truc.net/0.9.9/api/a00246.html))
- [Frustum Matrix Generators](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/frustum-matrix-generators.md) — Calculates projection matrices that define the visible volume for graphics rendering. ([source](http://glm.g-truc.net/0.9.9/api/a00243.html))
- [Vector Interpolators](https://awesome-repositories.com/f/user-interface-experience/coordinate-normalization/normal-interpolation/vector-interpolators.md) — Computes smooth transitions between orientations using normalized linear, short-path, or squad interpolation methods. ([source](http://glm.g-truc.net/0.9.9/api/a00126.html))
- [Coordinate Space Mappers](https://awesome-repositories.com/f/user-interface-experience/coordinate-systems/coordinate-converters/coordinate-space-mappers.md) — Converts between object-space and window-space coordinates to facilitate accurate object picking and rendering tasks. ([source](http://glm.g-truc.net/0.9.9/api/a00245.html))
- [Euler Angle Converters](https://awesome-repositories.com/f/user-interface-experience/coordinate-systems/coordinate-converters/euler-angle-converters.md) — Builds homogeneous rotation matrices from Euler angle sequences to define 3D object orientation. ([source](http://glm.g-truc.net/0.9.9/api/a00319.html))
- [Quaternion Orientation Generators](https://awesome-repositories.com/f/user-interface-experience/input-device-detection/orientation-trackers/quaternion-orientation-generators.md) — Generates quaternions representing specific viewing directions and orientations, supporting both left-handed and right-handed coordinate systems. ([source](http://glm.g-truc.net/0.9.9/api/a00125.html))
- [Easing Functions](https://awesome-repositories.com/f/user-interface-experience/animation-and-motion-systems/physics-motion-dynamics/animation-physics/easing-functions.md) — Computes mathematical interpolation curves including back, bounce, circular, cubic, and elastic easing for smooth animation and motion transitions. ([source](http://glm.g-truc.net/0.9.9/api/a00023.html))
- [Coordinate Converters](https://awesome-repositories.com/f/user-interface-experience/coordinate-systems/coordinate-converters.md) — Transforms vectors between Euclidean and polar coordinate representations to facilitate geometric calculations in graphics applications. ([source](http://glm.g-truc.net/0.9.9/api/a00350.html))
- [Cross Product Matrix Builders](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/cross-product-matrix-builders.md) — Constructs skew-symmetric matrices from vectors to represent cross product operations. ([source](http://glm.g-truc.net/0.9.9/api/a00061.html))
- [Derived Rotation Matrix Generators](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/derived-rotation-matrix-generators.md) — Creates homogeneous matrices that combine rotation angles and angular velocities for advanced motion transformations. ([source](http://glm.g-truc.net/0.9.9/api/a00319.html))
- [Storage Order Constructors](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/storage-order-constructors.md) — Builds matrices using row-major or column-major ordering by assembling them from individual vectors. ([source](http://glm.g-truc.net/0.9.9/api/a00338.html))
- [Derived Rotation Matrices](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/derived-rotation-matrices.md) — Computes homogeneous matrices representing rotation and angular velocity about a specific axis for dynamic transformation calculations. ([source](http://glm.g-truc.net/0.9.9/api/a00025.html))
- [Matrix Orthonormalizers](https://awesome-repositories.com/f/user-interface-experience/transformation-matrices/matrix-orthonormalizers.md) — Transforms a 3x3 matrix into an orthonormal form to ensure that its basis vectors are mutually perpendicular and unit length. ([source](http://glm.g-truc.net/0.9.9/api/a00118.html))

### Security & Cryptography

- [Quaternion Rotation Utilities](https://awesome-repositories.com/f/security-cryptography/security/operations-and-incident-response/quaternion-rotation-utilities.md) — Calculates rotations and orientations using quaternions to manage complex object movement and orientation. ([source](http://glm.g-truc.net/0.9.9/api/modules.html))

### Data & Databases

- [Sized Scalar Type Definitions](https://awesome-repositories.com/f/data-databases/data-type-definitions/scalar-types/sized-scalar-type-definitions.md) — Provides explicit bit-width scalar types for consistent cross-platform precision. ([source](http://glm.g-truc.net/0.9.9/api/a00116.html))
- [Value Comparators](https://awesome-repositories.com/f/data-databases/value-comparators.md) — Checks if the difference between two values or vectors falls within a specific tolerance threshold for floating-point equality testing. ([source](http://glm.g-truc.net/0.9.9/api/modules.html))
- [Epsilon-Based Type Comparators](https://awesome-repositories.com/f/data-databases/value-comparators/epsilon-based-type-comparators.md) — Evaluates equality between scalar or vector types using custom tolerance values to ensure accurate results. ([source](http://glm.g-truc.net/0.9.9/api/a00285.html))
- [Epsilon Quaternion Comparators](https://awesome-repositories.com/f/data-databases/value-comparators/epsilon-quaternion-comparators.md) — Evaluates the equality of two quaternions by checking if the difference between their components falls within a specified tolerance threshold. ([source](http://glm.g-truc.net/0.9.9/api/a00255.html))
- [Numeric Precision Management](https://awesome-repositories.com/f/data-databases/numeric-fields/numeric-precision-constraints/numeric-precision-management.md) — Provides specialized epsilon-based comparison and rounding utilities to ensure numerical stability in graphics calculations.
- [Vector Component Comparators](https://awesome-repositories.com/f/data-databases/vector-databases/vector-manipulations/vector-component-comparators.md) — Performs component-wise relational comparisons between two vectors to produce a boolean vector indicating the result of each individual operation. ([source](http://glm.g-truc.net/0.9.9/api/a00374.html))
- [Squared Length Calculators](https://awesome-repositories.com/f/data-databases/vector-search/vector-magnitude-calculators/vector-magnitude-calculators/squared-length-calculators.md) — Calculates squared lengths to improve performance by bypassing square root operations. ([source](http://glm.g-truc.net/0.9.9/api/a00113.html))
- [SIMD-Aligned Data Structures](https://awesome-repositories.com/f/data-databases/vectorized-arithmetic/simd-accelerated-arithmetic/simd-aligned-data-structures.md) — Structures mathematical primitives to align with hardware memory requirements for efficient data access.
- [Associated Maximum Finders](https://awesome-repositories.com/f/data-databases/maximum-value-calculators/associated-maximum-finders.md) — Identifies the maximum value among a set of inputs and return the corresponding associated values for each comparison. ([source](http://glm.g-truc.net/0.9.9/api/a00007.html))
- [Associated Value Comparators](https://awesome-repositories.com/f/data-databases/maximum-value-calculators/associated-value-comparators.md) — Identifies the minimum or maximum value among a set of inputs and return the corresponding associated values for each comparison. ([source](http://glm.g-truc.net/0.9.9/api/a00308.html))
- [Vector Component Aggregators](https://awesome-repositories.com/f/data-databases/vector-databases/vector-aggregation/vector-component-aggregators.md) — Calculates sum, product, minimum, or maximum values across all components within a single vector. ([source](http://glm.g-truc.net/0.9.9/api/a00018.html))
- [Vector Projections](https://awesome-repositories.com/f/data-databases/vector-databases/vector-aggregation/vector-component-aggregators/vector-projections.md) — Provides geometric vector projection functions for calculating directional components in 3D space. ([source](http://glm.g-truc.net/0.9.9/api/a00354.html))
- [Squared Metric Calculators](https://awesome-repositories.com/f/data-databases/vector-search/vector-magnitude-calculators/vector-magnitude-calculators/squared-metric-calculators.md) — Computes the squared length of a vector or the squared distance between two vectors to avoid expensive square root operations during geometric calculations. ([source](http://glm.g-truc.net/0.9.9/api/a00343.html))

### Education & Learning Resources

- [Matrix Operations](https://awesome-repositories.com/f/education-learning-resources/matrix-operations.md) — Calculates determinants, inverses, transposes, and component-wise or outer products for square and rectangular matrices. ([source](http://glm.g-truc.net/0.9.9/api/a00244.html))
- [Associated Minimum Finders](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/cs-theory-foundations/algorithms/data-ordering-and-retrieval/minimum-value-finders/associated-minimum-finders.md) — Identifies the minimum value among a set of inputs and return the corresponding associated values for each comparison. ([source](http://glm.g-truc.net/0.9.9/api/a00007.html))

### Software Engineering & Architecture

- [Fixed-Precision Specializations](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/abstraction-domain-modeling/compile-time-architectural-patterns/compile-time-metaprogramming/fixed-precision-specializations.md) — Provides compile-time generation of fixed-precision scalars and vectors for hardware-specific memory layouts.
- [Header-Only Library Integrations](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/workflow-automation-integrations/external-application-integrations/build-system-library-integrators/header-only-library-integrations.md) — Allows developers to incorporate mathematical primitives directly into projects by including source files.
- [Memory Alignment Utilities](https://awesome-repositories.com/f/software-engineering-architecture/memory-alignment-utilities.md) — Enforces memory alignment for vectors and matrices to ensure hardware compatibility and performance. ([source](http://glm.g-truc.net/0.9.9/api/a00161.html))
- [Integer Arithmetic](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic.md) — Performs common arithmetic operations including factorials, powers, square roots, and logarithms on integer types to support graphics-related calculations. ([source](http://glm.g-truc.net/0.9.9/api/a00042.html))
- [Integer Bit Analyzers](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic/integer-bit-analyzers.md) — Provides bit-level analysis utilities for integer data manipulation. ([source](http://glm.g-truc.net/0.9.9/api/a00009.html))
- [Integer Logarithm Calculators](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic/integer-logarithm-calculators.md) — Computes the base-2 logarithm of integer values to assist in tasks such as determining mipmap levels for texture processing. ([source](http://glm.g-truc.net/0.9.9/api/a00292.html))
- [Power Functions](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic/integer-logarithm-calculators/power-functions.md) — Computes optimized powers for numeric values to improve graphics performance. ([source](http://glm.g-truc.net/0.9.9/api/a00117.html))
- [Integer Matrix Structures](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic/integer-matrix-structures.md) — Supports specialized graphics calculations requiring non-floating point matrix precision. ([source](http://glm.g-truc.net/0.9.9/api/a00100.html))
- [Bit-Packed Storage](https://awesome-repositories.com/f/software-engineering-architecture/memory-layout-optimizations/bit-packed-storage.md) — Provides techniques for converting floating-point scalars and vectors into specialized bit-packed integer representations for efficient storage. ([source](http://glm.g-truc.net/0.9.9/api/a00119.html))
- [Integer Vector Packers](https://awesome-repositories.com/f/software-engineering-architecture/memory-layout-optimizations/bit-packed-storage/integer-vector-packers.md) — Converts integer vectors into compact bit-packed formats by mapping components to specific bit-depths. ([source](http://glm.g-truc.net/0.9.9/api/a00119.html))
- [Vector Data Packers](https://awesome-repositories.com/f/software-engineering-architecture/memory-layout-optimizations/bit-packed-storage/vector-data-packers.md) — Converts vector components into specialized packed formats to optimize memory usage and storage efficiency. ([source](http://glm.g-truc.net/0.9.9/api/a00298.html))

### Game Development

- [Vector Rotation Routines](https://awesome-repositories.com/f/game-development/rotation-management-utilities/interactive-rotation-handlers/vector-rotation-routines.md) — Applies rotational transformations to vectors around specific axes or planes. ([source](http://glm.g-truc.net/0.9.9/api/a00142.html))
- [Spatial Orientation Matrix Builders](https://awesome-repositories.com/f/game-development/orientation-transformation-utilities/spatial-orientation-matrix-builders.md) — Constructs a four-by-four rotation matrix based on a normal vector and an up vector to define spatial orientation. ([source](http://glm.g-truc.net/0.9.9/api/a00142.html))

### Artificial Intelligence & ML

- [Component-wise Math Operators](https://awesome-repositories.com/f/artificial-intelligence-ml/unary-mathematical-operations/component-wise-math-operators.md) — Calculates common mathematical functions such as absolute values, rounding, and clamping across individual components of vectors and matrices to support graphics-oriented computations. ([source](http://glm.g-truc.net/0.9.9/api/a00241.html))
- [Logarithmic Transformers](https://awesome-repositories.com/f/artificial-intelligence-ml/tensor-computation-primitives/cumulative-sum-calculators/logarithmic-transformers/logarithmic-transformers.md) — Computes logarithms using specified bases for scalar and vector inputs. ([source](http://glm.g-truc.net/0.9.9/api/a00046.html))

### Testing & Quality Assurance

- [Pointer-Based Type Constructors](https://awesome-repositories.com/f/testing-quality-assurance/general-testing-utilities/test-utilities-assertions/browser-ui-interaction/component-interaction-testing/pointer-interaction-tools/memory-pointers/pointer-based-type-constructors.md) — Creates vectors or matrices by reading raw data from memory addresses to enable data exchange with external interfaces. ([source](http://glm.g-truc.net/0.9.9/api/a00175.html))
- [Memory Pointer Accessors](https://awesome-repositories.com/f/testing-quality-assurance/general-testing-utilities/test-utilities-assertions/browser-ui-interaction/component-interaction-testing/pointer-interaction-tools/memory-pointers/memory-pointer-accessors.md) — Retrieves direct memory addresses for vector or matrix objects to share data buffers with external graphics systems. ([source](http://glm.g-truc.net/0.9.9/api/a00305.html))
