Expand description
Generic 2D-3D math swiss army knife for game engines, with SIMD support and focus on convenience.
See the wiki for an overview, FAQ, guides, and other info.
Issues and bug reports are very welcome!
Cargo features
vec8,vec16,vec32,vec64,rgba,rgb,uvw,uvEnable these types. Other types are always enabled for the sake of doc-tests.repr_simdenables Nightly Rust’srepr_simdandsimd_ffifeatures, and unlock SIMD versions of all appropriate types (thoughrepr_simdmodules). On Stable, this feature has no effect.serdemakes vectors and matrices deriveSerializeandDeserialize.imagemakes color vectors implement thePixeltrait from theimagecrate.mintenables conversion to themintcrate’s types.mintis an interoperability layer for math libraries.
#![no_std]
This crate is #![no_std].
Re-exports
pub extern crate approx;pub extern crate num_integer;pub extern crate num_traits;pub extern crate serde;pub use crate::ops::*;pub use crate::vec::*;pub use crate::mat::*;pub use crate::quaternion::*;pub use crate::transition::*;pub use crate::transform::*;pub use crate::bezier::*;pub use crate::geom::*;pub use crate::simd_traits::*;Modules
Low-order (quadratic and cubic) Bézier curves.
Common and trivial geometric primitives.
Matrix types.
Operations defined by this crate, such as
MulAdd, Lerp, Clamp, and Wrap.Quaternions are a convenient representation for rotations in 3D spaces.
SIMD traits; they are useful when the features “repr_simd” and “platform_intrinsics” are enabled.
A convenient position + orientation + scale container, backed by two
Vec3 and a Quaternion.Convenience structures for representing a transition from one value to another.
Vector types.