Crate bevy::math

Expand description

Provides math types and functionality for the Bevy game engine.

The commonly used types are vectors like Vec2 and Vec3, matrices like Mat2, Mat3 and Mat4 and orientation representations like Quat.

Modules§

  • bool vector mask types.
  • This module contains traits and implements for working with bounding shapes
  • Provides types for building cubic splines for rendering curves and use with animation easing.
  • f32 vector, quaternion and matrix types.
  • f64 vector, quaternion and matrix types.
  • i16 vector types.
  • i32 vector types.
  • i64 vector types.
  • The bevy_math prelude.
  • This module defines primitive shapes. The origin is (0, 0) for 2D primitives and (0, 0, 0) for 3D primitives, unless stated otherwise.
  • This module contains tools related to random sampling.
  • Traits adding swizzle methods to all vector types.
  • u16 vector types.
  • u32 vector types.
  • u64 vector types.

Structs§

  • A 2D affine transform, which can represent translation, rotation, scaling and shear.
  • Reduced-size version of glam::Affine3A for use when storage has significant performance impact. Convert to glam::Affine3A to do non-trivial calculations.
  • A 3D affine transform, which can represent translation, rotation, scaling and shear.
  • An AspectRatio is the ratio of width to height.
  • A 2-dimensional bool vector mask.
  • A 3-dimensional bool vector mask.
  • A 3-dimensional SIMD vector mask.
  • A 4-dimensional bool vector mask.
  • A 4-dimensional SIMD vector mask.
  • A 2D affine transform, which can represent translation, rotation, scaling and shear.
  • A 3D affine transform, which can represent translation, rotation, scaling and shear.
  • A 2x2 column major matrix.
  • A 3x3 column major matrix.
  • A 4x4 column major matrix.
  • A quaternion representing an orientation.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A normalized vector pointing in a direction in 2D space
  • A normalized vector pointing in a direction in 3D space
  • A normalized SIMD vector pointing in a direction in 3D space.
  • A wrapper for floats that implements Ord, Eq, and Hash traits.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A rectangle defined by two opposite corners.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A 2x2 column major matrix.
  • A 3x3 column major matrix.
  • A 3x3 column major matrix.
  • A 4x4 column major matrix.
  • A quaternion representing an orientation.
  • An infinite half-line starting at origin and going in direction in 2D space.
  • An infinite half-line starting at origin and going in direction in 3D space.
  • A rectangle defined by two opposite corners.
  • A counterclockwise 2D rotation in radians.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A rectangle defined by two opposite corners.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.
  • A 2-dimensional vector.
  • A 3-dimensional vector.
  • A 3-dimensional vector.
  • A 4-dimensional vector.

Enums§

Traits§

  • A trait for extending f32 and f64 with extra methods.
  • Ergonomics trait for a type with a Standard distribution, allowing values to be generated uniformly from an Rng by a method in its own namespace.
  • A type that supports the operations of a normed vector space; i.e. a norm operation in addition to those of VectorSpace. Specifically, the implementor must guarantee that the following relationships hold, within the limitations of floating point arithmetic:
  • Exposes methods to uniformly sample a variety of primitive shapes.
  • A type that supports the mathematical operations of a real vector space, irrespective of dimension. In particular, this means that the implementing type supports:

Functions§

  • Creates a 2x2 matrix from two column vectors.
  • Creates a 3x3 matrix from three column vectors.
  • Creates a 4x4 matrix from four column vectors.
  • Creates a quaternion from x, y, z and w values.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2x2 matrix from two column vectors.
  • Creates a 3x3 matrix from three column vectors.
  • Creates a 3x3 matrix from three column vectors.
  • Creates a 4x4 matrix from four column vectors.
  • Creates a quaternion from x, y, z and w values.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.
  • Creates a 2-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 3-dimensional vector.
  • Creates a 4-dimensional vector.

Type Aliases§

  • Direction2dDeprecated
    A normalized vector pointing in a direction in 2D space
  • Direction3dDeprecated
    A normalized vector pointing in a direction in 3D space