diff --git a/cidre/src/mtl.rs b/cidre/src/mtl.rs index d760a097..f5517600 100644 --- a/cidre/src/mtl.rs +++ b/cidre/src/mtl.rs @@ -18,6 +18,7 @@ pub use acceleration_structure::AccelerationStruct; pub use acceleration_structure::Desc as AccelerationStructDesc; pub use acceleration_structure::GeometryDesc as AccelerationStructGeometryDesc; pub use acceleration_structure::InstanceOpts as AccelerationStructInstanceOpts; +pub use acceleration_structure::MatrixLayout; pub use acceleration_structure::MotionBorderMode; pub use acceleration_structure::MotionBoundingBoxGeometryDesc; pub use acceleration_structure::Usage as AccelerationStructUsage; diff --git a/cidre/src/mtl/acceleration_structure.rs b/cidre/src/mtl/acceleration_structure.rs index 83acf17e..161b8e51 100644 --- a/cidre/src/mtl/acceleration_structure.rs +++ b/cidre/src/mtl/acceleration_structure.rs @@ -38,6 +38,19 @@ pub enum InstanceOpts { NonOpaque = (1 << 3), } +#[derive(Copy, Clone, Eq, PartialEq)] +#[doc(alias = "MTLMatrixLayout")] +#[repr(isize)] +pub enum MatrixLayout { + /// Column-major order + #[doc(alias = "MTLMatrixLayoutColumnMajor")] + ColumnMajor = 0, + + /// Row-major order + #[doc(alias = "MTLMatrixLayoutRowMajor")] + RowMajor, +} + define_obj_type!(pub Desc(ns::Id)); impl Desc {