Skip to content
forked from boostorg/qvm

Boost Quaternions, Vectors, Matrices library

License

Notifications You must be signed in to change notification settings

vinniefalco/qvm

 
 

Repository files navigation

QVM

A generic C++ library for working with Quaternions, Vectors and Matrices.

Documentation

https://boostorg.github.io/qvm/

Features

  • Emphasis on 2, 3 and 4-dimensional operations needed in graphics, video games and simulation applications.
  • Free function templates operate on any compatible user-defined Quaternion, Vector or Matrix type.
  • Enables Quaternion, Vector and Matrix types from different libraries to be safely mixed in the same expression.
  • Type-safe mapping between compatible lvalue types with no temporary objects; f.ex. transpose remaps the access to the elements, rather than transforming the matrix.
  • Requires only {CPP}03.
  • Zero dependencies.

Support

Distribution

Besides GitHub, there are two other distribution channels:

  • QVM is included in official Boost releases.
  • For maximum portability, the library is also available in single-header format, in two variants (direct download links):
    • qvm.hpp: single header containing the complete QVM source, including the complete set of swizzling overloads.
    • qvm_lite.hpp: single header containing everything except for the swizzling overloads.

Copyright 2008-2023 Emil Dotchevski and Reverge Studios, Inc. Distributed under the Boost Software License, Version 1.0.

About

Boost Quaternions, Vectors, Matrices library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 99.4%
  • Jsonnet 0.3%
  • Meson 0.2%
  • Python 0.1%
  • Shell 0.0%
  • Batchfile 0.0%