Lines Matching refs:Added

26 ### Added  subsection
28 * Added `to_angle` method to 2D vectors.
30 * Added `FloatExt` trait which adds `lerp`, `inverse_lerp` and `remap` methods
33 * Added `i16` and `u16` vector types, `I16Vec2`, `I16Vec3`, `I16Vec4`,
42 * Added the `#[must_use]` attribute to all pure functions following the
51 ### Added subsection
53 * Added `div_euclid` and `rem_euclid` to integer vector types.
55 * Added wrapping and saturating arithmetic operations to integer vector types.
57 * Added `to_scale_angle_translation` to 2D affine types.
59 * Added `mul_assign` ops to affine types.
67 ### Added subsection
72 * Added missing safe `From` conversions from `f32` vectors to `f64` vectors.
74 * Added `TryFrom` implementations between different vector types.
76 * Added `test` and `set` methods to `bool` vector types for testing and setting
79 * Added `MIN`, `MAX`, `INFINITY` and `NEG_INFINITY` vector constants.
88 ### Added subsection
90 * Added `i64` and `u64` vector types; `I64Vec2`, `I64Vec3`, `I64Vec4`,
93 * Added `length_squared` method on signed and unsigned integer vector types.
95 * Added `distance_squared` method on signed integer vector types.
116 ### Added subsection
118 * Added `copysign` method to signed vector types.
124 * Added `u32` implementation of `BVec3A` and `BVec4` when SIMD is not available.
140 ### Added subsection
142 * Added missing `Serialize`, `Deserialize` and `PartialEq` implementations.
144 * Added `Sum<Self>` and `Product<Self>` implementations for all vector, matrix
147 * Added 4x4 matrix methods `look_to_lh` and `look_to_rh`. These were previously
150 * Added `dot_into_vec` methods to vector which returns the result of the dot
153 * Added `is_negative_bitmask` to vector types which returns a `u32` of bits for
156 * Added `splat` method and `TRUE` and `FALSE` constants to all `BVec` types.
158 * Added `from_mat3a` methods to `Affine2`, `Mat2`, `Mat4` and `Quat` types.
174 ### Added subsection
176 * Added experimental `core-simd` feature which enables SIMD support via the
196 ### Added subsection
222 ### Added subsection
269 ### Added subsection
271 * Added `to_array()` to `Quat` and `DQuat`.
272 * Added `mul_add` method to all vector types - note that this will be slower
274 * Added the `fast-math` flag which will sacrifice some float determinism for
290 ### Added subsection
292 * Added the `from_rotation_arc_2d()` method to `Quat` and `DQuat` which will
294 * Added impl of `Neg` operator for matrix types.
295 * Added `cuda` feature which forces `glam` types to match cuda's alignment
305 * Added `repr(C)` attribute to affine types.
318 ### Added subsection
320 * Added implementations for new `IntoMint` trait from the `mint` crate.
321 * Added `mint` conversions for `Mat3A`.
322 * Added `as_vec3a` cast methods to vector types.
331 ### Added subsection
333 * Added `Not`, `Shl`, `Shr`, `BitAnd`, `BitOr` and `BitXor` implementations for
335 * Added `NAN` constant for all types.
349 ### Added subsection
351 * Added `wasm32` SIMD intrinsics support.
352 * Added optional support for the `rkyv` serialization crate.
353 * Added `Rem` and `RemAssign` implementations for all vector types.
354 * Added quaternion `xyz()` method for returning the vector part of the
356 * Added `From((Scalar, Vector3))` for 4D vector types.
378 ### Added subsection
380 * Added `serde` support for `Affine2`, `DAffine2`, `Affine3A` and `DAffine3`.
395 ### Added subsection
397 * Added `col_mut()` method which returns a mutable reference to a matrix column
399 * Added `AddAssign`, `MulAssign` and `SubAssign` implementations for all matrix
401 * Added `Add` and `Sub` implementations of scalar values for vector types.
402 * Added more `glam_assert!` checks and documented methods where they are used.
403 * Added vector projection and rejection methods `project_onto()`,
405 * Added `Mat2::from_mat3()`, `DMat2::from_mat3()`, `Mat3::from_mat4()`,
408 * Added `Mat3::from_mat2()`, `DMat3::from_mat2()`, `Mat4::from_mat3()` and
428 * Added `must_use` attribute to all `inverse()`, `normalize()`,
431 ### Added subsection
433 * Added `fract()` method to float vector types which return a vector containing
435 * Added optional support for the `approx` crate. Note that all glam types
441 ### Added subsection
443 * Added `from_cols()` methods to affine types.
444 * Added methods for reading and writing affine types from and to arrays and
448 * Added `core::fmt::Display` trait implementations for affine types.
449 * Added `core::ops::Add`, `core::ops::Mul` scalar and `core::ops::Sub` trait
451 * Added `from_array()` methods to quaternion types.
478 ### Added subsection
480 * Added `EulerRot` enum for specifying Euler rotation order and
483 * Added `Quat::to_euler()` method for extracting Euler angles.
484 * Added `Quat::from_vec4()` which is an explicit method for creating a
487 * Added `Mat3A` type which uses `Vec3A` columns. It is 16 byte aligned and
490 * Added 3D affine transform types `Affine3A` and `DAffine3`. These are more
493 * Added 2D affine transform types `Affine2` and `DAffine2`. These are more
496 * Added `Quat::from_affine3()` to create a quaternion from an affine transform
498 * Added explicit `to_array()` method to vector types to better match the matrix
519 ### Added subsection
521 * Added `AXES[]` constants to all vector types. These are arrays containing the
523 * Added quaternion `from_scaled_axis` and `to_scaled_axis` methods.
532 ### Added subsection
534 * Added vector `clamp()` functions.
535 * Added matrix column and row accessor methods, `col()` and `row()`.
536 * Added SPIR-V module and dependency on `spirv-std` for the SPIR-V target.
537 * Added matrix truncation from 4x4 to 3x3 and 3x3 to 2x2 via `From` impls.
560 ### Added subsection
562 * Added `Vec2::X`, `Vec4::W` etc constants as a shorter versions of `unit_x()`
564 * Added `ONE` constants for vectors.
565 * Added `IDENTITY` constants for `Mat2`, `Mat3`, `Mat4` and `Quat`.
566 * Added `ZERO` constant for vectors and matrices.
567 * Added `clamp_length()`, `clamp_length_max()`, and `clamp_length_min` methods
569 * Added `try_normalize()` and `normalize_or_zero()` for all real vector types.
570 * Added `from_diagonal()` methods to all matrix types for creating diagonal
572 * Added `angle_between()`, `from_rotation_arc()` and
574 * Added quaternion `inverse()` which assumes the quaternion is already
576 * Added `from_translation()` and `from_angle()` methods to 3x3 matrix types.
577 * Added `project_point3()` method to 4x4 matrix types. This method is for
579 * Added `Eq` and `Hash` impls for integer vector types.
594 ### Added subsection
596 * Added `f64` primitive type support
600 * Added `i32` primitive type support
602 * Added `u32` primitive type support
604 * Added `bool` primitive type support
617 ### Added subsection
619 * Added `From<(Vec2, f32)>` for `Vec3` and `From<(Vec3, f32)` for `Vec4`.
629 ### Added subsection
631 * Added support for the [Rust GPU](https://github.com/EmbarkStudios/rust-gpu)
636 ### Added subsection
638 * Added `is_finite` method to all types which returns `true` if, and only if,
640 * Added `exp` and `powf` methods for all vector types.
666 ### Added subsection
668 * Added the `Vec2::perp` method which returns a `Vec2` perpendicular to `self`.
695 ### Added subsection
697 * Added `From` implementations to truncate to narrower vector types, e.g.
699 * Added swizzles for `Vec4`, `Vec3A`, `Vec3` and `Vec2`. These can be used to
702 * Added `Quat` operators `Add<Quat>`, `Sub<Quat>`, `Mul<f32>` and `Div<f32`.
706 * Added `Mat4::transform_point3a` and `Mat4::transform_vector3a`.
707 * Added `AsRef<[f32; 9]>` and `AsMut<[f32; 9]>` trait implementations to `Mat3`.
708 * Added optional `bytemuck` support primarily for casting types to `&[u8]`.
709 * Added support for compiling with `no_std` by disabling the default `std`
711 * Added `distance` and `distance_squared` methods to `Vec2`, `Vec3`, `Vec3A`
716 ### Added subsection
723 * Added `is_nan` methods to `Vec2`, `Vec3`, `Vec3A` and `Vec4` which return a
734 * Added SSE2 optimized implementations of `Mat4::determinant` and
752 ### Added subsection
754 * Added `Mat4::perspective_rh`.
758 ### Added subsection
760 * Added `Mat3::mul_vec3a` and `Quat::mul_vec3a`.
768 ### Added subsection
770 * Added `Mat3 * Vec3A` implementation.
771 * Added `Vec3A` benches.
779 ### Added subsection
785 * Added `mut` column accessors to all matrix types, e.g. `Mat2::x_axis_mut()`.
786 * Added `From` trait implementations for `Vec3AMask` and `Vec4Mask` to `__m128`.
799 ### Added subsection
801 * Added `Quat::slerp` - note that this uses a `sin` approximation.
802 * Added `angle_between` method for `Vec2` and `Vec3`.
805 * Added conversion functions from `Vec2Mask`, `Vec3Mask` and `Vec4Mask` to an
807 * Added `build.rs` to simplify conditional feature compilation.
819 ### Added subsection
821 * Added the `packed-vec3` feature flag to disable using SIMD types for `Vec3`
824 * Added `x_mut`, `y_mut`, `z_mut`, `w_mut` where appropriate to `Vec2`, `Vec3`
826 * Added implementation of `core::ops::Index` and `core::ops::IndexMut` for
836 ### Added subsection
838 * Added projection functions `Mat4::perspective_lh`,
841 * Added `round`, `ceil` and `floor` methods to `Vec2`, `Vec3` and `Vec4`.
845 ### Added subsection
847 * Added `Mat4::to_scale_rotation_translation` for extracting scale, rotation and
849 * Added `cargo-deny` GitHub Action.
857 ### Added subsection
859 * Added `Mat4::orthographic_rh_gl`.
870 * Added missing `#[repr(C)]` to `Mat2`, `Mat3` and `Mat4`.
893 ### Added subsection
895 * Added `Display` trait implementations for `Mat2`, `Mat3` and `Mat4`.
936 ### Added subsection
938 * Added support for building infinite projection matrices, including both
941 * Added `Vec2Mask::new`, `Vec3Mask::new` and `Vec4Mask::new` methods.
944 * Added method documentation for `Vec4` and `Vec4Mask` types.
945 * Added missing `serde` implementations for `Mat2`, `Mat3` and `Mat4`.
956 ### Added subsection
958 * Added the `glam_assert` macro which behaves like Rust's `debug_assert` but
961 * Added `is_normalized` method to `Vec2`, `Vec3` and `Vec4`.
972 * Added `Default` support to `VecNMask` types, will add more common traits in
974 * Added `#[inline]` to `mat2`, `mat3` and `mat4` functions.
978 ### Added subsection
980 * Added `Mat2` into `[f32; 4]`, `Mat3` into `[f32; 9]` and `Mat4` into