1 #[cfg(not(feature = "scalar-math"))] 2 #[cfg_attr(target_arch = "spirv", repr(simd))] 3 #[cfg_attr(not(target_arch = "spirv"), repr(C))] 4 pub struct Vec3<T> { 5 pub x: T, 6 pub y: T, 7 pub z: T, 8 } 9 10 #[cfg(not(feature = "scalar-math"))] 11 #[cfg_attr(target_arch = "spirv", repr(simd))] 12 #[cfg_attr(not(target_arch = "spirv"), repr(C))] 13 pub struct Vec4<T> { 14 pub x: T, 15 pub y: T, 16 pub z: T, 17 pub w: T, 18 } 19 20 #[cfg(not(feature = "scalar-math"))] 21 #[cfg_attr(not(target_arch = "spirv"), repr(C))] 22 pub struct Cols2<V> { 23 pub x_axis: V, 24 pub y_axis: V, 25 } 26 27 #[cfg_attr(not(target_arch = "spirv"), repr(C))] 28 pub struct Cols3<V> { 29 pub x_axis: V, 30 pub y_axis: V, 31 pub z_axis: V, 32 } 33 34 #[cfg_attr(not(target_arch = "spirv"), repr(C))] 35 pub struct Cols4<V> { 36 pub x_axis: V, 37 pub y_axis: V, 38 pub z_axis: V, 39 pub w_axis: V, 40 } 41