@@ -13,6 +13,7 @@ pub type DeviceAddress = u64;
1313/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDrawIndirectCommand.html> 
1414#[ repr( C ) ]  
1515#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
16+ #[ cfg_attr( feature = "bytemuck" ,  derive( bytemuck:: Zeroable ,  bytemuck:: Pod ) ) ]  
1617pub  struct  DrawIndirectCommand  { 
1718    /// vertexCount is the number of vertices to draw. 
1819     pub  vertex_count :  u32 , 
@@ -29,6 +30,7 @@ pub struct DrawIndirectCommand {
2930/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDrawIndexedIndirectCommand.html> 
3031#[ repr( C ) ]  
3132#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
33+ #[ cfg_attr( feature = "bytemuck" ,  derive( bytemuck:: Zeroable ,  bytemuck:: Pod ) ) ]  
3234pub  struct  DrawIndexedIndirectCommand  { 
3335    /// indexCount is the number of vertices to draw. 
3436     pub  index_count :  u32 , 
@@ -47,6 +49,7 @@ pub struct DrawIndexedIndirectCommand {
4749/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDispatchIndirectCommand.html> 
4850#[ repr( C ) ]  
4951#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
52+ #[ cfg_attr( feature = "bytemuck" ,  derive( bytemuck:: Zeroable ,  bytemuck:: Pod ) ) ]  
5053pub  struct  DispatchIndirectCommand  { 
5154    /// x is the number of local workgroups to dispatch in the X dimension. 
5255     pub  x :  u32 , 
@@ -81,6 +84,7 @@ impl From<DispatchIndirectCommand> for UVec3 {
8184/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDrawMeshTasksIndirectCommandEXT.html> 
8285#[ repr( C ) ]  
8386#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
87+ #[ cfg_attr( feature = "bytemuck" ,  derive( bytemuck:: Zeroable ,  bytemuck:: Pod ) ) ]  
8488pub  struct  DrawMeshTasksIndirectCommandEXT  { 
8589    /// groupCountX is the number of local workgroups to dispatch in the X dimension. 
8690     pub  group_count_x :  u32 , 
@@ -115,6 +119,7 @@ impl From<DrawMeshTasksIndirectCommandEXT> for UVec3 {
115119/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkTraceRaysIndirectCommandKHR.html> 
116120#[ repr( C ) ]  
117121#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
122+ #[ cfg_attr( feature = "bytemuck" ,  derive( bytemuck:: Zeroable ,  bytemuck:: Pod ) ) ]  
118123pub  struct  TraceRaysIndirectCommandKHR  { 
119124    /// width is the width of the ray trace query dimensions. 
120125     pub  width :  u32 , 
@@ -149,7 +154,7 @@ impl From<TraceRaysIndirectCommandKHR> for UVec3 {
149154/// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkTraceRaysIndirectCommand2KHR.html> 
150155#[ repr( C ) ]  
151156#[ derive( Copy ,  Clone ,  Debug ,  Default ) ]  
152- #[ must_use ]  
157+ #[ cfg_attr ( feature =  "bytemuck" ,  derive ( bytemuck :: AnyBitPattern ) ) ]  
153158pub  struct  TraceRaysIndirectCommand2KHR  { 
154159    /// raygenShaderRecordAddress is a `VkDeviceAddress` of the ray generation shader binding table record used by this command. 
155160     pub  raygen_shader_record_address :  DeviceAddress , 
0 commit comments