[][src]Trait vulkanalia::vk::NvRayTracingExtension

pub trait NvRayTracingExtension: DeviceV1_0 {
    fn bind_acceleration_structure_memory_nv(
        &self,
        bind_infos: &[impl Cast<Target = BindAccelerationStructureMemoryInfoKHR>]
    ) -> VkResult<()> { ... }
fn cmd_build_acceleration_structure_nv(
        &self,
        command_buffer: CommandBuffer,
        info: &AccelerationStructureInfoNV,
        instance_data: Buffer,
        instance_offset: DeviceSize,
        update: bool,
        dst: AccelerationStructureKHR,
        src: AccelerationStructureKHR,
        scratch: Buffer,
        scratch_offset: DeviceSize
    ) { ... }
fn cmd_copy_acceleration_structure_nv(
        &self,
        command_buffer: CommandBuffer,
        dst: AccelerationStructureKHR,
        src: AccelerationStructureKHR,
        mode: CopyAccelerationStructureModeKHR
    ) { ... }
fn cmd_trace_rays_nv(
        &self,
        command_buffer: CommandBuffer,
        raygen_shader_binding_table_buffer: Buffer,
        raygen_shader_binding_offset: DeviceSize,
        miss_shader_binding_table_buffer: Buffer,
        miss_shader_binding_offset: DeviceSize,
        miss_shader_binding_stride: DeviceSize,
        hit_shader_binding_table_buffer: Buffer,
        hit_shader_binding_offset: DeviceSize,
        hit_shader_binding_stride: DeviceSize,
        callable_shader_binding_table_buffer: Buffer,
        callable_shader_binding_offset: DeviceSize,
        callable_shader_binding_stride: DeviceSize,
        width: u32,
        height: u32,
        depth: u32
    ) { ... }
fn cmd_write_acceleration_structures_properties_nv(
        &self,
        command_buffer: CommandBuffer,
        acceleration_structures: &[AccelerationStructureKHR],
        query_type: QueryType,
        query_pool: QueryPool,
        first_query: u32
    ) { ... }
fn compile_deferred_nv(
        &self,
        pipeline: Pipeline,
        shader: u32
    ) -> VkResult<()> { ... }
fn create_acceleration_structure_nv(
        &self,
        create_info: &AccelerationStructureCreateInfoNV,
        allocator: Option<&AllocationCallbacks>
    ) -> VkResult<AccelerationStructureNV> { ... }
fn create_ray_tracing_pipelines_nv(
        &self,
        pipeline_cache: PipelineCache,
        create_infos: &[impl Cast<Target = RayTracingPipelineCreateInfoNV>],
        allocator: Option<&AllocationCallbacks>
    ) -> VkSuccessResult<Pipeline> { ... }
fn destroy_acceleration_structure_nv(
        &self,
        acceleration_structure: AccelerationStructureKHR,
        allocator: Option<&AllocationCallbacks>
    ) { ... }
fn get_acceleration_structure_handle_nv(
        &self,
        acceleration_structure: AccelerationStructureKHR,
        data: &mut [u8]
    ) -> VkResult<()> { ... }
fn get_acceleration_structure_memory_requirements_nv(
        &self,
        info: &AccelerationStructureMemoryRequirementsInfoNV
    ) -> MemoryRequirements2KHR { ... }
fn get_ray_tracing_shader_group_handles_nv(
        &self,
        pipeline: Pipeline,
        first_group: u32,
        group_count: u32,
        data: &mut [u8]
    ) -> VkResult<()> { ... } }

Provided methods

fn bind_acceleration_structure_memory_nv(
    &self,
    bind_infos: &[impl Cast<Target = BindAccelerationStructureMemoryInfoKHR>]
) -> VkResult<()>

fn cmd_build_acceleration_structure_nv(
    &self,
    command_buffer: CommandBuffer,
    info: &AccelerationStructureInfoNV,
    instance_data: Buffer,
    instance_offset: DeviceSize,
    update: bool,
    dst: AccelerationStructureKHR,
    src: AccelerationStructureKHR,
    scratch: Buffer,
    scratch_offset: DeviceSize
)

fn cmd_copy_acceleration_structure_nv(
    &self,
    command_buffer: CommandBuffer,
    dst: AccelerationStructureKHR,
    src: AccelerationStructureKHR,
    mode: CopyAccelerationStructureModeKHR
)

fn cmd_trace_rays_nv(
    &self,
    command_buffer: CommandBuffer,
    raygen_shader_binding_table_buffer: Buffer,
    raygen_shader_binding_offset: DeviceSize,
    miss_shader_binding_table_buffer: Buffer,
    miss_shader_binding_offset: DeviceSize,
    miss_shader_binding_stride: DeviceSize,
    hit_shader_binding_table_buffer: Buffer,
    hit_shader_binding_offset: DeviceSize,
    hit_shader_binding_stride: DeviceSize,
    callable_shader_binding_table_buffer: Buffer,
    callable_shader_binding_offset: DeviceSize,
    callable_shader_binding_stride: DeviceSize,
    width: u32,
    height: u32,
    depth: u32
)

fn cmd_write_acceleration_structures_properties_nv(
    &self,
    command_buffer: CommandBuffer,
    acceleration_structures: &[AccelerationStructureKHR],
    query_type: QueryType,
    query_pool: QueryPool,
    first_query: u32
)

fn compile_deferred_nv(&self, pipeline: Pipeline, shader: u32) -> VkResult<()>

fn create_acceleration_structure_nv(
    &self,
    create_info: &AccelerationStructureCreateInfoNV,
    allocator: Option<&AllocationCallbacks>
) -> VkResult<AccelerationStructureNV>

fn create_ray_tracing_pipelines_nv(
    &self,
    pipeline_cache: PipelineCache,
    create_infos: &[impl Cast<Target = RayTracingPipelineCreateInfoNV>],
    allocator: Option<&AllocationCallbacks>
) -> VkSuccessResult<Pipeline>

fn destroy_acceleration_structure_nv(
    &self,
    acceleration_structure: AccelerationStructureKHR,
    allocator: Option<&AllocationCallbacks>
)

fn get_acceleration_structure_handle_nv(
    &self,
    acceleration_structure: AccelerationStructureKHR,
    data: &mut [u8]
) -> VkResult<()>

fn get_acceleration_structure_memory_requirements_nv(
    &self,
    info: &AccelerationStructureMemoryRequirementsInfoNV
) -> MemoryRequirements2KHR

fn get_ray_tracing_shader_group_handles_nv(
    &self,
    pipeline: Pipeline,
    first_group: u32,
    group_count: u32,
    data: &mut [u8]
) -> VkResult<()>

Loading content...

Implementors

impl NvRayTracingExtension for Device[src]

Loading content...