glam v0.15.0 Release Notes
Release Date: 2021-05-14 // almost 3 years ago-
๐ฅ Breaking changes
- โ Removed
PartialOrd
andOrd
trait implementations for allglam
types. - Removed deprecated
zero()
,one()
,unit_x()
,unit_y()
,unit_z()
,unit_w()
,identity()
andMat2::scale()
methods. - โ Remove problematic
Quat
From
trait conversions which would allow creating a non-uniform quaternion without necessarily realising, including fromVec4
,(x, y, z, w)
and[f32; 4]
.
โ Added
- โ Added
EulerRot
enum for specifying Euler rotation order andQuat::from_euler()
,Mat3::from_euler()
andMat4::from_euler()
which support specifying a rotation order and angles of rotation. - โ Added
Quat::to_euler()
method for extracting Euler angles. - โ Added
Quat::from_vec4()
which is an explicit method for creating a quaternion from a 4D vector. The method does not normalize the resulting quaternion. - โ Added
Mat3A
type which usesVec3A
columns. It is 16 byte aligned and contains internal padding but it generally faster thanMat3
for most operations if SIMD is available. - โ Added 3D affine transform types
Affine3A
andDAffine3
. These are more efficient than usingMat4
andDMat4
respectively when working with 3D affine transforms. - โ Added 2D affine transform types
Affine2
andDAffine2
. These are more efficient than usingMat3
andDMat3
respectively when working with 2D affine transforms. - โ Added
Quat::from_affine3()
to create a quaternion from an affine transform rotation. - โ Added explicit
to_array()
method to vector types to better match the matrix methods.
๐ Changed
- Deprecated
Quat::from_rotation_ypr()
,Mat3::from_rotation_ypr()
andMat4::from_rotation_ypr()
in favor of newfrom_euler()
methods. - Deprecated
Quat::from_rotation_mat3()
andQuat::from_rotation_mat4()
in favor of newfrom_mat3
andfrom_mat4
methods. - ๐ Deprecated
TransformSRT
andTransformRT
which are under thetransform-types
feature. These will be moved to a separate experimental crate. - โก๏ธ Updated
spirv-std
dependency version to0.4.0-alpha7
.
- โ Removed