[−][src]Crate vek
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.
This crate is still in its beta days!
The public API is quite close to being stable, but it hasn't been battle-tested enough.
Issues and bug reports are very welcome!
Cargo features
vec8
,vec16
,vec32
,vec64
,rgba
,rgb
,uvw
,uv
Enable these types. Other types are always enabled for the sake of doc-tests.repr_simd
enables Nightly Rust'srepr_simd
andsimd_ffi
features, and unlock SIMD versions of all appropriate types (thoughrepr_simd
modules). On Stable, this feature has no effect.serde
makes vectors and matrices deriveSerialize
andDeserialize
.image
makes color vectors implement thePixel
trait from theimage
crate.x86intrin
enables x86 intrinsics through thex86intrin
crate.vek
doesn't directly depend on it because it won't compile on Stable and there's no way (as of this writing) to selectively depend on a crate based on therustc
version, not even via build scripts.
#![no_std]
This crate is #![no_std]
.
Re-exports
pub use ops::*; |
pub use vec::*; |
pub use mat::*; |
pub use quaternion::*; |
pub use transition::*; |
pub use transform::*; |
pub use bezier::*; |
pub use geom::*; |
Modules
bezier | Low-order (quadratic and cubic) Bézier curves. |
geom | Common and trivial geometric primitives. |
mat | Matrix types. |
ops | Operations defined by this crate, such as |
quaternion | Quaternions are a convenient representation for rotations in 3D spaces. |
transform | A convenient position + orientation + scale container, backed by two |
transition | Convenience structures for representing a transition from one value to another. |
vec | Vector types. |