diff --git a/ash/src/device.rs b/ash/src/device.rs index bfe64b7..04002a1 100644 --- a/ash/src/device.rs +++ b/ash/src/device.rs @@ -495,6 +495,23 @@ pub trait DeviceV1_0 { ); } + unsafe fn cmd_draw_indexed_indirect( + &self, + command_buffer: vk::CommandBuffer, + buffer: vk::Buffer, + offset: vk::DeviceSize, + draw_count: vk::uint32_t, + stride: vk::uint32_t, + ) { + self.fp_v1_0().cmd_draw_indexed_indirect( + command_buffer, + buffer, + offset, + draw_count, + stride, + ); + } + unsafe fn cmd_execute_commands( &self, primary_command_buffer: vk::CommandBuffer, @@ -542,6 +559,17 @@ pub trait DeviceV1_0 { ); } + unsafe fn cmd_next_subpass( + &self, + command_buffer: vk::CommandBuffer, + contents: vk::SubpassContents, + ) { + self.fp_v1_0().cmd_next_subpass( + command_buffer, + contents, + ); + } + unsafe fn cmd_bind_pipeline( &self, command_buffer: vk::CommandBuffer, @@ -602,6 +630,23 @@ pub trait DeviceV1_0 { ); } + unsafe fn cmd_draw_indirect( + &self, + command_buffer: vk::CommandBuffer, + buffer: vk::Buffer, + offset: vk::DeviceSize, + draw_count: vk::uint32_t, + stride: vk::uint32_t, + ) { + self.fp_v1_0().cmd_draw_indirect( + command_buffer, + buffer, + offset, + draw_count, + stride, + ); + } + unsafe fn cmd_dispatch( &self, command_buffer: vk::CommandBuffer, @@ -617,6 +662,19 @@ pub trait DeviceV1_0 { ); } + unsafe fn cmd_dispatch_indirect( + &self, + command_buffer: vk::CommandBuffer, + buffer: vk::Buffer, + offset: vk::DeviceSize, + ) { + self.fp_v1_0().cmd_dispatch_indirect( + command_buffer, + buffer, + offset, + ); + } + unsafe fn cmd_set_viewport( &self, command_buffer: vk::CommandBuffer, @@ -630,6 +688,30 @@ pub trait DeviceV1_0 { ); } + unsafe fn cmd_set_blend_constants( + &self, + command_buffer: vk::CommandBuffer, + blend_constants: [f32; 4], + ) { + self.fp_v1_0().cmd_set_blend_constants( + command_buffer, + &blend_constants, + ); + } + + unsafe fn cmd_set_stencil_reference( + &self, + command_buffer: vk::CommandBuffer, + face_mask: vk::StencilFaceFlags, + reference: u32, + ) { + self.fp_v1_0().cmd_set_stencil_reference( + command_buffer, + face_mask, + reference, + ); + } + unsafe fn create_semaphore( &self, create_info: &vk::SemaphoreCreateInfo, diff --git a/ash/src/vk.rs b/ash/src/vk.rs index 18edd5f..7ba892e 100644 --- a/ash/src/vk.rs +++ b/ash/src/vk.rs @@ -451,7 +451,7 @@ pub mod types { pub max_resource_size: DeviceSize, } - #[derive(Debug, Clone, Hash)] + #[derive(Debug, Clone, PartialEq, Eq, Hash)] #[repr(C)] pub struct Extent3D { pub width: uint32_t,