Vulkan.jl API

Vulkan.VulkanModule

Vulkan

tests

Vulkan.jl is a lightweight wrapper around the Vulkan graphics and compute library. It exposes abstractions over the underlying C interface, primarily geared towards developers looking for a more natural way to work with Vulkan with minimal overhead.

It builds upon the core API provided by VulkanCore.jl. Because Vulkan is originally a C specification, interfacing with it requires some knowledge before correctly being used from Julia. This package acts as an abstraction layer, so that you don't need to know how to properly call a C library, while still retaining full functionality. The wrapper is generated directly from the Vulkan Specification.

This is a very similar approach to that taken by VulkanHpp, except that the target language is Julia and not C++.

If you have questions, want to brainstorm ideas or simply want to share cool things you do with Vulkan don't hesitate to create a thread in our Zulip channel.

Status

This package is a work in progress and has not reached its 1.0 version yet. As such, documentation may not be complete and functionality may change without warning. If it happens, make sure to check out the changelog. At this stage, you should not use this library in production; however, you are encouraged to push its boundaries through non-critical projects. If you find limitations, bugs or want to suggest potential improvements, do not hesitate to submit issues or pull requests. The goal is definitely to be production-ready as soon as possible.

In particular, because the library relies on automatic code generation, there may be portions of the Vulkan API that are not wrapped correctly. While you should not have trouble in most cases, there are always edge cases which were not accounted for during generation. Please open an issue whenever you encounter such a case, so that we can reliably fix those wrapping issues for future use.

Testing

Currently, continuous integration runs only on Ubuntu 32/64 bits with Julia 1.6, for lack of a functional CI setup with Vulkan for MacOS and Windows. Because public CI services lack proper driver support, the CPU Vulkan implementation SwiftShader is used. If you are not on Linux, we cannot guarantee that this library will work for you, although so far nothing is platform-dependent. Therefore, it is recommended that you test this package with your own setup.

Depends on:

  • Base
  • Core
  • DocStringExtensions
  • Logging
  • MLStyle
  • Reexport
  • SnoopPrecompile
  • Vulkan.CEnum
  • VulkanCore.LibVulkan
source
Vulkan.AabbPositionsKHRType

High-level wrapper for VkAabbPositionsKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AabbPositionsKHR <: Vulkan.HighLevelStruct
  • min_x::Float32

  • min_y::Float32

  • min_z::Float32

  • max_x::Float32

  • max_y::Float32

  • max_z::Float32

source
Vulkan.AccelerationStructureBuildGeometryInfoKHRType

High-level wrapper for VkAccelerationStructureBuildGeometryInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureBuildGeometryInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • type::AccelerationStructureTypeKHR

  • flags::BuildAccelerationStructureFlagKHR

  • mode::BuildAccelerationStructureModeKHR

  • src_acceleration_structure::Union{Ptr{Nothing}, AccelerationStructureKHR}

  • dst_acceleration_structure::Union{Ptr{Nothing}, AccelerationStructureKHR}

  • geometries::Union{Ptr{Nothing}, Vector{AccelerationStructureGeometryKHR}}

  • geometries_2::Union{Ptr{Nothing}, Vector{AccelerationStructureGeometryKHR}}

  • scratch_data::DeviceOrHostAddressKHR

source
Vulkan.AccelerationStructureBuildGeometryInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • type::AccelerationStructureTypeKHR
  • mode::BuildAccelerationStructureModeKHR
  • scratch_data::DeviceOrHostAddressKHR
  • next::Any: defaults to C_NULL
  • flags::BuildAccelerationStructureFlagKHR: defaults to 0
  • src_acceleration_structure::AccelerationStructureKHR: defaults to C_NULL
  • dst_acceleration_structure::AccelerationStructureKHR: defaults to C_NULL
  • geometries::Vector{AccelerationStructureGeometryKHR}: defaults to C_NULL
  • geometries_2::Vector{AccelerationStructureGeometryKHR}: defaults to C_NULL

API documentation

AccelerationStructureBuildGeometryInfoKHR(
    type::AccelerationStructureTypeKHR,
    mode::BuildAccelerationStructureModeKHR,
    scratch_data::DeviceOrHostAddressKHR;
    next,
    flags,
    src_acceleration_structure,
    dst_acceleration_structure,
    geometries,
    geometries_2
) -> AccelerationStructureBuildGeometryInfoKHR
source
Vulkan.AccelerationStructureBuildRangeInfoKHRType

High-level wrapper for VkAccelerationStructureBuildRangeInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureBuildRangeInfoKHR <: Vulkan.HighLevelStruct
  • primitive_count::UInt32

  • primitive_offset::UInt32

  • first_vertex::UInt32

  • transform_offset::UInt32

source
Vulkan.AccelerationStructureBuildSizesInfoKHRType

High-level wrapper for VkAccelerationStructureBuildSizesInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureBuildSizesInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • acceleration_structure_size::UInt64

  • update_scratch_size::UInt64

  • build_scratch_size::UInt64

source
Vulkan.AccelerationStructureBuildSizesInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • acceleration_structure_size::UInt64
  • update_scratch_size::UInt64
  • build_scratch_size::UInt64
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureBuildSizesInfoKHR(
    acceleration_structure_size::Integer,
    update_scratch_size::Integer,
    build_scratch_size::Integer;
    next
) -> AccelerationStructureBuildSizesInfoKHR
source
Vulkan.AccelerationStructureCreateInfoKHRType

High-level wrapper for VkAccelerationStructureCreateInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureCreateInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • create_flags::AccelerationStructureCreateFlagKHR

  • buffer::Buffer

  • offset::UInt64

  • size::UInt64

  • type::AccelerationStructureTypeKHR

  • device_address::UInt64

source
Vulkan.AccelerationStructureCreateInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • buffer::Buffer
  • offset::UInt64
  • size::UInt64
  • type::AccelerationStructureTypeKHR
  • next::Any: defaults to C_NULL
  • create_flags::AccelerationStructureCreateFlagKHR: defaults to 0
  • device_address::UInt64: defaults to 0

API documentation

AccelerationStructureCreateInfoKHR(
    buffer::Buffer,
    offset::Integer,
    size::Integer,
    type::AccelerationStructureTypeKHR;
    next,
    create_flags,
    device_address
) -> AccelerationStructureCreateInfoKHR
source
Vulkan.AccelerationStructureCreateInfoNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • compacted_size::UInt64
  • info::AccelerationStructureInfoNV
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureCreateInfoNV(
    compacted_size::Integer,
    info::AccelerationStructureInfoNV;
    next
) -> AccelerationStructureCreateInfoNV
source
Vulkan.AccelerationStructureGeometryAabbsDataKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • data::DeviceOrHostAddressConstKHR
  • stride::UInt64
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureGeometryAabbsDataKHR(
    data::DeviceOrHostAddressConstKHR,
    stride::Integer;
    next
) -> AccelerationStructureGeometryAabbsDataKHR
source
Vulkan.AccelerationStructureGeometryInstancesDataKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • array_of_pointers::Bool
  • data::DeviceOrHostAddressConstKHR
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureGeometryInstancesDataKHR(
    array_of_pointers::Bool,
    data::DeviceOrHostAddressConstKHR;
    next
) -> AccelerationStructureGeometryInstancesDataKHR
source
Vulkan.AccelerationStructureGeometryKHRType

High-level wrapper for VkAccelerationStructureGeometryKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureGeometryKHR <: Vulkan.HighLevelStruct
  • next::Any

  • geometry_type::GeometryTypeKHR

  • geometry::AccelerationStructureGeometryDataKHR

  • flags::GeometryFlagKHR

source
Vulkan.AccelerationStructureGeometryKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • geometry_type::GeometryTypeKHR
  • geometry::AccelerationStructureGeometryDataKHR
  • next::Any: defaults to C_NULL
  • flags::GeometryFlagKHR: defaults to 0

API documentation

AccelerationStructureGeometryKHR(
    geometry_type::GeometryTypeKHR,
    geometry::AccelerationStructureGeometryDataKHR;
    next,
    flags
) -> AccelerationStructureGeometryKHR
source
Vulkan.AccelerationStructureGeometryTrianglesDataKHRType

High-level wrapper for VkAccelerationStructureGeometryTrianglesDataKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureGeometryTrianglesDataKHR <: Vulkan.HighLevelStruct
  • next::Any

  • vertex_format::Format

  • vertex_data::DeviceOrHostAddressConstKHR

  • vertex_stride::UInt64

  • max_vertex::UInt32

  • index_type::IndexType

  • index_data::DeviceOrHostAddressConstKHR

  • transform_data::DeviceOrHostAddressConstKHR

source
Vulkan.AccelerationStructureGeometryTrianglesDataKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • vertex_format::Format
  • vertex_data::DeviceOrHostAddressConstKHR
  • vertex_stride::UInt64
  • max_vertex::UInt32
  • index_type::IndexType
  • index_data::DeviceOrHostAddressConstKHR
  • transform_data::DeviceOrHostAddressConstKHR
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureGeometryTrianglesDataKHR(
    vertex_format::Format,
    vertex_data::DeviceOrHostAddressConstKHR,
    vertex_stride::Integer,
    max_vertex::Integer,
    index_type::IndexType,
    index_data::DeviceOrHostAddressConstKHR,
    transform_data::DeviceOrHostAddressConstKHR;
    next
) -> AccelerationStructureGeometryTrianglesDataKHR
source
Vulkan.AccelerationStructureInfoNVType

High-level wrapper for VkAccelerationStructureInfoNV.

Extension: VK_NV_ray_tracing

API documentation

struct AccelerationStructureInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • type::VulkanCore.LibVulkan.VkAccelerationStructureTypeKHR

  • flags::Union{Ptr{Nothing}, UInt32}

  • instance_count::UInt32

  • geometries::Vector{GeometryNV}

source
Vulkan.AccelerationStructureInfoNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • type::VkAccelerationStructureTypeNV
  • geometries::Vector{GeometryNV}
  • next::Any: defaults to C_NULL
  • flags::VkBuildAccelerationStructureFlagsNV: defaults to C_NULL
  • instance_count::UInt32: defaults to 0

API documentation

AccelerationStructureInfoNV(
    type::VulkanCore.LibVulkan.VkAccelerationStructureTypeKHR,
    geometries::AbstractArray;
    next,
    flags,
    instance_count
) -> AccelerationStructureInfoNV
source
Vulkan.AccelerationStructureInstanceKHRType

High-level wrapper for VkAccelerationStructureInstanceKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct AccelerationStructureInstanceKHR <: Vulkan.HighLevelStruct
  • transform::TransformMatrixKHR

  • instance_custom_index::UInt32

  • mask::UInt32

  • instance_shader_binding_table_record_offset::UInt32

  • flags::GeometryInstanceFlagKHR

  • acceleration_structure_reference::UInt64

source
Vulkan.AccelerationStructureInstanceKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • transform::TransformMatrixKHR
  • instance_custom_index::UInt32
  • mask::UInt32
  • instance_shader_binding_table_record_offset::UInt32
  • acceleration_structure_reference::UInt64
  • flags::GeometryInstanceFlagKHR: defaults to 0

API documentation

AccelerationStructureInstanceKHR(
    transform::TransformMatrixKHR,
    instance_custom_index::Integer,
    mask::Integer,
    instance_shader_binding_table_record_offset::Integer,
    acceleration_structure_reference::Integer;
    flags
) -> AccelerationStructureInstanceKHR
source
Vulkan.AccelerationStructureKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • device::Device
  • buffer::Buffer
  • offset::UInt64
  • size::UInt64
  • type::AccelerationStructureTypeKHR
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • create_flags::AccelerationStructureCreateFlagKHR: defaults to 0
  • device_address::UInt64: defaults to 0

API documentation

AccelerationStructureKHR(
    device,
    buffer,
    offset::Integer,
    size::Integer,
    type::AccelerationStructureTypeKHR;
    allocator,
    next,
    create_flags,
    device_address
) -> AccelerationStructureKHR
source
Vulkan.AccelerationStructureMatrixMotionInstanceNVType

High-level wrapper for VkAccelerationStructureMatrixMotionInstanceNV.

Extension: VK_NV_ray_tracing_motion_blur

API documentation

struct AccelerationStructureMatrixMotionInstanceNV <: Vulkan.HighLevelStruct
  • transform_t_0::TransformMatrixKHR

  • transform_t_1::TransformMatrixKHR

  • instance_custom_index::UInt32

  • mask::UInt32

  • instance_shader_binding_table_record_offset::UInt32

  • flags::GeometryInstanceFlagKHR

  • acceleration_structure_reference::UInt64

source
Vulkan.AccelerationStructureMatrixMotionInstanceNVMethod

Extension: VK_NV_ray_tracing_motion_blur

Arguments:

  • transform_t_0::TransformMatrixKHR
  • transform_t_1::TransformMatrixKHR
  • instance_custom_index::UInt32
  • mask::UInt32
  • instance_shader_binding_table_record_offset::UInt32
  • acceleration_structure_reference::UInt64
  • flags::GeometryInstanceFlagKHR: defaults to 0

API documentation

AccelerationStructureMatrixMotionInstanceNV(
    transform_t_0::TransformMatrixKHR,
    transform_t_1::TransformMatrixKHR,
    instance_custom_index::Integer,
    mask::Integer,
    instance_shader_binding_table_record_offset::Integer,
    acceleration_structure_reference::Integer;
    flags
) -> AccelerationStructureMatrixMotionInstanceNV
source
Vulkan.AccelerationStructureMemoryRequirementsInfoNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • type::AccelerationStructureMemoryRequirementsTypeNV
  • acceleration_structure::AccelerationStructureNV
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureMemoryRequirementsInfoNV(
    type::AccelerationStructureMemoryRequirementsTypeNV,
    acceleration_structure::AccelerationStructureNV;
    next
) -> AccelerationStructureMemoryRequirementsInfoNV
source
Vulkan.AccelerationStructureMotionInstanceNVType

High-level wrapper for VkAccelerationStructureMotionInstanceNV.

Extension: VK_NV_ray_tracing_motion_blur

API documentation

struct AccelerationStructureMotionInstanceNV <: Vulkan.HighLevelStruct
  • type::AccelerationStructureMotionInstanceTypeNV

  • flags::UInt32

  • data::AccelerationStructureMotionInstanceDataNV

source
Vulkan.AccelerationStructureMotionInstanceNVMethod

Extension: VK_NV_ray_tracing_motion_blur

Arguments:

  • type::AccelerationStructureMotionInstanceTypeNV
  • data::AccelerationStructureMotionInstanceDataNV
  • flags::UInt32: defaults to 0

API documentation

AccelerationStructureMotionInstanceNV(
    type::AccelerationStructureMotionInstanceTypeNV,
    data::AccelerationStructureMotionInstanceDataNV;
    flags
) -> AccelerationStructureMotionInstanceNV
source
Vulkan.AccelerationStructureNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • device::Device
  • compacted_size::UInt64
  • info::AccelerationStructureInfoNV
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL

API documentation

AccelerationStructureNV(
    device,
    compacted_size::Integer,
    info::AccelerationStructureInfoNV;
    allocator,
    next
) -> AccelerationStructureNV
source
Vulkan.AccelerationStructureNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • device::Device
  • compacted_size::UInt64
  • info::_AccelerationStructureInfoNV
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL

API documentation

AccelerationStructureNV(
    device,
    compacted_size::Integer,
    info::_AccelerationStructureInfoNV;
    allocator,
    next
) -> AccelerationStructureNV
source
Vulkan.AccelerationStructureSRTMotionInstanceNVType

High-level wrapper for VkAccelerationStructureSRTMotionInstanceNV.

Extension: VK_NV_ray_tracing_motion_blur

API documentation

struct AccelerationStructureSRTMotionInstanceNV <: Vulkan.HighLevelStruct
  • transform_t_0::SRTDataNV

  • transform_t_1::SRTDataNV

  • instance_custom_index::UInt32

  • mask::UInt32

  • instance_shader_binding_table_record_offset::UInt32

  • flags::GeometryInstanceFlagKHR

  • acceleration_structure_reference::UInt64

source
Vulkan.AccelerationStructureSRTMotionInstanceNVMethod

Extension: VK_NV_ray_tracing_motion_blur

Arguments:

  • transform_t_0::SRTDataNV
  • transform_t_1::SRTDataNV
  • instance_custom_index::UInt32
  • mask::UInt32
  • instance_shader_binding_table_record_offset::UInt32
  • acceleration_structure_reference::UInt64
  • flags::GeometryInstanceFlagKHR: defaults to 0

API documentation

AccelerationStructureSRTMotionInstanceNV(
    transform_t_0::SRTDataNV,
    transform_t_1::SRTDataNV,
    instance_custom_index::Integer,
    mask::Integer,
    instance_shader_binding_table_record_offset::Integer,
    acceleration_structure_reference::Integer;
    flags
) -> AccelerationStructureSRTMotionInstanceNV
source
Vulkan.AcquireNextImageInfoKHRType

High-level wrapper for VkAcquireNextImageInfoKHR.

Extension: VK_KHR_swapchain

API documentation

struct AcquireNextImageInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • swapchain::SwapchainKHR

  • timeout::UInt64

  • semaphore::Union{Ptr{Nothing}, Semaphore}

  • fence::Union{Ptr{Nothing}, Fence}

  • device_mask::UInt32

source
Vulkan.AcquireNextImageInfoKHRMethod

Extension: VK_KHR_swapchain

Arguments:

  • swapchain::SwapchainKHR (externsync)
  • timeout::UInt64
  • device_mask::UInt32
  • next::Any: defaults to C_NULL
  • semaphore::Semaphore: defaults to C_NULL (externsync)
  • fence::Fence: defaults to C_NULL (externsync)

API documentation

AcquireNextImageInfoKHR(
    swapchain::SwapchainKHR,
    timeout::Integer,
    device_mask::Integer;
    next,
    semaphore,
    fence
) -> AcquireNextImageInfoKHR
source
Vulkan.AcquireProfilingLockInfoKHRMethod

Extension: VK_KHR_performance_query

Arguments:

  • timeout::UInt64
  • next::Any: defaults to C_NULL
  • flags::AcquireProfilingLockFlagKHR: defaults to 0

API documentation

AcquireProfilingLockInfoKHR(
    timeout::Integer;
    next,
    flags
) -> AcquireProfilingLockInfoKHR
source
Vulkan.AllocationCallbacksType

High-level wrapper for VkAllocationCallbacks.

API documentation

struct AllocationCallbacks <: Vulkan.HighLevelStruct
  • user_data::Ptr{Nothing}

  • pfn_allocation::Union{Ptr{Nothing}, Base.CFunction}

  • pfn_reallocation::Union{Ptr{Nothing}, Base.CFunction}

  • pfn_free::Union{Ptr{Nothing}, Base.CFunction}

  • pfn_internal_allocation::Union{Ptr{Nothing}, Base.CFunction}

  • pfn_internal_free::Union{Ptr{Nothing}, Base.CFunction}

source
Vulkan.AllocationCallbacksMethod

Arguments:

  • pfn_allocation::FunctionPtr
  • pfn_reallocation::FunctionPtr
  • pfn_free::FunctionPtr
  • user_data::Ptr{Cvoid}: defaults to C_NULL
  • pfn_internal_allocation::FunctionPtr: defaults to C_NULL
  • pfn_internal_free::FunctionPtr: defaults to C_NULL

API documentation

AllocationCallbacks(
    pfn_allocation::Union{Ptr{Nothing}, Base.CFunction},
    pfn_reallocation::Union{Ptr{Nothing}, Base.CFunction},
    pfn_free::Union{Ptr{Nothing}, Base.CFunction};
    user_data,
    pfn_internal_allocation,
    pfn_internal_free
) -> AllocationCallbacks
source
Vulkan.ApplicationInfoType

High-level wrapper for VkApplicationInfo.

API documentation

struct ApplicationInfo <: Vulkan.HighLevelStruct
  • next::Any

  • application_name::String

  • application_version::VersionNumber

  • engine_name::String

  • engine_version::VersionNumber

  • api_version::VersionNumber

source
Vulkan.ApplicationInfoMethod

Arguments:

  • application_version::VersionNumber
  • engine_version::VersionNumber
  • api_version::VersionNumber
  • next::Any: defaults to C_NULL
  • application_name::String: defaults to ``
  • engine_name::String: defaults to ``

API documentation

ApplicationInfo(
    application_version::VersionNumber,
    engine_version::VersionNumber,
    api_version::VersionNumber;
    next,
    application_name,
    engine_name
) -> ApplicationInfo
source
Vulkan.AttachmentDescriptionType

High-level wrapper for VkAttachmentDescription.

API documentation

struct AttachmentDescription <: Vulkan.HighLevelStruct
  • flags::AttachmentDescriptionFlag

  • format::Format

  • samples::SampleCountFlag

  • load_op::AttachmentLoadOp

  • store_op::AttachmentStoreOp

  • stencil_load_op::AttachmentLoadOp

  • stencil_store_op::AttachmentStoreOp

  • initial_layout::ImageLayout

  • final_layout::ImageLayout

source
Vulkan.AttachmentDescriptionMethod

Arguments:

  • format::Format
  • samples::SampleCountFlag
  • load_op::AttachmentLoadOp
  • store_op::AttachmentStoreOp
  • stencil_load_op::AttachmentLoadOp
  • stencil_store_op::AttachmentStoreOp
  • initial_layout::ImageLayout
  • final_layout::ImageLayout
  • flags::AttachmentDescriptionFlag: defaults to 0

API documentation

AttachmentDescription(
    format::Format,
    samples::SampleCountFlag,
    load_op::AttachmentLoadOp,
    store_op::AttachmentStoreOp,
    stencil_load_op::AttachmentLoadOp,
    stencil_store_op::AttachmentStoreOp,
    initial_layout::ImageLayout,
    final_layout::ImageLayout;
    flags
) -> AttachmentDescription
source
Vulkan.AttachmentDescription2Type

High-level wrapper for VkAttachmentDescription2.

API documentation

struct AttachmentDescription2 <: Vulkan.HighLevelStruct
  • next::Any

  • flags::AttachmentDescriptionFlag

  • format::Format

  • samples::SampleCountFlag

  • load_op::AttachmentLoadOp

  • store_op::AttachmentStoreOp

  • stencil_load_op::AttachmentLoadOp

  • stencil_store_op::AttachmentStoreOp

  • initial_layout::ImageLayout

  • final_layout::ImageLayout

source
Vulkan.AttachmentDescription2Method

Arguments:

  • format::Format
  • samples::SampleCountFlag
  • load_op::AttachmentLoadOp
  • store_op::AttachmentStoreOp
  • stencil_load_op::AttachmentLoadOp
  • stencil_store_op::AttachmentStoreOp
  • initial_layout::ImageLayout
  • final_layout::ImageLayout
  • next::Any: defaults to C_NULL
  • flags::AttachmentDescriptionFlag: defaults to 0

API documentation

AttachmentDescription2(
    format::Format,
    samples::SampleCountFlag,
    load_op::AttachmentLoadOp,
    store_op::AttachmentStoreOp,
    stencil_load_op::AttachmentLoadOp,
    stencil_store_op::AttachmentStoreOp,
    initial_layout::ImageLayout,
    final_layout::ImageLayout;
    next,
    flags
) -> AttachmentDescription2
source
Vulkan.AttachmentDescriptionStencilLayoutMethod

Arguments:

  • stencil_initial_layout::ImageLayout
  • stencil_final_layout::ImageLayout
  • next::Any: defaults to C_NULL

API documentation

AttachmentDescriptionStencilLayout(
    stencil_initial_layout::ImageLayout,
    stencil_final_layout::ImageLayout;
    next
) -> AttachmentDescriptionStencilLayout
source
Vulkan.AttachmentReference2Method

Arguments:

  • attachment::UInt32
  • layout::ImageLayout
  • aspect_mask::ImageAspectFlag
  • next::Any: defaults to C_NULL

API documentation

AttachmentReference2(
    attachment::Integer,
    layout::ImageLayout,
    aspect_mask::ImageAspectFlag;
    next
) -> AttachmentReference2
source
Vulkan.AttachmentSampleCountInfoAMDType

High-level wrapper for VkAttachmentSampleCountInfoAMD.

Extension: VK_KHR_dynamic_rendering

API documentation

struct AttachmentSampleCountInfoAMD <: Vulkan.HighLevelStruct
  • next::Any

  • color_attachment_samples::Vector{SampleCountFlag}

  • depth_stencil_attachment_samples::SampleCountFlag

source
Vulkan.AttachmentSampleCountInfoAMDMethod

Extension: VK_KHR_dynamic_rendering

Arguments:

  • color_attachment_samples::Vector{SampleCountFlag}
  • next::Any: defaults to C_NULL
  • depth_stencil_attachment_samples::SampleCountFlag: defaults to 0

API documentation

AttachmentSampleCountInfoAMD(
    color_attachment_samples::AbstractArray;
    next,
    depth_stencil_attachment_samples
) -> AttachmentSampleCountInfoAMD
source
Vulkan.BindAccelerationStructureMemoryInfoNVType

High-level wrapper for VkBindAccelerationStructureMemoryInfoNV.

Extension: VK_NV_ray_tracing

API documentation

struct BindAccelerationStructureMemoryInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • acceleration_structure::AccelerationStructureNV

  • memory::DeviceMemory

  • memory_offset::UInt64

  • device_indices::Vector{UInt32}

source
Vulkan.BindAccelerationStructureMemoryInfoNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • acceleration_structure::AccelerationStructureNV
  • memory::DeviceMemory
  • memory_offset::UInt64
  • device_indices::Vector{UInt32}
  • next::Any: defaults to C_NULL

API documentation

BindAccelerationStructureMemoryInfoNV(
    acceleration_structure::AccelerationStructureNV,
    memory::DeviceMemory,
    memory_offset::Integer,
    device_indices::AbstractArray;
    next
) -> BindAccelerationStructureMemoryInfoNV
source
Vulkan.BindBufferMemoryInfoMethod

Arguments:

  • buffer::Buffer
  • memory::DeviceMemory
  • memory_offset::UInt64
  • next::Any: defaults to C_NULL

API documentation

BindBufferMemoryInfo(
    buffer::Buffer,
    memory::DeviceMemory,
    memory_offset::Integer;
    next
) -> BindBufferMemoryInfo
source
Vulkan.BindImageMemoryDeviceGroupInfoMethod

Arguments:

  • device_indices::Vector{UInt32}
  • split_instance_bind_regions::Vector{Rect2D}
  • next::Any: defaults to C_NULL

API documentation

BindImageMemoryDeviceGroupInfo(
    device_indices::AbstractArray,
    split_instance_bind_regions::AbstractArray;
    next
) -> BindImageMemoryDeviceGroupInfo
source
Vulkan.BindImageMemoryInfoMethod

Arguments:

  • image::Image
  • memory::DeviceMemory
  • memory_offset::UInt64
  • next::Any: defaults to C_NULL

API documentation

BindImageMemoryInfo(
    image::Image,
    memory::DeviceMemory,
    memory_offset::Integer;
    next
) -> BindImageMemoryInfo
source
Vulkan.BindImageMemorySwapchainInfoKHRMethod

Extension: VK_KHR_swapchain

Arguments:

  • swapchain::SwapchainKHR (externsync)
  • image_index::UInt32
  • next::Any: defaults to C_NULL

API documentation

BindImageMemorySwapchainInfoKHR(
    swapchain::SwapchainKHR,
    image_index::Integer;
    next
) -> BindImageMemorySwapchainInfoKHR
source
Vulkan.BindSparseInfoType

High-level wrapper for VkBindSparseInfo.

API documentation

struct BindSparseInfo <: Vulkan.HighLevelStruct
  • next::Any

  • wait_semaphores::Vector{Semaphore}

  • buffer_binds::Vector{SparseBufferMemoryBindInfo}

  • image_opaque_binds::Vector{SparseImageOpaqueMemoryBindInfo}

  • image_binds::Vector{SparseImageMemoryBindInfo}

  • signal_semaphores::Vector{Semaphore}

source
Vulkan.BindSparseInfoMethod

Arguments:

  • wait_semaphores::Vector{Semaphore}
  • buffer_binds::Vector{SparseBufferMemoryBindInfo}
  • image_opaque_binds::Vector{SparseImageOpaqueMemoryBindInfo}
  • image_binds::Vector{SparseImageMemoryBindInfo}
  • signal_semaphores::Vector{Semaphore}
  • next::Any: defaults to C_NULL

API documentation

BindSparseInfo(
    wait_semaphores::AbstractArray,
    buffer_binds::AbstractArray,
    image_opaque_binds::AbstractArray,
    image_binds::AbstractArray,
    signal_semaphores::AbstractArray;
    next
) -> BindSparseInfo
source
Vulkan.BlitImageInfo2Type

High-level wrapper for VkBlitImageInfo2.

API documentation

struct BlitImageInfo2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_image::Image

  • src_image_layout::ImageLayout

  • dst_image::Image

  • dst_image_layout::ImageLayout

  • regions::Vector{ImageBlit2}

  • filter::Filter

source
Vulkan.BlitImageInfo2Method

Arguments:

  • src_image::Image
  • src_image_layout::ImageLayout
  • dst_image::Image
  • dst_image_layout::ImageLayout
  • regions::Vector{ImageBlit2}
  • filter::Filter
  • next::Any: defaults to C_NULL

API documentation

BlitImageInfo2(
    src_image::Image,
    src_image_layout::ImageLayout,
    dst_image::Image,
    dst_image_layout::ImageLayout,
    regions::AbstractArray,
    filter::Filter;
    next
) -> BlitImageInfo2
source
Vulkan.BufferMethod

Arguments:

  • device::Device
  • size::UInt64
  • usage::BufferUsageFlag
  • sharing_mode::SharingMode
  • queue_family_indices::Vector{UInt32}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::BufferCreateFlag: defaults to 0

API documentation

Buffer(
    device,
    size::Integer,
    usage::BufferUsageFlag,
    sharing_mode::SharingMode,
    queue_family_indices::AbstractArray;
    allocator,
    next,
    flags
) -> Buffer
source
Vulkan.BufferCopy2Method

Arguments:

  • src_offset::UInt64
  • dst_offset::UInt64
  • size::UInt64
  • next::Any: defaults to C_NULL

API documentation

BufferCopy2(
    src_offset::Integer,
    dst_offset::Integer,
    size::Integer;
    next
) -> BufferCopy2
source
Vulkan.BufferCreateInfoType

High-level wrapper for VkBufferCreateInfo.

API documentation

struct BufferCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::BufferCreateFlag

  • size::UInt64

  • usage::BufferUsageFlag

  • sharing_mode::SharingMode

  • queue_family_indices::Vector{UInt32}

source
Vulkan.BufferCreateInfoMethod

Arguments:

  • size::UInt64
  • usage::BufferUsageFlag
  • sharing_mode::SharingMode
  • queue_family_indices::Vector{UInt32}
  • next::Any: defaults to C_NULL
  • flags::BufferCreateFlag: defaults to 0

API documentation

BufferCreateInfo(
    size::Integer,
    usage::BufferUsageFlag,
    sharing_mode::SharingMode,
    queue_family_indices::AbstractArray;
    next,
    flags
) -> BufferCreateInfo
source
Vulkan.BufferImageCopyType

High-level wrapper for VkBufferImageCopy.

API documentation

struct BufferImageCopy <: Vulkan.HighLevelStruct
  • buffer_offset::UInt64

  • buffer_row_length::UInt32

  • buffer_image_height::UInt32

  • image_subresource::ImageSubresourceLayers

  • image_offset::Offset3D

  • image_extent::Extent3D

source
Vulkan.BufferImageCopy2Type

High-level wrapper for VkBufferImageCopy2.

API documentation

struct BufferImageCopy2 <: Vulkan.HighLevelStruct
  • next::Any

  • buffer_offset::UInt64

  • buffer_row_length::UInt32

  • buffer_image_height::UInt32

  • image_subresource::ImageSubresourceLayers

  • image_offset::Offset3D

  • image_extent::Extent3D

source
Vulkan.BufferImageCopy2Method

Arguments:

  • buffer_offset::UInt64
  • buffer_row_length::UInt32
  • buffer_image_height::UInt32
  • image_subresource::ImageSubresourceLayers
  • image_offset::Offset3D
  • image_extent::Extent3D
  • next::Any: defaults to C_NULL

API documentation

BufferImageCopy2(
    buffer_offset::Integer,
    buffer_row_length::Integer,
    buffer_image_height::Integer,
    image_subresource::ImageSubresourceLayers,
    image_offset::Offset3D,
    image_extent::Extent3D;
    next
) -> BufferImageCopy2
source
Vulkan.BufferMemoryBarrierType

High-level wrapper for VkBufferMemoryBarrier.

API documentation

struct BufferMemoryBarrier <: Vulkan.HighLevelStruct
  • next::Any

  • src_access_mask::AccessFlag

  • dst_access_mask::AccessFlag

  • src_queue_family_index::UInt32

  • dst_queue_family_index::UInt32

  • buffer::Buffer

  • offset::UInt64

  • size::UInt64

source
Vulkan.BufferMemoryBarrierMethod

Arguments:

  • src_access_mask::AccessFlag
  • dst_access_mask::AccessFlag
  • src_queue_family_index::UInt32
  • dst_queue_family_index::UInt32
  • buffer::Buffer
  • offset::UInt64
  • size::UInt64
  • next::Any: defaults to C_NULL

API documentation

BufferMemoryBarrier(
    src_access_mask::AccessFlag,
    dst_access_mask::AccessFlag,
    src_queue_family_index::Integer,
    dst_queue_family_index::Integer,
    buffer::Buffer,
    offset::Integer,
    size::Integer;
    next
) -> BufferMemoryBarrier
source
Vulkan.BufferMemoryBarrier2Type

High-level wrapper for VkBufferMemoryBarrier2.

API documentation

struct BufferMemoryBarrier2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_stage_mask::UInt64

  • src_access_mask::UInt64

  • dst_stage_mask::UInt64

  • dst_access_mask::UInt64

  • src_queue_family_index::UInt32

  • dst_queue_family_index::UInt32

  • buffer::Buffer

  • offset::UInt64

  • size::UInt64

source
Vulkan.BufferMemoryBarrier2Method

Arguments:

  • src_queue_family_index::UInt32
  • dst_queue_family_index::UInt32
  • buffer::Buffer
  • offset::UInt64
  • size::UInt64
  • next::Any: defaults to C_NULL
  • src_stage_mask::UInt64: defaults to 0
  • src_access_mask::UInt64: defaults to 0
  • dst_stage_mask::UInt64: defaults to 0
  • dst_access_mask::UInt64: defaults to 0

API documentation

BufferMemoryBarrier2(
    src_queue_family_index::Integer,
    dst_queue_family_index::Integer,
    buffer::Buffer,
    offset::Integer,
    size::Integer;
    next,
    src_stage_mask,
    src_access_mask,
    dst_stage_mask,
    dst_access_mask
) -> BufferMemoryBarrier2
source
Vulkan.BufferViewMethod

Arguments:

  • device::Device
  • buffer::Buffer
  • format::Format
  • offset::UInt64
  • range::UInt64
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

BufferView(
    device,
    buffer,
    format::Format,
    offset::Integer,
    range::Integer;
    allocator,
    next,
    flags
) -> BufferView
source
Vulkan.BufferViewCreateInfoMethod

Arguments:

  • buffer::Buffer
  • format::Format
  • offset::UInt64
  • range::UInt64
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

BufferViewCreateInfo(
    buffer::Buffer,
    format::Format,
    offset::Integer,
    range::Integer;
    next,
    flags
) -> BufferViewCreateInfo
source
Vulkan.CheckpointData2NVType

High-level wrapper for VkCheckpointData2NV.

Extension: VK_KHR_synchronization2

API documentation

struct CheckpointData2NV <: Vulkan.HighLevelStruct
  • next::Any

  • stage::UInt64

  • checkpoint_marker::Ptr{Nothing}

source
Vulkan.CheckpointData2NVMethod

Extension: VK_KHR_synchronization2

Arguments:

  • stage::UInt64
  • checkpoint_marker::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

CheckpointData2NV(
    stage::Integer,
    checkpoint_marker::Ptr{Nothing};
    next
) -> CheckpointData2NV
source
Vulkan.CheckpointDataNVType

High-level wrapper for VkCheckpointDataNV.

Extension: VK_NV_device_diagnostic_checkpoints

API documentation

struct CheckpointDataNV <: Vulkan.HighLevelStruct
  • next::Any

  • stage::PipelineStageFlag

  • checkpoint_marker::Ptr{Nothing}

source
Vulkan.CheckpointDataNVMethod

Extension: VK_NV_device_diagnostic_checkpoints

Arguments:

  • stage::PipelineStageFlag
  • checkpoint_marker::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

CheckpointDataNV(
    stage::PipelineStageFlag,
    checkpoint_marker::Ptr{Nothing};
    next
) -> CheckpointDataNV
source
Vulkan.CoarseSampleOrderCustomNVType

High-level wrapper for VkCoarseSampleOrderCustomNV.

Extension: VK_NV_shading_rate_image

API documentation

struct CoarseSampleOrderCustomNV <: Vulkan.HighLevelStruct
  • shading_rate::ShadingRatePaletteEntryNV

  • sample_count::UInt32

  • sample_locations::Vector{CoarseSampleLocationNV}

source
Vulkan.CommandBufferAllocateInfoMethod

Arguments:

  • command_pool::CommandPool
  • level::CommandBufferLevel
  • command_buffer_count::UInt32
  • next::Any: defaults to C_NULL

API documentation

CommandBufferAllocateInfo(
    command_pool::CommandPool,
    level::CommandBufferLevel,
    command_buffer_count::Integer;
    next
) -> CommandBufferAllocateInfo
source
Vulkan.CommandBufferBeginInfoType

High-level wrapper for VkCommandBufferBeginInfo.

API documentation

struct CommandBufferBeginInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::CommandBufferUsageFlag

  • inheritance_info::Union{Ptr{Nothing}, CommandBufferInheritanceInfo}

source
Vulkan.CommandBufferBeginInfoMethod

Arguments:

  • next::Any: defaults to C_NULL
  • flags::CommandBufferUsageFlag: defaults to 0
  • inheritance_info::CommandBufferInheritanceInfo: defaults to C_NULL

API documentation

CommandBufferBeginInfo(
;
    next,
    flags,
    inheritance_info
) -> CommandBufferBeginInfo
source
Vulkan.CommandBufferInheritanceInfoType

High-level wrapper for VkCommandBufferInheritanceInfo.

API documentation

struct CommandBufferInheritanceInfo <: Vulkan.HighLevelStruct
  • next::Any

  • render_pass::Union{Ptr{Nothing}, RenderPass}

  • subpass::UInt32

  • framebuffer::Union{Ptr{Nothing}, Framebuffer}

  • occlusion_query_enable::Bool

  • query_flags::QueryControlFlag

  • pipeline_statistics::QueryPipelineStatisticFlag

source
Vulkan.CommandBufferInheritanceInfoMethod

Arguments:

  • subpass::UInt32
  • occlusion_query_enable::Bool
  • next::Any: defaults to C_NULL
  • render_pass::RenderPass: defaults to C_NULL
  • framebuffer::Framebuffer: defaults to C_NULL
  • query_flags::QueryControlFlag: defaults to 0
  • pipeline_statistics::QueryPipelineStatisticFlag: defaults to 0

API documentation

CommandBufferInheritanceInfo(
    subpass::Integer,
    occlusion_query_enable::Bool;
    next,
    render_pass,
    framebuffer,
    query_flags,
    pipeline_statistics
) -> CommandBufferInheritanceInfo
source
Vulkan.CommandBufferInheritanceRenderingInfoType

High-level wrapper for VkCommandBufferInheritanceRenderingInfo.

API documentation

struct CommandBufferInheritanceRenderingInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::RenderingFlag

  • view_mask::UInt32

  • color_attachment_formats::Vector{Format}

  • depth_attachment_format::Format

  • stencil_attachment_format::Format

  • rasterization_samples::SampleCountFlag

source
Vulkan.CommandBufferInheritanceRenderingInfoMethod

Arguments:

  • view_mask::UInt32
  • color_attachment_formats::Vector{Format}
  • depth_attachment_format::Format
  • stencil_attachment_format::Format
  • next::Any: defaults to C_NULL
  • flags::RenderingFlag: defaults to 0
  • rasterization_samples::SampleCountFlag: defaults to 0

API documentation

CommandBufferInheritanceRenderingInfo(
    view_mask::Integer,
    color_attachment_formats::AbstractArray,
    depth_attachment_format::Format,
    stencil_attachment_format::Format;
    next,
    flags,
    rasterization_samples
) -> CommandBufferInheritanceRenderingInfo
source
Vulkan.CommandBufferInheritanceViewportScissorInfoNVMethod

Extension: VK_NV_inherited_viewport_scissor

Arguments:

  • viewport_scissor_2_d::Bool
  • viewport_depth_count::UInt32
  • viewport_depths::Viewport
  • next::Any: defaults to C_NULL

API documentation

CommandBufferInheritanceViewportScissorInfoNV(
    viewport_scissor_2_d::Bool,
    viewport_depth_count::Integer,
    viewport_depths::Viewport;
    next
) -> CommandBufferInheritanceViewportScissorInfoNV
source
Vulkan.CommandPoolMethod

Arguments:

  • device::Device
  • queue_family_index::UInt32
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::CommandPoolCreateFlag: defaults to 0

API documentation

CommandPool(
    device,
    queue_family_index::Integer;
    allocator,
    next,
    flags
) -> CommandPool
source
Vulkan.CommandPoolCreateInfoMethod

Arguments:

  • queue_family_index::UInt32
  • next::Any: defaults to C_NULL
  • flags::CommandPoolCreateFlag: defaults to 0

API documentation

CommandPoolCreateInfo(
    queue_family_index::Integer;
    next,
    flags
) -> CommandPoolCreateInfo
source
Vulkan.ComputePipelineCreateInfoType

High-level wrapper for VkComputePipelineCreateInfo.

API documentation

struct ComputePipelineCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::PipelineCreateFlag

  • stage::PipelineShaderStageCreateInfo

  • layout::PipelineLayout

  • base_pipeline_handle::Union{Ptr{Nothing}, Pipeline}

  • base_pipeline_index::Int32

source
Vulkan.ComputePipelineCreateInfoMethod

Arguments:

  • stage::PipelineShaderStageCreateInfo
  • layout::PipelineLayout
  • base_pipeline_index::Int32
  • next::Any: defaults to C_NULL
  • flags::PipelineCreateFlag: defaults to 0
  • base_pipeline_handle::Pipeline: defaults to C_NULL

API documentation

ComputePipelineCreateInfo(
    stage::PipelineShaderStageCreateInfo,
    layout::PipelineLayout,
    base_pipeline_index::Integer;
    next,
    flags,
    base_pipeline_handle
) -> ComputePipelineCreateInfo
source
Vulkan.ConditionalRenderingBeginInfoEXTMethod

Extension: VK_EXT_conditional_rendering

Arguments:

  • buffer::Buffer
  • offset::UInt64
  • next::Any: defaults to C_NULL
  • flags::ConditionalRenderingFlagEXT: defaults to 0

API documentation

ConditionalRenderingBeginInfoEXT(
    buffer::Buffer,
    offset::Integer;
    next,
    flags
) -> ConditionalRenderingBeginInfoEXT
source
Vulkan.CooperativeMatrixPropertiesNVType

High-level wrapper for VkCooperativeMatrixPropertiesNV.

Extension: VK_NV_cooperative_matrix

API documentation

struct CooperativeMatrixPropertiesNV <: Vulkan.HighLevelStruct
  • next::Any

  • m_size::UInt32

  • n_size::UInt32

  • k_size::UInt32

  • a_type::ComponentTypeNV

  • b_type::ComponentTypeNV

  • c_type::ComponentTypeNV

  • d_type::ComponentTypeNV

  • scope::ScopeNV

source
Vulkan.CooperativeMatrixPropertiesNVMethod

Extension: VK_NV_cooperative_matrix

Arguments:

  • m_size::UInt32
  • n_size::UInt32
  • k_size::UInt32
  • a_type::ComponentTypeNV
  • b_type::ComponentTypeNV
  • c_type::ComponentTypeNV
  • d_type::ComponentTypeNV
  • scope::ScopeNV
  • next::Any: defaults to C_NULL

API documentation

CooperativeMatrixPropertiesNV(
    m_size::Integer,
    n_size::Integer,
    k_size::Integer,
    a_type::ComponentTypeNV,
    b_type::ComponentTypeNV,
    c_type::ComponentTypeNV,
    d_type::ComponentTypeNV,
    scope::ScopeNV;
    next
) -> CooperativeMatrixPropertiesNV
source
Vulkan.CopyAccelerationStructureInfoKHRType

High-level wrapper for VkCopyAccelerationStructureInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct CopyAccelerationStructureInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • src::AccelerationStructureKHR

  • dst::AccelerationStructureKHR

  • mode::CopyAccelerationStructureModeKHR

source
Vulkan.CopyAccelerationStructureInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • src::AccelerationStructureKHR
  • dst::AccelerationStructureKHR
  • mode::CopyAccelerationStructureModeKHR
  • next::Any: defaults to C_NULL

API documentation

CopyAccelerationStructureInfoKHR(
    src::AccelerationStructureKHR,
    dst::AccelerationStructureKHR,
    mode::CopyAccelerationStructureModeKHR;
    next
) -> CopyAccelerationStructureInfoKHR
source
Vulkan.CopyAccelerationStructureToMemoryInfoKHRType

High-level wrapper for VkCopyAccelerationStructureToMemoryInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct CopyAccelerationStructureToMemoryInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • src::AccelerationStructureKHR

  • dst::DeviceOrHostAddressKHR

  • mode::CopyAccelerationStructureModeKHR

source
Vulkan.CopyAccelerationStructureToMemoryInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • src::AccelerationStructureKHR
  • dst::DeviceOrHostAddressKHR
  • mode::CopyAccelerationStructureModeKHR
  • next::Any: defaults to C_NULL

API documentation

CopyAccelerationStructureToMemoryInfoKHR(
    src::AccelerationStructureKHR,
    dst::DeviceOrHostAddressKHR,
    mode::CopyAccelerationStructureModeKHR;
    next
) -> CopyAccelerationStructureToMemoryInfoKHR
source
Vulkan.CopyBufferInfo2Method

Arguments:

  • src_buffer::Buffer
  • dst_buffer::Buffer
  • regions::Vector{BufferCopy2}
  • next::Any: defaults to C_NULL

API documentation

CopyBufferInfo2(
    src_buffer::Buffer,
    dst_buffer::Buffer,
    regions::AbstractArray;
    next
) -> CopyBufferInfo2
source
Vulkan.CopyBufferToImageInfo2Type

High-level wrapper for VkCopyBufferToImageInfo2.

API documentation

struct CopyBufferToImageInfo2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_buffer::Buffer

  • dst_image::Image

  • dst_image_layout::ImageLayout

  • regions::Vector{BufferImageCopy2}

source
Vulkan.CopyBufferToImageInfo2Method

Arguments:

  • src_buffer::Buffer
  • dst_image::Image
  • dst_image_layout::ImageLayout
  • regions::Vector{BufferImageCopy2}
  • next::Any: defaults to C_NULL

API documentation

CopyBufferToImageInfo2(
    src_buffer::Buffer,
    dst_image::Image,
    dst_image_layout::ImageLayout,
    regions::AbstractArray;
    next
) -> CopyBufferToImageInfo2
source
Vulkan.CopyDescriptorSetType

High-level wrapper for VkCopyDescriptorSet.

API documentation

struct CopyDescriptorSet <: Vulkan.HighLevelStruct
  • next::Any

  • src_set::DescriptorSet

  • src_binding::UInt32

  • src_array_element::UInt32

  • dst_set::DescriptorSet

  • dst_binding::UInt32

  • dst_array_element::UInt32

  • descriptor_count::UInt32

source
Vulkan.CopyDescriptorSetMethod

Arguments:

  • src_set::DescriptorSet
  • src_binding::UInt32
  • src_array_element::UInt32
  • dst_set::DescriptorSet
  • dst_binding::UInt32
  • dst_array_element::UInt32
  • descriptor_count::UInt32
  • next::Any: defaults to C_NULL

API documentation

CopyDescriptorSet(
    src_set::DescriptorSet,
    src_binding::Integer,
    src_array_element::Integer,
    dst_set::DescriptorSet,
    dst_binding::Integer,
    dst_array_element::Integer,
    descriptor_count::Integer;
    next
) -> CopyDescriptorSet
source
Vulkan.CopyImageInfo2Type

High-level wrapper for VkCopyImageInfo2.

API documentation

struct CopyImageInfo2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_image::Image

  • src_image_layout::ImageLayout

  • dst_image::Image

  • dst_image_layout::ImageLayout

  • regions::Vector{ImageCopy2}

source
Vulkan.CopyImageInfo2Method

Arguments:

  • src_image::Image
  • src_image_layout::ImageLayout
  • dst_image::Image
  • dst_image_layout::ImageLayout
  • regions::Vector{ImageCopy2}
  • next::Any: defaults to C_NULL

API documentation

CopyImageInfo2(
    src_image::Image,
    src_image_layout::ImageLayout,
    dst_image::Image,
    dst_image_layout::ImageLayout,
    regions::AbstractArray;
    next
) -> CopyImageInfo2
source
Vulkan.CopyImageToBufferInfo2Type

High-level wrapper for VkCopyImageToBufferInfo2.

API documentation

struct CopyImageToBufferInfo2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_image::Image

  • src_image_layout::ImageLayout

  • dst_buffer::Buffer

  • regions::Vector{BufferImageCopy2}

source
Vulkan.CopyImageToBufferInfo2Method

Arguments:

  • src_image::Image
  • src_image_layout::ImageLayout
  • dst_buffer::Buffer
  • regions::Vector{BufferImageCopy2}
  • next::Any: defaults to C_NULL

API documentation

CopyImageToBufferInfo2(
    src_image::Image,
    src_image_layout::ImageLayout,
    dst_buffer::Buffer,
    regions::AbstractArray;
    next
) -> CopyImageToBufferInfo2
source
Vulkan.CopyMemoryToAccelerationStructureInfoKHRType

High-level wrapper for VkCopyMemoryToAccelerationStructureInfoKHR.

Extension: VK_KHR_acceleration_structure

API documentation

struct CopyMemoryToAccelerationStructureInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • src::DeviceOrHostAddressConstKHR

  • dst::AccelerationStructureKHR

  • mode::CopyAccelerationStructureModeKHR

source
Vulkan.CopyMemoryToAccelerationStructureInfoKHRMethod

Extension: VK_KHR_acceleration_structure

Arguments:

  • src::DeviceOrHostAddressConstKHR
  • dst::AccelerationStructureKHR
  • mode::CopyAccelerationStructureModeKHR
  • next::Any: defaults to C_NULL

API documentation

CopyMemoryToAccelerationStructureInfoKHR(
    src::DeviceOrHostAddressConstKHR,
    dst::AccelerationStructureKHR,
    mode::CopyAccelerationStructureModeKHR;
    next
) -> CopyMemoryToAccelerationStructureInfoKHR
source
Vulkan.CuFunctionCreateInfoNVXMethod

Extension: VK_NVX_binary_import

Arguments:

  • _module::CuModuleNVX
  • name::String
  • next::Any: defaults to C_NULL

API documentation

CuFunctionCreateInfoNVX(
    _module::CuModuleNVX,
    name::AbstractString;
    next
) -> CuFunctionCreateInfoNVX
source
Vulkan.CuFunctionNVXMethod

Extension: VK_NVX_binary_import

Arguments:

  • device::Device
  • _module::CuModuleNVX
  • name::String
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL

API documentation

CuFunctionNVX(
    device,
    _module,
    name::AbstractString;
    allocator,
    next
) -> CuFunctionNVX
source
Vulkan.CuLaunchInfoNVXType

High-level wrapper for VkCuLaunchInfoNVX.

Extension: VK_NVX_binary_import

API documentation

struct CuLaunchInfoNVX <: Vulkan.HighLevelStruct
  • next::Any

  • _function::CuFunctionNVX

  • grid_dim_x::UInt32

  • grid_dim_y::UInt32

  • grid_dim_z::UInt32

  • block_dim_x::UInt32

  • block_dim_y::UInt32

  • block_dim_z::UInt32

  • shared_mem_bytes::UInt32

source
Vulkan.CuLaunchInfoNVXMethod

Extension: VK_NVX_binary_import

Arguments:

  • _function::CuFunctionNVX
  • grid_dim_x::UInt32
  • grid_dim_y::UInt32
  • grid_dim_z::UInt32
  • block_dim_x::UInt32
  • block_dim_y::UInt32
  • block_dim_z::UInt32
  • shared_mem_bytes::UInt32
  • next::Any: defaults to C_NULL

API documentation

CuLaunchInfoNVX(
    _function::CuFunctionNVX,
    grid_dim_x::Integer,
    grid_dim_y::Integer,
    grid_dim_z::Integer,
    block_dim_x::Integer,
    block_dim_y::Integer,
    block_dim_z::Integer,
    shared_mem_bytes::Integer;
    next
) -> CuLaunchInfoNVX
source
Vulkan.CuModuleCreateInfoNVXMethod

Extension: VK_NVX_binary_import

Arguments:

  • data_size::UInt
  • data::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

CuModuleCreateInfoNVX(
    data_size::Integer,
    data::Ptr{Nothing};
    next
) -> CuModuleCreateInfoNVX
source
Vulkan.CuModuleNVXMethod

Extension: VK_NVX_binary_import

Arguments:

  • device::Device
  • data_size::UInt
  • data::Ptr{Cvoid}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL

API documentation

CuModuleNVX(
    device,
    data_size::Integer,
    data::Ptr{Nothing};
    allocator,
    next
) -> CuModuleNVX
source
Vulkan.DebugMarkerMarkerInfoEXTMethod

Extension: VK_EXT_debug_marker

Arguments:

  • marker_name::String
  • color::NTuple{4, Float32}
  • next::Any: defaults to C_NULL

API documentation

DebugMarkerMarkerInfoEXT(
    marker_name::AbstractString,
    color::NTuple{4, Float32};
    next
) -> DebugMarkerMarkerInfoEXT
source
Vulkan.DebugMarkerObjectNameInfoEXTType

High-level wrapper for VkDebugMarkerObjectNameInfoEXT.

Extension: VK_EXT_debug_marker

API documentation

struct DebugMarkerObjectNameInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • object_type::DebugReportObjectTypeEXT

  • object::UInt64

  • object_name::String

source
Vulkan.DebugMarkerObjectNameInfoEXTMethod

Extension: VK_EXT_debug_marker

Arguments:

  • object_type::DebugReportObjectTypeEXT
  • object::UInt64
  • object_name::String
  • next::Any: defaults to C_NULL

API documentation

DebugMarkerObjectNameInfoEXT(
    object_type::DebugReportObjectTypeEXT,
    object::Integer,
    object_name::AbstractString;
    next
) -> DebugMarkerObjectNameInfoEXT
source
Vulkan.DebugMarkerObjectTagInfoEXTType

High-level wrapper for VkDebugMarkerObjectTagInfoEXT.

Extension: VK_EXT_debug_marker

API documentation

struct DebugMarkerObjectTagInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • object_type::DebugReportObjectTypeEXT

  • object::UInt64

  • tag_name::UInt64

  • tag_size::UInt64

  • tag::Ptr{Nothing}

source
Vulkan.DebugMarkerObjectTagInfoEXTMethod

Extension: VK_EXT_debug_marker

Arguments:

  • object_type::DebugReportObjectTypeEXT
  • object::UInt64
  • tag_name::UInt64
  • tag_size::UInt
  • tag::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

DebugMarkerObjectTagInfoEXT(
    object_type::DebugReportObjectTypeEXT,
    object::Integer,
    tag_name::Integer,
    tag_size::Integer,
    tag::Ptr{Nothing};
    next
) -> DebugMarkerObjectTagInfoEXT
source
Vulkan.DebugReportCallbackCreateInfoEXTType

High-level wrapper for VkDebugReportCallbackCreateInfoEXT.

Extension: VK_EXT_debug_report

API documentation

struct DebugReportCallbackCreateInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • flags::DebugReportFlagEXT

  • pfn_callback::Union{Ptr{Nothing}, Base.CFunction}

  • user_data::Ptr{Nothing}

source
Vulkan.DebugReportCallbackCreateInfoEXTMethod

Extension: VK_EXT_debug_report

Arguments:

  • pfn_callback::FunctionPtr
  • next::Any: defaults to C_NULL
  • flags::DebugReportFlagEXT: defaults to 0
  • user_data::Ptr{Cvoid}: defaults to C_NULL

API documentation

DebugReportCallbackCreateInfoEXT(
    pfn_callback::Union{Ptr{Nothing}, Base.CFunction};
    next,
    flags,
    user_data
) -> DebugReportCallbackCreateInfoEXT
source
Vulkan.DebugReportCallbackEXTMethod

Extension: VK_EXT_debug_report

Arguments:

  • instance::Instance
  • pfn_callback::FunctionPtr
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::DebugReportFlagEXT: defaults to 0
  • user_data::Ptr{Cvoid}: defaults to C_NULL

API documentation

DebugReportCallbackEXT(
    instance,
    pfn_callback::Union{Ptr{Nothing}, Base.CFunction};
    allocator,
    next,
    flags,
    user_data
) -> DebugReportCallbackEXT
source
Vulkan.DebugUtilsLabelEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • label_name::String
  • color::NTuple{4, Float32}
  • next::Any: defaults to C_NULL

API documentation

DebugUtilsLabelEXT(
    label_name::AbstractString,
    color::NTuple{4, Float32};
    next
) -> DebugUtilsLabelEXT
source
Vulkan.DebugUtilsMessengerCallbackDataEXTType

High-level wrapper for VkDebugUtilsMessengerCallbackDataEXT.

Extension: VK_EXT_debug_utils

API documentation

struct DebugUtilsMessengerCallbackDataEXT <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • message_id_name::String

  • message_id_number::Int32

  • message::String

  • queue_labels::Vector{DebugUtilsLabelEXT}

  • cmd_buf_labels::Vector{DebugUtilsLabelEXT}

  • objects::Vector{DebugUtilsObjectNameInfoEXT}

source
Vulkan.DebugUtilsMessengerCallbackDataEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • message_id_number::Int32
  • message::String
  • queue_labels::Vector{DebugUtilsLabelEXT}
  • cmd_buf_labels::Vector{DebugUtilsLabelEXT}
  • objects::Vector{DebugUtilsObjectNameInfoEXT}
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • message_id_name::String: defaults to ``

API documentation

DebugUtilsMessengerCallbackDataEXT(
    message_id_number::Integer,
    message::AbstractString,
    queue_labels::AbstractArray,
    cmd_buf_labels::AbstractArray,
    objects::AbstractArray;
    next,
    flags,
    message_id_name
) -> DebugUtilsMessengerCallbackDataEXT
source
Vulkan.DebugUtilsMessengerCreateInfoEXTType

High-level wrapper for VkDebugUtilsMessengerCreateInfoEXT.

Extension: VK_EXT_debug_utils

API documentation

struct DebugUtilsMessengerCreateInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • message_severity::DebugUtilsMessageSeverityFlagEXT

  • message_type::DebugUtilsMessageTypeFlagEXT

  • pfn_user_callback::Union{Ptr{Nothing}, Base.CFunction}

  • user_data::Ptr{Nothing}

source
Vulkan.DebugUtilsMessengerCreateInfoEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • message_severity::DebugUtilsMessageSeverityFlagEXT
  • message_type::DebugUtilsMessageTypeFlagEXT
  • pfn_user_callback::FunctionPtr
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • user_data::Ptr{Cvoid}: defaults to C_NULL

API documentation

DebugUtilsMessengerCreateInfoEXT(
    message_severity::DebugUtilsMessageSeverityFlagEXT,
    message_type::DebugUtilsMessageTypeFlagEXT,
    pfn_user_callback::Union{Ptr{Nothing}, Base.CFunction};
    next,
    flags,
    user_data
) -> DebugUtilsMessengerCreateInfoEXT
source
Vulkan.DebugUtilsMessengerEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • instance::Instance
  • message_severity::DebugUtilsMessageSeverityFlagEXT
  • message_type::DebugUtilsMessageTypeFlagEXT
  • pfn_user_callback::FunctionPtr
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • user_data::Ptr{Cvoid}: defaults to C_NULL

API documentation

DebugUtilsMessengerEXT(
    instance,
    message_severity::DebugUtilsMessageSeverityFlagEXT,
    message_type::DebugUtilsMessageTypeFlagEXT,
    pfn_user_callback::Union{Ptr{Nothing}, Base.CFunction};
    allocator,
    next,
    flags,
    user_data
) -> DebugUtilsMessengerEXT
source
Vulkan.DebugUtilsMessengerEXTMethod

Register a user-defined callback and return the corresponding messenger. All the levels from min_severity will be included. Note that this controls only what messages are sent to the callback. The logging function may use logging macros such as @info or @error to easily filter logs through the Julia logging system.

A default function default_debug_callback can be converted to a function pointer to use as a callback.

Warning

callback must be a function pointer of type Ptr{Nothing} obtained from a callback_f function as follows: callback = @cfunction(callback_f, UInt32, (DebugUtilsMessageSeverityFlagEXT, DebugUtilsMessageTypeFlagEXT, Ptr{VkCore.VkDebugUtilsMessengerCallbackDataEXT}, Ptr{Cvoid})) with callback_f a Julia function with a signature matching the @cfunction call.

DebugUtilsMessengerEXT(
    instance::Instance,
    callback::Ptr{Nothing};
    min_severity,
    types
) -> DebugUtilsMessengerEXT
source
Vulkan.DebugUtilsObjectNameInfoEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • object_type::ObjectType
  • object_handle::UInt64
  • next::Any: defaults to C_NULL
  • object_name::String: defaults to ``

API documentation

DebugUtilsObjectNameInfoEXT(
    object_type::ObjectType,
    object_handle::Integer;
    next,
    object_name
) -> DebugUtilsObjectNameInfoEXT
source
Vulkan.DebugUtilsObjectTagInfoEXTType

High-level wrapper for VkDebugUtilsObjectTagInfoEXT.

Extension: VK_EXT_debug_utils

API documentation

struct DebugUtilsObjectTagInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • object_type::ObjectType

  • object_handle::UInt64

  • tag_name::UInt64

  • tag_size::UInt64

  • tag::Ptr{Nothing}

source
Vulkan.DebugUtilsObjectTagInfoEXTMethod

Extension: VK_EXT_debug_utils

Arguments:

  • object_type::ObjectType
  • object_handle::UInt64
  • tag_name::UInt64
  • tag_size::UInt
  • tag::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

DebugUtilsObjectTagInfoEXT(
    object_type::ObjectType,
    object_handle::Integer,
    tag_name::Integer,
    tag_size::Integer,
    tag::Ptr{Nothing};
    next
) -> DebugUtilsObjectTagInfoEXT
source
Vulkan.DependencyInfoType

High-level wrapper for VkDependencyInfo.

API documentation

struct DependencyInfo <: Vulkan.HighLevelStruct
  • next::Any

  • dependency_flags::DependencyFlag

  • memory_barriers::Vector{MemoryBarrier2}

  • buffer_memory_barriers::Vector{BufferMemoryBarrier2}

  • image_memory_barriers::Vector{ImageMemoryBarrier2}

source
Vulkan.DependencyInfoMethod

Arguments:

  • memory_barriers::Vector{MemoryBarrier2}
  • buffer_memory_barriers::Vector{BufferMemoryBarrier2}
  • image_memory_barriers::Vector{ImageMemoryBarrier2}
  • next::Any: defaults to C_NULL
  • dependency_flags::DependencyFlag: defaults to 0

API documentation

DependencyInfo(
    memory_barriers::AbstractArray,
    buffer_memory_barriers::AbstractArray,
    image_memory_barriers::AbstractArray;
    next,
    dependency_flags
) -> DependencyInfo
source
Vulkan.DescriptorPoolMethod

Arguments:

  • device::Device
  • max_sets::UInt32
  • pool_sizes::Vector{_DescriptorPoolSize}
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::DescriptorPoolCreateFlag: defaults to 0

API documentation

DescriptorPool(
    device,
    max_sets::Integer,
    pool_sizes::AbstractArray{_DescriptorPoolSize};
    allocator,
    next,
    flags
) -> DescriptorPool
source
Vulkan.DescriptorPoolMethod

Arguments:

  • device::Device
  • max_sets::UInt32
  • pool_sizes::Vector{DescriptorPoolSize}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::DescriptorPoolCreateFlag: defaults to 0

API documentation

DescriptorPool(
    device,
    max_sets::Integer,
    pool_sizes::AbstractArray;
    allocator,
    next,
    flags
)
source
Vulkan.DescriptorPoolCreateInfoMethod

Arguments:

  • max_sets::UInt32
  • pool_sizes::Vector{DescriptorPoolSize}
  • next::Any: defaults to C_NULL
  • flags::DescriptorPoolCreateFlag: defaults to 0

API documentation

DescriptorPoolCreateInfo(
    max_sets::Integer,
    pool_sizes::AbstractArray;
    next,
    flags
) -> DescriptorPoolCreateInfo
source
Vulkan.DescriptorSetAllocateInfoMethod

Arguments:

  • descriptor_pool::DescriptorPool
  • set_layouts::Vector{DescriptorSetLayout}
  • next::Any: defaults to C_NULL

API documentation

DescriptorSetAllocateInfo(
    descriptor_pool::DescriptorPool,
    set_layouts::AbstractArray;
    next
) -> DescriptorSetAllocateInfo
source
Vulkan.DescriptorSetBindingReferenceVALVEMethod

Extension: VK_VALVE_descriptor_set_host_mapping

Arguments:

  • descriptor_set_layout::DescriptorSetLayout
  • binding::UInt32
  • next::Any: defaults to C_NULL

API documentation

DescriptorSetBindingReferenceVALVE(
    descriptor_set_layout::DescriptorSetLayout,
    binding::Integer;
    next
) -> DescriptorSetBindingReferenceVALVE
source
Vulkan.DescriptorSetLayoutMethod

Arguments:

  • device::Device
  • bindings::Vector{_DescriptorSetLayoutBinding}
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::DescriptorSetLayoutCreateFlag: defaults to 0

API documentation

DescriptorSetLayout(
    device,
    bindings::AbstractArray{_DescriptorSetLayoutBinding};
    allocator,
    next,
    flags
) -> DescriptorSetLayout
source
Vulkan.DescriptorSetLayoutMethod

Arguments:

  • device::Device
  • bindings::Vector{DescriptorSetLayoutBinding}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::DescriptorSetLayoutCreateFlag: defaults to 0

API documentation

DescriptorSetLayout(
    device,
    bindings::AbstractArray;
    allocator,
    next,
    flags
)
source
Vulkan.DescriptorSetLayoutBindingType

High-level wrapper for VkDescriptorSetLayoutBinding.

API documentation

struct DescriptorSetLayoutBinding <: Vulkan.HighLevelStruct
  • binding::UInt32

  • descriptor_type::DescriptorType

  • descriptor_count::UInt32

  • stage_flags::ShaderStageFlag

  • immutable_samplers::Union{Ptr{Nothing}, Vector{Sampler}}

source
Vulkan.DescriptorSetLayoutBindingMethod

Arguments:

  • binding::UInt32
  • descriptor_type::DescriptorType
  • stage_flags::ShaderStageFlag
  • descriptor_count::UInt32: defaults to 0
  • immutable_samplers::Vector{Sampler}: defaults to C_NULL

API documentation

DescriptorSetLayoutBinding(
    binding::Integer,
    descriptor_type::DescriptorType,
    stage_flags::ShaderStageFlag;
    descriptor_count,
    immutable_samplers
) -> DescriptorSetLayoutBinding
source
Vulkan.DescriptorSetLayoutCreateInfoMethod

Arguments:

  • bindings::Vector{DescriptorSetLayoutBinding}
  • next::Any: defaults to C_NULL
  • flags::DescriptorSetLayoutCreateFlag: defaults to 0

API documentation

DescriptorSetLayoutCreateInfo(
    bindings::AbstractArray;
    next,
    flags
) -> DescriptorSetLayoutCreateInfo
source
Vulkan.DescriptorSetLayoutHostMappingInfoVALVEMethod

Extension: VK_VALVE_descriptor_set_host_mapping

Arguments:

  • descriptor_offset::UInt
  • descriptor_size::UInt32
  • next::Any: defaults to C_NULL

API documentation

DescriptorSetLayoutHostMappingInfoVALVE(
    descriptor_offset::Integer,
    descriptor_size::Integer;
    next
) -> DescriptorSetLayoutHostMappingInfoVALVE
source
Vulkan.DescriptorUpdateTemplateMethod

Arguments:

  • device::Device
  • descriptor_update_entries::Vector{DescriptorUpdateTemplateEntry}
  • template_type::DescriptorUpdateTemplateType
  • descriptor_set_layout::DescriptorSetLayout
  • pipeline_bind_point::PipelineBindPoint
  • pipeline_layout::PipelineLayout
  • set::UInt32
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DescriptorUpdateTemplate(
    device,
    descriptor_update_entries::AbstractArray,
    template_type::DescriptorUpdateTemplateType,
    descriptor_set_layout,
    pipeline_bind_point::PipelineBindPoint,
    pipeline_layout,
    set::Integer;
    allocator,
    next,
    flags
) -> DescriptorUpdateTemplate
source
Vulkan.DescriptorUpdateTemplateMethod

Arguments:

  • device::Device
  • descriptor_update_entries::Vector{_DescriptorUpdateTemplateEntry}
  • template_type::DescriptorUpdateTemplateType
  • descriptor_set_layout::DescriptorSetLayout
  • pipeline_bind_point::PipelineBindPoint
  • pipeline_layout::PipelineLayout
  • set::UInt32
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DescriptorUpdateTemplate(
    device,
    descriptor_update_entries::AbstractArray{_DescriptorUpdateTemplateEntry},
    template_type::DescriptorUpdateTemplateType,
    descriptor_set_layout,
    pipeline_bind_point::PipelineBindPoint,
    pipeline_layout,
    set::Integer;
    allocator,
    next,
    flags
) -> DescriptorUpdateTemplate
source
Vulkan.DescriptorUpdateTemplateCreateInfoType

High-level wrapper for VkDescriptorUpdateTemplateCreateInfo.

API documentation

struct DescriptorUpdateTemplateCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • descriptor_update_entries::Vector{DescriptorUpdateTemplateEntry}

  • template_type::DescriptorUpdateTemplateType

  • descriptor_set_layout::DescriptorSetLayout

  • pipeline_bind_point::PipelineBindPoint

  • pipeline_layout::PipelineLayout

  • set::UInt32

source
Vulkan.DescriptorUpdateTemplateCreateInfoMethod

Arguments:

  • descriptor_update_entries::Vector{DescriptorUpdateTemplateEntry}
  • template_type::DescriptorUpdateTemplateType
  • descriptor_set_layout::DescriptorSetLayout
  • pipeline_bind_point::PipelineBindPoint
  • pipeline_layout::PipelineLayout
  • set::UInt32
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DescriptorUpdateTemplateCreateInfo(
    descriptor_update_entries::AbstractArray,
    template_type::DescriptorUpdateTemplateType,
    descriptor_set_layout::DescriptorSetLayout,
    pipeline_bind_point::PipelineBindPoint,
    pipeline_layout::PipelineLayout,
    set::Integer;
    next,
    flags
) -> DescriptorUpdateTemplateCreateInfo
source
Vulkan.DescriptorUpdateTemplateEntryType

High-level wrapper for VkDescriptorUpdateTemplateEntry.

API documentation

struct DescriptorUpdateTemplateEntry <: Vulkan.HighLevelStruct
  • dst_binding::UInt32

  • dst_array_element::UInt32

  • descriptor_count::UInt32

  • descriptor_type::DescriptorType

  • offset::UInt64

  • stride::UInt64

source
Vulkan.DeviceMethod

Arguments:

  • physical_device::PhysicalDevice
  • queue_create_infos::Vector{DeviceQueueCreateInfo}
  • enabled_layer_names::Vector{String}
  • enabled_extension_names::Vector{String}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • enabled_features::PhysicalDeviceFeatures: defaults to C_NULL

API documentation

Device(
    physical_device,
    queue_create_infos::AbstractArray,
    enabled_layer_names::AbstractArray,
    enabled_extension_names::AbstractArray;
    allocator,
    next,
    flags,
    enabled_features
) -> Device
source
Vulkan.DeviceMethod

Arguments:

  • physical_device::PhysicalDevice
  • queue_create_infos::Vector{_DeviceQueueCreateInfo}
  • enabled_layer_names::Vector{String}
  • enabled_extension_names::Vector{String}
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • enabled_features::_PhysicalDeviceFeatures: defaults to C_NULL

API documentation

Device(
    physical_device,
    queue_create_infos::AbstractArray{_DeviceQueueCreateInfo},
    enabled_layer_names::AbstractArray,
    enabled_extension_names::AbstractArray;
    allocator,
    next,
    flags,
    enabled_features
) -> Device
source
Vulkan.DeviceCreateInfoType

High-level wrapper for VkDeviceCreateInfo.

API documentation

struct DeviceCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • queue_create_infos::Vector{DeviceQueueCreateInfo}

  • enabled_layer_names::Vector{String}

  • enabled_extension_names::Vector{String}

  • enabled_features::Union{Ptr{Nothing}, PhysicalDeviceFeatures}

source
Vulkan.DeviceCreateInfoMethod

Arguments:

  • queue_create_infos::Vector{DeviceQueueCreateInfo}
  • enabled_layer_names::Vector{String}
  • enabled_extension_names::Vector{String}
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • enabled_features::PhysicalDeviceFeatures: defaults to C_NULL

API documentation

DeviceCreateInfo(
    queue_create_infos::AbstractArray,
    enabled_layer_names::AbstractArray,
    enabled_extension_names::AbstractArray;
    next,
    flags,
    enabled_features
) -> DeviceCreateInfo
source
Vulkan.DeviceDeviceMemoryReportCreateInfoEXTType

High-level wrapper for VkDeviceDeviceMemoryReportCreateInfoEXT.

Extension: VK_EXT_device_memory_report

API documentation

struct DeviceDeviceMemoryReportCreateInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • pfn_user_callback::Union{Ptr{Nothing}, Base.CFunction}

  • user_data::Ptr{Nothing}

source
Vulkan.DeviceDeviceMemoryReportCreateInfoEXTMethod

Extension: VK_EXT_device_memory_report

Arguments:

  • flags::UInt32
  • pfn_user_callback::FunctionPtr
  • user_data::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

DeviceDeviceMemoryReportCreateInfoEXT(
    flags::Integer,
    pfn_user_callback::Union{Ptr{Nothing}, Base.CFunction},
    user_data::Ptr{Nothing};
    next
) -> DeviceDeviceMemoryReportCreateInfoEXT
source
Vulkan.DeviceEventInfoEXTMethod

Extension: VK_EXT_display_control

Arguments:

  • device_event::DeviceEventTypeEXT
  • next::Any: defaults to C_NULL

API documentation

DeviceEventInfoEXT(
    device_event::DeviceEventTypeEXT;
    next
) -> DeviceEventInfoEXT
source
Vulkan.DeviceGroupBindSparseInfoMethod

Arguments:

  • resource_device_index::UInt32
  • memory_device_index::UInt32
  • next::Any: defaults to C_NULL

API documentation

DeviceGroupBindSparseInfo(
    resource_device_index::Integer,
    memory_device_index::Integer;
    next
) -> DeviceGroupBindSparseInfo
source
Vulkan.DeviceGroupPresentCapabilitiesKHRMethod

Extension: VK_KHR_swapchain

Arguments:

  • present_mask::NTuple{Int(VK_MAX_DEVICE_GROUP_SIZE), UInt32}
  • modes::DeviceGroupPresentModeFlagKHR
  • next::Any: defaults to C_NULL

API documentation

DeviceGroupPresentCapabilitiesKHR(
    present_mask::NTuple{32, UInt32},
    modes::DeviceGroupPresentModeFlagKHR;
    next
) -> DeviceGroupPresentCapabilitiesKHR
source
Vulkan.DeviceGroupPresentInfoKHRMethod

Extension: VK_KHR_swapchain

Arguments:

  • device_masks::Vector{UInt32}
  • mode::DeviceGroupPresentModeFlagKHR
  • next::Any: defaults to C_NULL

API documentation

DeviceGroupPresentInfoKHR(
    device_masks::AbstractArray,
    mode::DeviceGroupPresentModeFlagKHR;
    next
) -> DeviceGroupPresentInfoKHR
source
Vulkan.DeviceGroupSubmitInfoType

High-level wrapper for VkDeviceGroupSubmitInfo.

API documentation

struct DeviceGroupSubmitInfo <: Vulkan.HighLevelStruct
  • next::Any

  • wait_semaphore_device_indices::Vector{UInt32}

  • command_buffer_device_masks::Vector{UInt32}

  • signal_semaphore_device_indices::Vector{UInt32}

source
Vulkan.DeviceGroupSubmitInfoMethod

Arguments:

  • wait_semaphore_device_indices::Vector{UInt32}
  • command_buffer_device_masks::Vector{UInt32}
  • signal_semaphore_device_indices::Vector{UInt32}
  • next::Any: defaults to C_NULL

API documentation

DeviceGroupSubmitInfo(
    wait_semaphore_device_indices::AbstractArray,
    command_buffer_device_masks::AbstractArray,
    signal_semaphore_device_indices::AbstractArray;
    next
) -> DeviceGroupSubmitInfo
source
Vulkan.DeviceImageMemoryRequirementsMethod

Arguments:

  • create_info::ImageCreateInfo
  • next::Any: defaults to C_NULL
  • plane_aspect::ImageAspectFlag: defaults to 0

API documentation

DeviceImageMemoryRequirements(
    create_info::ImageCreateInfo;
    next,
    plane_aspect
) -> DeviceImageMemoryRequirements
source
Vulkan.DeviceMemoryMethod

Arguments:

  • device::Device
  • allocation_size::UInt64
  • memory_type_index::UInt32
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL

API documentation

DeviceMemory(
    device,
    allocation_size::Integer,
    memory_type_index::Integer;
    allocator,
    next
) -> DeviceMemory
source
Vulkan.DeviceMemoryOverallocationCreateInfoAMDMethod

Extension: VK_AMD_memory_overallocation_behavior

Arguments:

  • overallocation_behavior::MemoryOverallocationBehaviorAMD
  • next::Any: defaults to C_NULL

API documentation

DeviceMemoryOverallocationCreateInfoAMD(
    overallocation_behavior::MemoryOverallocationBehaviorAMD;
    next
) -> DeviceMemoryOverallocationCreateInfoAMD
source
Vulkan.DeviceMemoryReportCallbackDataEXTType

High-level wrapper for VkDeviceMemoryReportCallbackDataEXT.

Extension: VK_EXT_device_memory_report

API documentation

struct DeviceMemoryReportCallbackDataEXT <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • type::DeviceMemoryReportEventTypeEXT

  • memory_object_id::UInt64

  • size::UInt64

  • object_type::ObjectType

  • object_handle::UInt64

  • heap_index::UInt32

source
Vulkan.DeviceMemoryReportCallbackDataEXTMethod

Extension: VK_EXT_device_memory_report

Arguments:

  • flags::UInt32
  • type::DeviceMemoryReportEventTypeEXT
  • memory_object_id::UInt64
  • size::UInt64
  • object_type::ObjectType
  • object_handle::UInt64
  • heap_index::UInt32
  • next::Any: defaults to C_NULL

API documentation

DeviceMemoryReportCallbackDataEXT(
    flags::Integer,
    type::DeviceMemoryReportEventTypeEXT,
    memory_object_id::Integer,
    size::Integer,
    object_type::ObjectType,
    object_handle::Integer,
    heap_index::Integer;
    next
) -> DeviceMemoryReportCallbackDataEXT
source
Vulkan.DeviceQueueCreateInfoType

High-level wrapper for VkDeviceQueueCreateInfo.

API documentation

struct DeviceQueueCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::DeviceQueueCreateFlag

  • queue_family_index::UInt32

  • queue_priorities::Vector{Float32}

source
Vulkan.DeviceQueueCreateInfoMethod

Arguments:

  • queue_family_index::UInt32
  • queue_priorities::Vector{Float32}
  • next::Any: defaults to C_NULL
  • flags::DeviceQueueCreateFlag: defaults to 0

API documentation

DeviceQueueCreateInfo(
    queue_family_index::Integer,
    queue_priorities::AbstractArray;
    next,
    flags
) -> DeviceQueueCreateInfo
source
Vulkan.DeviceQueueInfo2Method

Arguments:

  • queue_family_index::UInt32
  • queue_index::UInt32
  • next::Any: defaults to C_NULL
  • flags::DeviceQueueCreateFlag: defaults to 0

API documentation

DeviceQueueInfo2(
    queue_family_index::Integer,
    queue_index::Integer;
    next,
    flags
) -> DeviceQueueInfo2
source
Vulkan.DisplayEventInfoEXTMethod

Extension: VK_EXT_display_control

Arguments:

  • display_event::DisplayEventTypeEXT
  • next::Any: defaults to C_NULL

API documentation

DisplayEventInfoEXT(
    display_event::DisplayEventTypeEXT;
    next
) -> DisplayEventInfoEXT
source
Vulkan.DisplayModeCreateInfoKHRMethod

Extension: VK_KHR_display

Arguments:

  • parameters::DisplayModeParametersKHR
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DisplayModeCreateInfoKHR(
    parameters::DisplayModeParametersKHR;
    next,
    flags
) -> DisplayModeCreateInfoKHR
source
Vulkan.DisplayModeKHRMethod

Extension: VK_KHR_display

Arguments:

  • physical_device::PhysicalDevice
  • display::DisplayKHR (externsync)
  • parameters::DisplayModeParametersKHR
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DisplayModeKHR(
    physical_device,
    display,
    parameters::DisplayModeParametersKHR;
    allocator,
    next,
    flags
) -> DisplayModeKHR
source
Vulkan.DisplayModeKHRMethod

Extension: VK_KHR_display

Arguments:

  • physical_device::PhysicalDevice
  • display::DisplayKHR (externsync)
  • parameters::_DisplayModeParametersKHR
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DisplayModeKHR(
    physical_device,
    display,
    parameters::_DisplayModeParametersKHR;
    allocator,
    next,
    flags
) -> DisplayModeKHR
source
Vulkan.DisplayModeProperties2KHRMethod

Extension: VK_KHR_get_display_properties2

Arguments:

  • display_mode_properties::DisplayModePropertiesKHR
  • next::Any: defaults to C_NULL

API documentation

DisplayModeProperties2KHR(
    display_mode_properties::DisplayModePropertiesKHR;
    next
) -> DisplayModeProperties2KHR
source
Vulkan.DisplayPlaneCapabilities2KHRMethod

Extension: VK_KHR_get_display_properties2

Arguments:

  • capabilities::DisplayPlaneCapabilitiesKHR
  • next::Any: defaults to C_NULL

API documentation

DisplayPlaneCapabilities2KHR(
    capabilities::DisplayPlaneCapabilitiesKHR;
    next
) -> DisplayPlaneCapabilities2KHR
source
Vulkan.DisplayPlaneCapabilitiesKHRType

High-level wrapper for VkDisplayPlaneCapabilitiesKHR.

Extension: VK_KHR_display

API documentation

struct DisplayPlaneCapabilitiesKHR <: Vulkan.HighLevelStruct
  • supported_alpha::DisplayPlaneAlphaFlagKHR

  • min_src_position::Offset2D

  • max_src_position::Offset2D

  • min_src_extent::Extent2D

  • max_src_extent::Extent2D

  • min_dst_position::Offset2D

  • max_dst_position::Offset2D

  • min_dst_extent::Extent2D

  • max_dst_extent::Extent2D

source
Vulkan.DisplayPlaneCapabilitiesKHRMethod

Extension: VK_KHR_display

Arguments:

  • min_src_position::Offset2D
  • max_src_position::Offset2D
  • min_src_extent::Extent2D
  • max_src_extent::Extent2D
  • min_dst_position::Offset2D
  • max_dst_position::Offset2D
  • min_dst_extent::Extent2D
  • max_dst_extent::Extent2D
  • supported_alpha::DisplayPlaneAlphaFlagKHR: defaults to 0

API documentation

DisplayPlaneCapabilitiesKHR(
    min_src_position::Offset2D,
    max_src_position::Offset2D,
    min_src_extent::Extent2D,
    max_src_extent::Extent2D,
    min_dst_position::Offset2D,
    max_dst_position::Offset2D,
    min_dst_extent::Extent2D,
    max_dst_extent::Extent2D;
    supported_alpha
) -> DisplayPlaneCapabilitiesKHR
source
Vulkan.DisplayPlaneInfo2KHRMethod

Extension: VK_KHR_get_display_properties2

Arguments:

  • mode::DisplayModeKHR (externsync)
  • plane_index::UInt32
  • next::Any: defaults to C_NULL

API documentation

DisplayPlaneInfo2KHR(
    mode::DisplayModeKHR,
    plane_index::Integer;
    next
) -> DisplayPlaneInfo2KHR
source
Vulkan.DisplayPlaneProperties2KHRMethod

Extension: VK_KHR_get_display_properties2

Arguments:

  • display_plane_properties::DisplayPlanePropertiesKHR
  • next::Any: defaults to C_NULL

API documentation

DisplayPlaneProperties2KHR(
    display_plane_properties::DisplayPlanePropertiesKHR;
    next
) -> DisplayPlaneProperties2KHR
source
Vulkan.DisplayPowerInfoEXTMethod

Extension: VK_EXT_display_control

Arguments:

  • power_state::DisplayPowerStateEXT
  • next::Any: defaults to C_NULL

API documentation

DisplayPowerInfoEXT(
    power_state::DisplayPowerStateEXT;
    next
) -> DisplayPowerInfoEXT
source
Vulkan.DisplayPresentInfoKHRMethod

Extension: VK_KHR_display_swapchain

Arguments:

  • src_rect::Rect2D
  • dst_rect::Rect2D
  • persistent::Bool
  • next::Any: defaults to C_NULL

API documentation

DisplayPresentInfoKHR(
    src_rect::Rect2D,
    dst_rect::Rect2D,
    persistent::Bool;
    next
) -> DisplayPresentInfoKHR
source
Vulkan.DisplayProperties2KHRMethod

Extension: VK_KHR_get_display_properties2

Arguments:

  • display_properties::DisplayPropertiesKHR
  • next::Any: defaults to C_NULL

API documentation

DisplayProperties2KHR(
    display_properties::DisplayPropertiesKHR;
    next
) -> DisplayProperties2KHR
source
Vulkan.DisplayPropertiesKHRType

High-level wrapper for VkDisplayPropertiesKHR.

Extension: VK_KHR_display

API documentation

struct DisplayPropertiesKHR <: Vulkan.HighLevelStruct
  • display::DisplayKHR

  • display_name::String

  • physical_dimensions::Extent2D

  • physical_resolution::Extent2D

  • supported_transforms::SurfaceTransformFlagKHR

  • plane_reorder_possible::Bool

  • persistent_content::Bool

source
Vulkan.DisplayPropertiesKHRMethod

Extension: VK_KHR_display

Arguments:

  • display::DisplayKHR
  • display_name::String
  • physical_dimensions::Extent2D
  • physical_resolution::Extent2D
  • plane_reorder_possible::Bool
  • persistent_content::Bool
  • supported_transforms::SurfaceTransformFlagKHR: defaults to 0

API documentation

DisplayPropertiesKHR(
    display::DisplayKHR,
    display_name::AbstractString,
    physical_dimensions::Extent2D,
    physical_resolution::Extent2D,
    plane_reorder_possible::Bool,
    persistent_content::Bool;
    supported_transforms
) -> DisplayPropertiesKHR
source
Vulkan.DisplaySurfaceCreateInfoKHRType

High-level wrapper for VkDisplaySurfaceCreateInfoKHR.

Extension: VK_KHR_display

API documentation

struct DisplaySurfaceCreateInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • display_mode::DisplayModeKHR

  • plane_index::UInt32

  • plane_stack_index::UInt32

  • transform::SurfaceTransformFlagKHR

  • global_alpha::Float32

  • alpha_mode::DisplayPlaneAlphaFlagKHR

  • image_extent::Extent2D

source
Vulkan.DisplaySurfaceCreateInfoKHRMethod

Extension: VK_KHR_display

Arguments:

  • display_mode::DisplayModeKHR
  • plane_index::UInt32
  • plane_stack_index::UInt32
  • transform::SurfaceTransformFlagKHR
  • global_alpha::Float32
  • alpha_mode::DisplayPlaneAlphaFlagKHR
  • image_extent::Extent2D
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0

API documentation

DisplaySurfaceCreateInfoKHR(
    display_mode::DisplayModeKHR,
    plane_index::Integer,
    plane_stack_index::Integer,
    transform::SurfaceTransformFlagKHR,
    global_alpha::Real,
    alpha_mode::DisplayPlaneAlphaFlagKHR,
    image_extent::Extent2D;
    next,
    flags
) -> DisplaySurfaceCreateInfoKHR
source
Vulkan.DrmFormatModifierProperties2EXTType

High-level wrapper for VkDrmFormatModifierProperties2EXT.

Extension: VK_EXT_image_drm_format_modifier

API documentation

struct DrmFormatModifierProperties2EXT <: Vulkan.HighLevelStruct
  • drm_format_modifier::UInt64

  • drm_format_modifier_plane_count::UInt32

  • drm_format_modifier_tiling_features::UInt64

source
Vulkan.DrmFormatModifierPropertiesEXTType

High-level wrapper for VkDrmFormatModifierPropertiesEXT.

Extension: VK_EXT_image_drm_format_modifier

API documentation

struct DrmFormatModifierPropertiesEXT <: Vulkan.HighLevelStruct
  • drm_format_modifier::UInt64

  • drm_format_modifier_plane_count::UInt32

  • drm_format_modifier_tiling_features::FormatFeatureFlag

source
Vulkan.DrmFormatModifierPropertiesList2EXTType

High-level wrapper for VkDrmFormatModifierPropertiesList2EXT.

Extension: VK_EXT_image_drm_format_modifier

API documentation

struct DrmFormatModifierPropertiesList2EXT <: Vulkan.HighLevelStruct
  • next::Any

  • drm_format_modifier_properties::Union{Ptr{Nothing}, Vector{DrmFormatModifierProperties2EXT}}

source
Vulkan.DrmFormatModifierPropertiesList2EXTMethod

Extension: VK_EXT_image_drm_format_modifier

Arguments:

  • next::Any: defaults to C_NULL
  • drm_format_modifier_properties::Vector{DrmFormatModifierProperties2EXT}: defaults to C_NULL

API documentation

DrmFormatModifierPropertiesList2EXT(
;
    next,
    drm_format_modifier_properties
) -> DrmFormatModifierPropertiesList2EXT
source
Vulkan.DrmFormatModifierPropertiesListEXTType

High-level wrapper for VkDrmFormatModifierPropertiesListEXT.

Extension: VK_EXT_image_drm_format_modifier

API documentation

struct DrmFormatModifierPropertiesListEXT <: Vulkan.HighLevelStruct
  • next::Any

  • drm_format_modifier_properties::Union{Ptr{Nothing}, Vector{DrmFormatModifierPropertiesEXT}}

source
Vulkan.DrmFormatModifierPropertiesListEXTMethod

Extension: VK_EXT_image_drm_format_modifier

Arguments:

  • next::Any: defaults to C_NULL
  • drm_format_modifier_properties::Vector{DrmFormatModifierPropertiesEXT}: defaults to C_NULL

API documentation

DrmFormatModifierPropertiesListEXT(
;
    next,
    drm_format_modifier_properties
) -> DrmFormatModifierPropertiesListEXT
source
Vulkan.EventMethod

Arguments:

  • device::Device
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::EventCreateFlag: defaults to 0

API documentation

Event(device; allocator, next, flags) -> Event
source
Vulkan.ExternalBufferPropertiesMethod

Arguments:

  • external_memory_properties::ExternalMemoryProperties
  • next::Any: defaults to C_NULL

API documentation

ExternalBufferProperties(
    external_memory_properties::ExternalMemoryProperties;
    next
) -> ExternalBufferProperties
source
Vulkan.ExternalFencePropertiesType

High-level wrapper for VkExternalFenceProperties.

API documentation

struct ExternalFenceProperties <: Vulkan.HighLevelStruct
  • next::Any

  • export_from_imported_handle_types::ExternalFenceHandleTypeFlag

  • compatible_handle_types::ExternalFenceHandleTypeFlag

  • external_fence_features::ExternalFenceFeatureFlag

source
Vulkan.ExternalFencePropertiesMethod

Arguments:

  • export_from_imported_handle_types::ExternalFenceHandleTypeFlag
  • compatible_handle_types::ExternalFenceHandleTypeFlag
  • next::Any: defaults to C_NULL
  • external_fence_features::ExternalFenceFeatureFlag: defaults to 0

API documentation

ExternalFenceProperties(
    export_from_imported_handle_types::ExternalFenceHandleTypeFlag,
    compatible_handle_types::ExternalFenceHandleTypeFlag;
    next,
    external_fence_features
) -> ExternalFenceProperties
source
Vulkan.ExternalImageFormatPropertiesNVType

High-level wrapper for VkExternalImageFormatPropertiesNV.

Extension: VK_NV_external_memory_capabilities

API documentation

struct ExternalImageFormatPropertiesNV <: Vulkan.HighLevelStruct
  • image_format_properties::ImageFormatProperties

  • external_memory_features::ExternalMemoryFeatureFlagNV

  • export_from_imported_handle_types::ExternalMemoryHandleTypeFlagNV

  • compatible_handle_types::ExternalMemoryHandleTypeFlagNV

source
Vulkan.ExternalImageFormatPropertiesNVMethod

Extension: VK_NV_external_memory_capabilities

Arguments:

  • image_format_properties::ImageFormatProperties
  • external_memory_features::ExternalMemoryFeatureFlagNV: defaults to 0
  • export_from_imported_handle_types::ExternalMemoryHandleTypeFlagNV: defaults to 0
  • compatible_handle_types::ExternalMemoryHandleTypeFlagNV: defaults to 0

API documentation

ExternalImageFormatPropertiesNV(
    image_format_properties::ImageFormatProperties;
    external_memory_features,
    export_from_imported_handle_types,
    compatible_handle_types
) -> ExternalImageFormatPropertiesNV
source
Vulkan.ExternalMemoryPropertiesType

High-level wrapper for VkExternalMemoryProperties.

API documentation

struct ExternalMemoryProperties <: Vulkan.HighLevelStruct
  • external_memory_features::ExternalMemoryFeatureFlag

  • export_from_imported_handle_types::ExternalMemoryHandleTypeFlag

  • compatible_handle_types::ExternalMemoryHandleTypeFlag

source
Vulkan.ExternalMemoryPropertiesMethod

Arguments:

  • external_memory_features::ExternalMemoryFeatureFlag
  • compatible_handle_types::ExternalMemoryHandleTypeFlag
  • export_from_imported_handle_types::ExternalMemoryHandleTypeFlag: defaults to 0

API documentation

ExternalMemoryProperties(
    external_memory_features::ExternalMemoryFeatureFlag,
    compatible_handle_types::ExternalMemoryHandleTypeFlag;
    export_from_imported_handle_types
) -> ExternalMemoryProperties
source
Vulkan.ExternalSemaphorePropertiesType

High-level wrapper for VkExternalSemaphoreProperties.

API documentation

struct ExternalSemaphoreProperties <: Vulkan.HighLevelStruct
  • next::Any

  • export_from_imported_handle_types::ExternalSemaphoreHandleTypeFlag

  • compatible_handle_types::ExternalSemaphoreHandleTypeFlag

  • external_semaphore_features::ExternalSemaphoreFeatureFlag

source
Vulkan.ExternalSemaphorePropertiesMethod

Arguments:

  • export_from_imported_handle_types::ExternalSemaphoreHandleTypeFlag
  • compatible_handle_types::ExternalSemaphoreHandleTypeFlag
  • next::Any: defaults to C_NULL
  • external_semaphore_features::ExternalSemaphoreFeatureFlag: defaults to 0

API documentation

ExternalSemaphoreProperties(
    export_from_imported_handle_types::ExternalSemaphoreHandleTypeFlag,
    compatible_handle_types::ExternalSemaphoreHandleTypeFlag;
    next,
    external_semaphore_features
) -> ExternalSemaphoreProperties
source
Vulkan.FeatureConditionType

Condition that a feature needs to satisfy to be considered enabled.

struct FeatureCondition
  • type::Symbol

    Name of the feature structure relevant to the condition.

  • member::Symbol

    Member of the structure which must be set to true to enable the feature.

  • core_version::Union{Nothing, VersionNumber}

    Core version corresponding to the structure, if any.

  • extension::Union{Nothing, String}

    Extension required for the corresponding structure, if any.

source
Vulkan.FenceMethod

Arguments:

  • device::Device
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::FenceCreateFlag: defaults to 0

API documentation

Fence(device; allocator, next, flags) -> Fence
source
Vulkan.FenceGetFdInfoKHRType

High-level wrapper for VkFenceGetFdInfoKHR.

Extension: VK_KHR_external_fence_fd

API documentation

struct FenceGetFdInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • fence::Fence

  • handle_type::ExternalFenceHandleTypeFlag

source
Vulkan.FenceGetFdInfoKHRMethod

Extension: VK_KHR_external_fence_fd

Arguments:

  • fence::Fence
  • handle_type::ExternalFenceHandleTypeFlag
  • next::Any: defaults to C_NULL

API documentation

FenceGetFdInfoKHR(
    fence::Fence,
    handle_type::ExternalFenceHandleTypeFlag;
    next
) -> FenceGetFdInfoKHR
source
Vulkan.FormatPropertiesType

High-level wrapper for VkFormatProperties.

API documentation

struct FormatProperties <: Vulkan.HighLevelStruct
  • linear_tiling_features::FormatFeatureFlag

  • optimal_tiling_features::FormatFeatureFlag

  • buffer_features::FormatFeatureFlag

source
Vulkan.FormatPropertiesMethod

Arguments:

  • linear_tiling_features::FormatFeatureFlag: defaults to 0
  • optimal_tiling_features::FormatFeatureFlag: defaults to 0
  • buffer_features::FormatFeatureFlag: defaults to 0

API documentation

FormatProperties(
;
    linear_tiling_features,
    optimal_tiling_features,
    buffer_features
) -> FormatProperties
source
Vulkan.FormatProperties3Type

High-level wrapper for VkFormatProperties3.

API documentation

struct FormatProperties3 <: Vulkan.HighLevelStruct
  • next::Any

  • linear_tiling_features::UInt64

  • optimal_tiling_features::UInt64

  • buffer_features::UInt64

source
Vulkan.FormatProperties3Method

Arguments:

  • next::Any: defaults to C_NULL
  • linear_tiling_features::UInt64: defaults to 0
  • optimal_tiling_features::UInt64: defaults to 0
  • buffer_features::UInt64: defaults to 0

API documentation

FormatProperties3(
;
    next,
    linear_tiling_features,
    optimal_tiling_features,
    buffer_features
) -> FormatProperties3
source
Vulkan.FragmentShadingRateAttachmentInfoKHRType

High-level wrapper for VkFragmentShadingRateAttachmentInfoKHR.

Extension: VK_KHR_fragment_shading_rate

API documentation

struct FragmentShadingRateAttachmentInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • fragment_shading_rate_attachment::Union{Ptr{Nothing}, AttachmentReference2}

  • shading_rate_attachment_texel_size::Extent2D

source
Vulkan.FragmentShadingRateAttachmentInfoKHRMethod

Extension: VK_KHR_fragment_shading_rate

Arguments:

  • shading_rate_attachment_texel_size::Extent2D
  • next::Any: defaults to C_NULL
  • fragment_shading_rate_attachment::AttachmentReference2: defaults to C_NULL

API documentation

FragmentShadingRateAttachmentInfoKHR(
    shading_rate_attachment_texel_size::Extent2D;
    next,
    fragment_shading_rate_attachment
) -> FragmentShadingRateAttachmentInfoKHR
source
Vulkan.FramebufferMethod

Arguments:

  • device::Device
  • render_pass::RenderPass
  • attachments::Vector{ImageView}
  • width::UInt32
  • height::UInt32
  • layers::UInt32
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::FramebufferCreateFlag: defaults to 0

API documentation

Framebuffer(
    device,
    render_pass,
    attachments::AbstractArray,
    width::Integer,
    height::Integer,
    layers::Integer;
    allocator,
    next,
    flags
) -> Framebuffer
source
Vulkan.FramebufferAttachmentImageInfoType

High-level wrapper for VkFramebufferAttachmentImageInfo.

API documentation

struct FramebufferAttachmentImageInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::ImageCreateFlag

  • usage::ImageUsageFlag

  • width::UInt32

  • height::UInt32

  • layer_count::UInt32

  • view_formats::Vector{Format}

source
Vulkan.FramebufferAttachmentImageInfoMethod

Arguments:

  • usage::ImageUsageFlag
  • width::UInt32
  • height::UInt32
  • layer_count::UInt32
  • view_formats::Vector{Format}
  • next::Any: defaults to C_NULL
  • flags::ImageCreateFlag: defaults to 0

API documentation

FramebufferAttachmentImageInfo(
    usage::ImageUsageFlag,
    width::Integer,
    height::Integer,
    layer_count::Integer,
    view_formats::AbstractArray;
    next,
    flags
) -> FramebufferAttachmentImageInfo
source
Vulkan.FramebufferCreateInfoType

High-level wrapper for VkFramebufferCreateInfo.

API documentation

struct FramebufferCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::FramebufferCreateFlag

  • render_pass::RenderPass

  • attachments::Vector{ImageView}

  • width::UInt32

  • height::UInt32

  • layers::UInt32

source
Vulkan.FramebufferCreateInfoMethod

Arguments:

  • render_pass::RenderPass
  • attachments::Vector{ImageView}
  • width::UInt32
  • height::UInt32
  • layers::UInt32
  • next::Any: defaults to C_NULL
  • flags::FramebufferCreateFlag: defaults to 0

API documentation

FramebufferCreateInfo(
    render_pass::RenderPass,
    attachments::AbstractArray,
    width::Integer,
    height::Integer,
    layers::Integer;
    next,
    flags
) -> FramebufferCreateInfo
source
Vulkan.FramebufferMixedSamplesCombinationNVType

High-level wrapper for VkFramebufferMixedSamplesCombinationNV.

Extension: VK_NV_coverage_reduction_mode

API documentation

struct FramebufferMixedSamplesCombinationNV <: Vulkan.HighLevelStruct
  • next::Any

  • coverage_reduction_mode::CoverageReductionModeNV

  • rasterization_samples::SampleCountFlag

  • depth_stencil_samples::SampleCountFlag

  • color_samples::SampleCountFlag

source
Vulkan.FramebufferMixedSamplesCombinationNVMethod

Extension: VK_NV_coverage_reduction_mode

Arguments:

  • coverage_reduction_mode::CoverageReductionModeNV
  • rasterization_samples::SampleCountFlag
  • depth_stencil_samples::SampleCountFlag
  • color_samples::SampleCountFlag
  • next::Any: defaults to C_NULL

API documentation

FramebufferMixedSamplesCombinationNV(
    coverage_reduction_mode::CoverageReductionModeNV,
    rasterization_samples::SampleCountFlag,
    depth_stencil_samples::SampleCountFlag,
    color_samples::SampleCountFlag;
    next
) -> FramebufferMixedSamplesCombinationNV
source
Vulkan.GeneratedCommandsInfoNVType

High-level wrapper for VkGeneratedCommandsInfoNV.

Extension: VK_NV_device_generated_commands

API documentation

struct GeneratedCommandsInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • pipeline_bind_point::PipelineBindPoint

  • pipeline::Pipeline

  • indirect_commands_layout::IndirectCommandsLayoutNV

  • streams::Vector{IndirectCommandsStreamNV}

  • sequences_count::UInt32

  • preprocess_buffer::Buffer

  • preprocess_offset::UInt64

  • preprocess_size::UInt64

  • sequences_count_buffer::Union{Ptr{Nothing}, Buffer}

  • sequences_count_offset::UInt64

  • sequences_index_buffer::Union{Ptr{Nothing}, Buffer}

  • sequences_index_offset::UInt64

source
Vulkan.GeneratedCommandsInfoNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • pipeline_bind_point::PipelineBindPoint
  • pipeline::Pipeline
  • indirect_commands_layout::IndirectCommandsLayoutNV
  • streams::Vector{IndirectCommandsStreamNV}
  • sequences_count::UInt32
  • preprocess_buffer::Buffer
  • preprocess_offset::UInt64
  • preprocess_size::UInt64
  • sequences_count_offset::UInt64
  • sequences_index_offset::UInt64
  • next::Any: defaults to C_NULL
  • sequences_count_buffer::Buffer: defaults to C_NULL
  • sequences_index_buffer::Buffer: defaults to C_NULL

API documentation

GeneratedCommandsInfoNV(
    pipeline_bind_point::PipelineBindPoint,
    pipeline::Pipeline,
    indirect_commands_layout::IndirectCommandsLayoutNV,
    streams::AbstractArray,
    sequences_count::Integer,
    preprocess_buffer::Buffer,
    preprocess_offset::Integer,
    preprocess_size::Integer,
    sequences_count_offset::Integer,
    sequences_index_offset::Integer;
    next,
    sequences_count_buffer,
    sequences_index_buffer
) -> GeneratedCommandsInfoNV
source
Vulkan.GeneratedCommandsMemoryRequirementsInfoNVType

High-level wrapper for VkGeneratedCommandsMemoryRequirementsInfoNV.

Extension: VK_NV_device_generated_commands

API documentation

struct GeneratedCommandsMemoryRequirementsInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • pipeline_bind_point::PipelineBindPoint

  • pipeline::Pipeline

  • indirect_commands_layout::IndirectCommandsLayoutNV

  • max_sequences_count::UInt32

source
Vulkan.GeneratedCommandsMemoryRequirementsInfoNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • pipeline_bind_point::PipelineBindPoint
  • pipeline::Pipeline
  • indirect_commands_layout::IndirectCommandsLayoutNV
  • max_sequences_count::UInt32
  • next::Any: defaults to C_NULL

API documentation

GeneratedCommandsMemoryRequirementsInfoNV(
    pipeline_bind_point::PipelineBindPoint,
    pipeline::Pipeline,
    indirect_commands_layout::IndirectCommandsLayoutNV,
    max_sequences_count::Integer;
    next
) -> GeneratedCommandsMemoryRequirementsInfoNV
source
Vulkan.GeometryAABBNVType

High-level wrapper for VkGeometryAABBNV.

Extension: VK_NV_ray_tracing

API documentation

struct GeometryAABBNV <: Vulkan.HighLevelStruct
  • next::Any

  • aabb_data::Union{Ptr{Nothing}, Buffer}

  • num_aab_bs::UInt32

  • stride::UInt32

  • offset::UInt64

source
Vulkan.GeometryAABBNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • num_aab_bs::UInt32
  • stride::UInt32
  • offset::UInt64
  • next::Any: defaults to C_NULL
  • aabb_data::Buffer: defaults to C_NULL

API documentation

GeometryAABBNV(
    num_aab_bs::Integer,
    stride::Integer,
    offset::Integer;
    next,
    aabb_data
) -> GeometryAABBNV
source
Vulkan.GeometryNVType

High-level wrapper for VkGeometryNV.

Extension: VK_NV_ray_tracing

API documentation

struct GeometryNV <: Vulkan.HighLevelStruct
  • next::Any

  • geometry_type::GeometryTypeKHR

  • geometry::GeometryDataNV

  • flags::GeometryFlagKHR

source
Vulkan.GeometryNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • geometry_type::GeometryTypeKHR
  • geometry::GeometryDataNV
  • next::Any: defaults to C_NULL
  • flags::GeometryFlagKHR: defaults to 0

API documentation

GeometryNV(
    geometry_type::GeometryTypeKHR,
    geometry::GeometryDataNV;
    next,
    flags
) -> GeometryNV
source
Vulkan.GeometryTrianglesNVType

High-level wrapper for VkGeometryTrianglesNV.

Extension: VK_NV_ray_tracing

API documentation

struct GeometryTrianglesNV <: Vulkan.HighLevelStruct
  • next::Any

  • vertex_data::Union{Ptr{Nothing}, Buffer}

  • vertex_offset::UInt64

  • vertex_count::UInt32

  • vertex_stride::UInt64

  • vertex_format::Format

  • index_data::Union{Ptr{Nothing}, Buffer}

  • index_offset::UInt64

  • index_count::UInt32

  • index_type::IndexType

  • transform_data::Union{Ptr{Nothing}, Buffer}

  • transform_offset::UInt64

source
Vulkan.GeometryTrianglesNVMethod

Extension: VK_NV_ray_tracing

Arguments:

  • vertex_offset::UInt64
  • vertex_count::UInt32
  • vertex_stride::UInt64
  • vertex_format::Format
  • index_offset::UInt64
  • index_count::UInt32
  • index_type::IndexType
  • transform_offset::UInt64
  • next::Any: defaults to C_NULL
  • vertex_data::Buffer: defaults to C_NULL
  • index_data::Buffer: defaults to C_NULL
  • transform_data::Buffer: defaults to C_NULL

API documentation

GeometryTrianglesNV(
    vertex_offset::Integer,
    vertex_count::Integer,
    vertex_stride::Integer,
    vertex_format::Format,
    index_offset::Integer,
    index_count::Integer,
    index_type::IndexType,
    transform_offset::Integer;
    next,
    vertex_data,
    index_data,
    transform_data
) -> GeometryTrianglesNV
source
Vulkan.GraphicsPipelineCreateInfoType

High-level wrapper for VkGraphicsPipelineCreateInfo.

API documentation

struct GraphicsPipelineCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::PipelineCreateFlag

  • stages::Vector{PipelineShaderStageCreateInfo}

  • vertex_input_state::Union{Ptr{Nothing}, PipelineVertexInputStateCreateInfo}

  • input_assembly_state::Union{Ptr{Nothing}, PipelineInputAssemblyStateCreateInfo}

  • tessellation_state::Union{Ptr{Nothing}, PipelineTessellationStateCreateInfo}

  • viewport_state::Union{Ptr{Nothing}, PipelineViewportStateCreateInfo}

  • rasterization_state::PipelineRasterizationStateCreateInfo

  • multisample_state::Union{Ptr{Nothing}, PipelineMultisampleStateCreateInfo}

  • depth_stencil_state::Union{Ptr{Nothing}, PipelineDepthStencilStateCreateInfo}

  • color_blend_state::Union{Ptr{Nothing}, PipelineColorBlendStateCreateInfo}

  • dynamic_state::Union{Ptr{Nothing}, PipelineDynamicStateCreateInfo}

  • layout::PipelineLayout

  • render_pass::Union{Ptr{Nothing}, RenderPass}

  • subpass::UInt32

  • base_pipeline_handle::Union{Ptr{Nothing}, Pipeline}

  • base_pipeline_index::Int32

source
Vulkan.GraphicsPipelineCreateInfoMethod

Arguments:

  • stages::Vector{PipelineShaderStageCreateInfo}
  • rasterization_state::PipelineRasterizationStateCreateInfo
  • layout::PipelineLayout
  • subpass::UInt32
  • base_pipeline_index::Int32
  • next::Any: defaults to C_NULL
  • flags::PipelineCreateFlag: defaults to 0
  • vertex_input_state::PipelineVertexInputStateCreateInfo: defaults to C_NULL
  • input_assembly_state::PipelineInputAssemblyStateCreateInfo: defaults to C_NULL
  • tessellation_state::PipelineTessellationStateCreateInfo: defaults to C_NULL
  • viewport_state::PipelineViewportStateCreateInfo: defaults to C_NULL
  • multisample_state::PipelineMultisampleStateCreateInfo: defaults to C_NULL
  • depth_stencil_state::PipelineDepthStencilStateCreateInfo: defaults to C_NULL
  • color_blend_state::PipelineColorBlendStateCreateInfo: defaults to C_NULL
  • dynamic_state::PipelineDynamicStateCreateInfo: defaults to C_NULL
  • render_pass::RenderPass: defaults to C_NULL
  • base_pipeline_handle::Pipeline: defaults to C_NULL

API documentation

GraphicsPipelineCreateInfo(
    stages::AbstractArray,
    rasterization_state::PipelineRasterizationStateCreateInfo,
    layout::PipelineLayout,
    subpass::Integer,
    base_pipeline_index::Integer;
    next,
    flags,
    vertex_input_state,
    input_assembly_state,
    tessellation_state,
    viewport_state,
    multisample_state,
    depth_stencil_state,
    color_blend_state,
    dynamic_state,
    render_pass,
    base_pipeline_handle
) -> GraphicsPipelineCreateInfo
source
Vulkan.GraphicsPipelineShaderGroupsCreateInfoNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • groups::Vector{GraphicsShaderGroupCreateInfoNV}
  • pipelines::Vector{Pipeline}
  • next::Any: defaults to C_NULL

API documentation

GraphicsPipelineShaderGroupsCreateInfoNV(
    groups::AbstractArray,
    pipelines::AbstractArray;
    next
) -> GraphicsPipelineShaderGroupsCreateInfoNV
source
Vulkan.GraphicsShaderGroupCreateInfoNVType

High-level wrapper for VkGraphicsShaderGroupCreateInfoNV.

Extension: VK_NV_device_generated_commands

API documentation

struct GraphicsShaderGroupCreateInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • stages::Vector{PipelineShaderStageCreateInfo}

  • vertex_input_state::Union{Ptr{Nothing}, PipelineVertexInputStateCreateInfo}

  • tessellation_state::Union{Ptr{Nothing}, PipelineTessellationStateCreateInfo}

source
Vulkan.GraphicsShaderGroupCreateInfoNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • stages::Vector{PipelineShaderStageCreateInfo}
  • next::Any: defaults to C_NULL
  • vertex_input_state::PipelineVertexInputStateCreateInfo: defaults to C_NULL
  • tessellation_state::PipelineTessellationStateCreateInfo: defaults to C_NULL

API documentation

GraphicsShaderGroupCreateInfoNV(
    stages::AbstractArray;
    next,
    vertex_input_state,
    tessellation_state
) -> GraphicsShaderGroupCreateInfoNV
source
Vulkan.HandleType

Opaque handle referring to internal Vulkan data. Finalizer registration is taken care of by constructors.

abstract type Handle <: VulkanStruct{false}
source
Vulkan.HdrMetadataEXTType

High-level wrapper for VkHdrMetadataEXT.

Extension: VK_EXT_hdr_metadata

API documentation

struct HdrMetadataEXT <: Vulkan.HighLevelStruct
  • next::Any

  • display_primary_red::XYColorEXT

  • display_primary_green::XYColorEXT

  • display_primary_blue::XYColorEXT

  • white_point::XYColorEXT

  • max_luminance::Float32

  • min_luminance::Float32

  • max_content_light_level::Float32

  • max_frame_average_light_level::Float32

source
Vulkan.HdrMetadataEXTMethod

Extension: VK_EXT_hdr_metadata

Arguments:

  • display_primary_red::XYColorEXT
  • display_primary_green::XYColorEXT
  • display_primary_blue::XYColorEXT
  • white_point::XYColorEXT
  • max_luminance::Float32
  • min_luminance::Float32
  • max_content_light_level::Float32
  • max_frame_average_light_level::Float32
  • next::Any: defaults to C_NULL

API documentation

HdrMetadataEXT(
    display_primary_red::XYColorEXT,
    display_primary_green::XYColorEXT,
    display_primary_blue::XYColorEXT,
    white_point::XYColorEXT,
    max_luminance::Real,
    min_luminance::Real,
    max_content_light_level::Real,
    max_frame_average_light_level::Real;
    next
) -> HdrMetadataEXT
source
Vulkan.ImageMethod

Arguments:

  • device::Device
  • image_type::ImageType
  • format::Format
  • extent::Extent3D
  • mip_levels::UInt32
  • array_layers::UInt32
  • samples::SampleCountFlag
  • tiling::ImageTiling
  • usage::ImageUsageFlag
  • sharing_mode::SharingMode
  • queue_family_indices::Vector{UInt32}
  • initial_layout::ImageLayout
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::ImageCreateFlag: defaults to 0

API documentation

Image(
    device,
    image_type::ImageType,
    format::Format,
    extent::Extent3D,
    mip_levels::Integer,
    array_layers::Integer,
    samples::SampleCountFlag,
    tiling::ImageTiling,
    usage::ImageUsageFlag,
    sharing_mode::SharingMode,
    queue_family_indices::AbstractArray,
    initial_layout::ImageLayout;
    allocator,
    next,
    flags
) -> Image
source
Vulkan.ImageMethod

Arguments:

  • device::Device
  • image_type::ImageType
  • format::Format
  • extent::_Extent3D
  • mip_levels::UInt32
  • array_layers::UInt32
  • samples::SampleCountFlag
  • tiling::ImageTiling
  • usage::ImageUsageFlag
  • sharing_mode::SharingMode
  • queue_family_indices::Vector{UInt32}
  • initial_layout::ImageLayout
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::ImageCreateFlag: defaults to 0

API documentation

Image(
    device,
    image_type::ImageType,
    format::Format,
    extent::_Extent3D,
    mip_levels::Integer,
    array_layers::Integer,
    samples::SampleCountFlag,
    tiling::ImageTiling,
    usage::ImageUsageFlag,
    sharing_mode::SharingMode,
    queue_family_indices::AbstractArray,
    initial_layout::ImageLayout;
    allocator,
    next,
    flags
) -> Image
source
Vulkan.ImageBlitType

High-level wrapper for VkImageBlit.

API documentation

struct ImageBlit <: Vulkan.HighLevelStruct
  • src_subresource::ImageSubresourceLayers

  • src_offsets::Tuple{Offset3D, Offset3D}

  • dst_subresource::ImageSubresourceLayers

  • dst_offsets::Tuple{Offset3D, Offset3D}

source
Vulkan.ImageBlit2Type

High-level wrapper for VkImageBlit2.

API documentation

struct ImageBlit2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_subresource::ImageSubresourceLayers

  • src_offsets::Tuple{Offset3D, Offset3D}

  • dst_subresource::ImageSubresourceLayers

  • dst_offsets::Tuple{Offset3D, Offset3D}

source
Vulkan.ImageBlit2Method

Arguments:

  • src_subresource::ImageSubresourceLayers
  • src_offsets::NTuple{2, Offset3D}
  • dst_subresource::ImageSubresourceLayers
  • dst_offsets::NTuple{2, Offset3D}
  • next::Any: defaults to C_NULL

API documentation

ImageBlit2(
    src_subresource::ImageSubresourceLayers,
    src_offsets::Tuple{Offset3D, Offset3D},
    dst_subresource::ImageSubresourceLayers,
    dst_offsets::Tuple{Offset3D, Offset3D};
    next
) -> ImageBlit2
source
Vulkan.ImageCopyType

High-level wrapper for VkImageCopy.

API documentation

struct ImageCopy <: Vulkan.HighLevelStruct
  • src_subresource::ImageSubresourceLayers

  • src_offset::Offset3D

  • dst_subresource::ImageSubresourceLayers

  • dst_offset::Offset3D

  • extent::Extent3D

source
Vulkan.ImageCopy2Type

High-level wrapper for VkImageCopy2.

API documentation

struct ImageCopy2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_subresource::ImageSubresourceLayers

  • src_offset::Offset3D

  • dst_subresource::ImageSubresourceLayers

  • dst_offset::Offset3D

  • extent::Extent3D

source
Vulkan.ImageCopy2Method

Arguments:

  • src_subresource::ImageSubresourceLayers
  • src_offset::Offset3D
  • dst_subresource::ImageSubresourceLayers
  • dst_offset::Offset3D
  • extent::Extent3D
  • next::Any: defaults to C_NULL

API documentation

ImageCopy2(
    src_subresource::ImageSubresourceLayers,
    src_offset::Offset3D,
    dst_subresource::ImageSubresourceLayers,
    dst_offset::Offset3D,
    extent::Extent3D;
    next
) -> ImageCopy2
source
Vulkan.ImageCreateInfoType

High-level wrapper for VkImageCreateInfo.

API documentation

struct ImageCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::ImageCreateFlag

  • image_type::ImageType

  • format::Format

  • extent::Extent3D

  • mip_levels::UInt32

  • array_layers::UInt32

  • samples::SampleCountFlag

  • tiling::ImageTiling

  • usage::ImageUsageFlag

  • sharing_mode::SharingMode

  • queue_family_indices::Vector{UInt32}

  • initial_layout::ImageLayout

source
Vulkan.ImageCreateInfoMethod

Arguments:

  • image_type::ImageType
  • format::Format
  • extent::Extent3D
  • mip_levels::UInt32
  • array_layers::UInt32
  • samples::SampleCountFlag
  • tiling::ImageTiling
  • usage::ImageUsageFlag
  • sharing_mode::SharingMode
  • queue_family_indices::Vector{UInt32}
  • initial_layout::ImageLayout
  • next::Any: defaults to C_NULL
  • flags::ImageCreateFlag: defaults to 0

API documentation

ImageCreateInfo(
    image_type::ImageType,
    format::Format,
    extent::Extent3D,
    mip_levels::Integer,
    array_layers::Integer,
    samples::SampleCountFlag,
    tiling::ImageTiling,
    usage::ImageUsageFlag,
    sharing_mode::SharingMode,
    queue_family_indices::AbstractArray,
    initial_layout::ImageLayout;
    next,
    flags
) -> ImageCreateInfo
source
Vulkan.ImageDrmFormatModifierExplicitCreateInfoEXTMethod

Extension: VK_EXT_image_drm_format_modifier

Arguments:

  • drm_format_modifier::UInt64
  • plane_layouts::Vector{SubresourceLayout}
  • next::Any: defaults to C_NULL

API documentation

ImageDrmFormatModifierExplicitCreateInfoEXT(
    drm_format_modifier::Integer,
    plane_layouts::AbstractArray;
    next
) -> ImageDrmFormatModifierExplicitCreateInfoEXT
source
Vulkan.ImageFormatPropertiesType

High-level wrapper for VkImageFormatProperties.

API documentation

struct ImageFormatProperties <: Vulkan.HighLevelStruct
  • max_extent::Extent3D

  • max_mip_levels::UInt32

  • max_array_layers::UInt32

  • sample_counts::SampleCountFlag

  • max_resource_size::UInt64

source
Vulkan.ImageFormatPropertiesMethod

Arguments:

  • max_extent::Extent3D
  • max_mip_levels::UInt32
  • max_array_layers::UInt32
  • max_resource_size::UInt64
  • sample_counts::SampleCountFlag: defaults to 0

API documentation

ImageFormatProperties(
    max_extent::Extent3D,
    max_mip_levels::Integer,
    max_array_layers::Integer,
    max_resource_size::Integer;
    sample_counts
) -> ImageFormatProperties
source
Vulkan.ImageMemoryBarrierType

High-level wrapper for VkImageMemoryBarrier.

API documentation

struct ImageMemoryBarrier <: Vulkan.HighLevelStruct
  • next::Any

  • src_access_mask::AccessFlag

  • dst_access_mask::AccessFlag

  • old_layout::ImageLayout

  • new_layout::ImageLayout

  • src_queue_family_index::UInt32

  • dst_queue_family_index::UInt32

  • image::Image

  • subresource_range::ImageSubresourceRange

source
Vulkan.ImageMemoryBarrierMethod

Arguments:

  • src_access_mask::AccessFlag
  • dst_access_mask::AccessFlag
  • old_layout::ImageLayout
  • new_layout::ImageLayout
  • src_queue_family_index::UInt32
  • dst_queue_family_index::UInt32
  • image::Image
  • subresource_range::ImageSubresourceRange
  • next::Any: defaults to C_NULL

API documentation

ImageMemoryBarrier(
    src_access_mask::AccessFlag,
    dst_access_mask::AccessFlag,
    old_layout::ImageLayout,
    new_layout::ImageLayout,
    src_queue_family_index::Integer,
    dst_queue_family_index::Integer,
    image::Image,
    subresource_range::ImageSubresourceRange;
    next
) -> ImageMemoryBarrier
source
Vulkan.ImageMemoryBarrier2Type

High-level wrapper for VkImageMemoryBarrier2.

API documentation

struct ImageMemoryBarrier2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_stage_mask::UInt64

  • src_access_mask::UInt64

  • dst_stage_mask::UInt64

  • dst_access_mask::UInt64

  • old_layout::ImageLayout

  • new_layout::ImageLayout

  • src_queue_family_index::UInt32

  • dst_queue_family_index::UInt32

  • image::Image

  • subresource_range::ImageSubresourceRange

source
Vulkan.ImageMemoryBarrier2Method

Arguments:

  • old_layout::ImageLayout
  • new_layout::ImageLayout
  • src_queue_family_index::UInt32
  • dst_queue_family_index::UInt32
  • image::Image
  • subresource_range::ImageSubresourceRange
  • next::Any: defaults to C_NULL
  • src_stage_mask::UInt64: defaults to 0
  • src_access_mask::UInt64: defaults to 0
  • dst_stage_mask::UInt64: defaults to 0
  • dst_access_mask::UInt64: defaults to 0

API documentation

ImageMemoryBarrier2(
    old_layout::ImageLayout,
    new_layout::ImageLayout,
    src_queue_family_index::Integer,
    dst_queue_family_index::Integer,
    image::Image,
    subresource_range::ImageSubresourceRange;
    next,
    src_stage_mask,
    src_access_mask,
    dst_stage_mask,
    dst_access_mask
) -> ImageMemoryBarrier2
source
Vulkan.ImageResolveType

High-level wrapper for VkImageResolve.

API documentation

struct ImageResolve <: Vulkan.HighLevelStruct
  • src_subresource::ImageSubresourceLayers

  • src_offset::Offset3D

  • dst_subresource::ImageSubresourceLayers

  • dst_offset::Offset3D

  • extent::Extent3D

source
Vulkan.ImageResolve2Type

High-level wrapper for VkImageResolve2.

API documentation

struct ImageResolve2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_subresource::ImageSubresourceLayers

  • src_offset::Offset3D

  • dst_subresource::ImageSubresourceLayers

  • dst_offset::Offset3D

  • extent::Extent3D

source
Vulkan.ImageResolve2Method

Arguments:

  • src_subresource::ImageSubresourceLayers
  • src_offset::Offset3D
  • dst_subresource::ImageSubresourceLayers
  • dst_offset::Offset3D
  • extent::Extent3D
  • next::Any: defaults to C_NULL

API documentation

ImageResolve2(
    src_subresource::ImageSubresourceLayers,
    src_offset::Offset3D,
    dst_subresource::ImageSubresourceLayers,
    dst_offset::Offset3D,
    extent::Extent3D;
    next
) -> ImageResolve2
source
Vulkan.ImageSubresourceRangeType

High-level wrapper for VkImageSubresourceRange.

API documentation

struct ImageSubresourceRange <: Vulkan.HighLevelStruct
  • aspect_mask::ImageAspectFlag

  • base_mip_level::UInt32

  • level_count::UInt32

  • base_array_layer::UInt32

  • layer_count::UInt32

source
Vulkan.ImageViewMethod

Arguments:

  • device::Device
  • image::Image
  • view_type::ImageViewType
  • format::Format
  • components::ComponentMapping
  • subresource_range::ImageSubresourceRange
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::ImageViewCreateFlag: defaults to 0

API documentation

ImageView(
    device,
    image,
    view_type::ImageViewType,
    format::Format,
    components::ComponentMapping,
    subresource_range::ImageSubresourceRange;
    allocator,
    next,
    flags
) -> ImageView
source
Vulkan.ImageViewMethod

Arguments:

  • device::Device
  • image::Image
  • view_type::ImageViewType
  • format::Format
  • components::_ComponentMapping
  • subresource_range::_ImageSubresourceRange
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::ImageViewCreateFlag: defaults to 0

API documentation

ImageView(
    device,
    image,
    view_type::ImageViewType,
    format::Format,
    components::_ComponentMapping,
    subresource_range::_ImageSubresourceRange;
    allocator,
    next,
    flags
) -> ImageView
source
Vulkan.ImageViewCreateInfoType

High-level wrapper for VkImageViewCreateInfo.

API documentation

struct ImageViewCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::ImageViewCreateFlag

  • image::Image

  • view_type::ImageViewType

  • format::Format

  • components::ComponentMapping

  • subresource_range::ImageSubresourceRange

source
Vulkan.ImageViewCreateInfoMethod

Arguments:

  • image::Image
  • view_type::ImageViewType
  • format::Format
  • components::ComponentMapping
  • subresource_range::ImageSubresourceRange
  • next::Any: defaults to C_NULL
  • flags::ImageViewCreateFlag: defaults to 0

API documentation

ImageViewCreateInfo(
    image::Image,
    view_type::ImageViewType,
    format::Format,
    components::ComponentMapping,
    subresource_range::ImageSubresourceRange;
    next,
    flags
) -> ImageViewCreateInfo
source
Vulkan.ImageViewHandleInfoNVXType

High-level wrapper for VkImageViewHandleInfoNVX.

Extension: VK_NVX_image_view_handle

API documentation

struct ImageViewHandleInfoNVX <: Vulkan.HighLevelStruct
  • next::Any

  • image_view::ImageView

  • descriptor_type::DescriptorType

  • sampler::Union{Ptr{Nothing}, Sampler}

source
Vulkan.ImageViewHandleInfoNVXMethod

Extension: VK_NVX_image_view_handle

Arguments:

  • image_view::ImageView
  • descriptor_type::DescriptorType
  • next::Any: defaults to C_NULL
  • sampler::Sampler: defaults to C_NULL

API documentation

ImageViewHandleInfoNVX(
    image_view::ImageView,
    descriptor_type::DescriptorType;
    next,
    sampler
) -> ImageViewHandleInfoNVX
source
Vulkan.ImportFenceFdInfoKHRType

High-level wrapper for VkImportFenceFdInfoKHR.

Extension: VK_KHR_external_fence_fd

API documentation

struct ImportFenceFdInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • fence::Fence

  • flags::FenceImportFlag

  • handle_type::ExternalFenceHandleTypeFlag

  • fd::Int64

source
Vulkan.ImportFenceFdInfoKHRMethod

Extension: VK_KHR_external_fence_fd

Arguments:

  • fence::Fence (externsync)
  • handle_type::ExternalFenceHandleTypeFlag
  • fd::Int
  • next::Any: defaults to C_NULL
  • flags::FenceImportFlag: defaults to 0

API documentation

ImportFenceFdInfoKHR(
    fence::Fence,
    handle_type::ExternalFenceHandleTypeFlag,
    fd::Integer;
    next,
    flags
) -> ImportFenceFdInfoKHR
source
Vulkan.ImportMemoryFdInfoKHRType

High-level wrapper for VkImportMemoryFdInfoKHR.

Extension: VK_KHR_external_memory_fd

API documentation

struct ImportMemoryFdInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • handle_type::ExternalMemoryHandleTypeFlag

  • fd::Int64

source
Vulkan.ImportMemoryFdInfoKHRMethod

Extension: VK_KHR_external_memory_fd

Arguments:

  • fd::Int
  • next::Any: defaults to C_NULL
  • handle_type::ExternalMemoryHandleTypeFlag: defaults to 0

API documentation

ImportMemoryFdInfoKHR(
    fd::Integer;
    next,
    handle_type
) -> ImportMemoryFdInfoKHR
source
Vulkan.ImportMemoryHostPointerInfoEXTType

High-level wrapper for VkImportMemoryHostPointerInfoEXT.

Extension: VK_EXT_external_memory_host

API documentation

struct ImportMemoryHostPointerInfoEXT <: Vulkan.HighLevelStruct
  • next::Any

  • handle_type::ExternalMemoryHandleTypeFlag

  • host_pointer::Ptr{Nothing}

source
Vulkan.ImportMemoryHostPointerInfoEXTMethod

Extension: VK_EXT_external_memory_host

Arguments:

  • handle_type::ExternalMemoryHandleTypeFlag
  • host_pointer::Ptr{Cvoid}
  • next::Any: defaults to C_NULL

API documentation

ImportMemoryHostPointerInfoEXT(
    handle_type::ExternalMemoryHandleTypeFlag,
    host_pointer::Ptr{Nothing};
    next
) -> ImportMemoryHostPointerInfoEXT
source
Vulkan.ImportSemaphoreFdInfoKHRType

High-level wrapper for VkImportSemaphoreFdInfoKHR.

Extension: VK_KHR_external_semaphore_fd

API documentation

struct ImportSemaphoreFdInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • semaphore::Semaphore

  • flags::SemaphoreImportFlag

  • handle_type::ExternalSemaphoreHandleTypeFlag

  • fd::Int64

source
Vulkan.ImportSemaphoreFdInfoKHRMethod

Extension: VK_KHR_external_semaphore_fd

Arguments:

  • semaphore::Semaphore (externsync)
  • handle_type::ExternalSemaphoreHandleTypeFlag
  • fd::Int
  • next::Any: defaults to C_NULL
  • flags::SemaphoreImportFlag: defaults to 0

API documentation

ImportSemaphoreFdInfoKHR(
    semaphore::Semaphore,
    handle_type::ExternalSemaphoreHandleTypeFlag,
    fd::Integer;
    next,
    flags
) -> ImportSemaphoreFdInfoKHR
source
Vulkan.IndirectCommandsLayoutCreateInfoNVType

High-level wrapper for VkIndirectCommandsLayoutCreateInfoNV.

Extension: VK_NV_device_generated_commands

API documentation

struct IndirectCommandsLayoutCreateInfoNV <: Vulkan.HighLevelStruct
  • next::Any

  • flags::IndirectCommandsLayoutUsageFlagNV

  • pipeline_bind_point::PipelineBindPoint

  • tokens::Vector{IndirectCommandsLayoutTokenNV}

  • stream_strides::Vector{UInt32}

source
Vulkan.IndirectCommandsLayoutCreateInfoNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • pipeline_bind_point::PipelineBindPoint
  • tokens::Vector{IndirectCommandsLayoutTokenNV}
  • stream_strides::Vector{UInt32}
  • next::Any: defaults to C_NULL
  • flags::IndirectCommandsLayoutUsageFlagNV: defaults to 0

API documentation

IndirectCommandsLayoutCreateInfoNV(
    pipeline_bind_point::PipelineBindPoint,
    tokens::AbstractArray,
    stream_strides::AbstractArray;
    next,
    flags
) -> IndirectCommandsLayoutCreateInfoNV
source
Vulkan.IndirectCommandsLayoutNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • device::Device
  • pipeline_bind_point::PipelineBindPoint
  • tokens::Vector{IndirectCommandsLayoutTokenNV}
  • stream_strides::Vector{UInt32}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::IndirectCommandsLayoutUsageFlagNV: defaults to 0

API documentation

IndirectCommandsLayoutNV(
    device,
    pipeline_bind_point::PipelineBindPoint,
    tokens::AbstractArray,
    stream_strides::AbstractArray;
    allocator,
    next,
    flags
) -> IndirectCommandsLayoutNV
source
Vulkan.IndirectCommandsLayoutNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • device::Device
  • pipeline_bind_point::PipelineBindPoint
  • tokens::Vector{_IndirectCommandsLayoutTokenNV}
  • stream_strides::Vector{UInt32}
  • allocator::_AllocationCallbacks: defaults to C_NULL
  • next::Ptr{Cvoid}: defaults to C_NULL
  • flags::IndirectCommandsLayoutUsageFlagNV: defaults to 0

API documentation

IndirectCommandsLayoutNV(
    device,
    pipeline_bind_point::PipelineBindPoint,
    tokens::AbstractArray{_IndirectCommandsLayoutTokenNV},
    stream_strides::AbstractArray;
    allocator,
    next,
    flags
) -> IndirectCommandsLayoutNV
source
Vulkan.IndirectCommandsLayoutTokenNVType

High-level wrapper for VkIndirectCommandsLayoutTokenNV.

Extension: VK_NV_device_generated_commands

API documentation

struct IndirectCommandsLayoutTokenNV <: Vulkan.HighLevelStruct
  • next::Any

  • token_type::IndirectCommandsTokenTypeNV

  • stream::UInt32

  • offset::UInt32

  • vertex_binding_unit::UInt32

  • vertex_dynamic_stride::Bool

  • pushconstant_pipeline_layout::Union{Ptr{Nothing}, PipelineLayout}

  • pushconstant_shader_stage_flags::ShaderStageFlag

  • pushconstant_offset::UInt32

  • pushconstant_size::UInt32

  • indirect_state_flags::IndirectStateFlagNV

  • index_types::Vector{IndexType}

  • index_type_values::Vector{UInt32}

source
Vulkan.IndirectCommandsLayoutTokenNVMethod

Extension: VK_NV_device_generated_commands

Arguments:

  • token_type::IndirectCommandsTokenTypeNV
  • stream::UInt32
  • offset::UInt32
  • vertex_binding_unit::UInt32
  • vertex_dynamic_stride::Bool
  • pushconstant_offset::UInt32
  • pushconstant_size::UInt32
  • index_types::Vector{IndexType}
  • index_type_values::Vector{UInt32}
  • next::Any: defaults to C_NULL
  • pushconstant_pipeline_layout::PipelineLayout: defaults to C_NULL
  • pushconstant_shader_stage_flags::ShaderStageFlag: defaults to 0
  • indirect_state_flags::IndirectStateFlagNV: defaults to 0

API documentation

IndirectCommandsLayoutTokenNV(
    token_type::IndirectCommandsTokenTypeNV,
    stream::Integer,
    offset::Integer,
    vertex_binding_unit::Integer,
    vertex_dynamic_stride::Bool,
    pushconstant_offset::Integer,
    pushconstant_size::Integer,
    index_types::AbstractArray,
    index_type_values::AbstractArray;
    next,
    pushconstant_pipeline_layout,
    pushconstant_shader_stage_flags,
    indirect_state_flags
) -> IndirectCommandsLayoutTokenNV
source
Vulkan.InstanceMethod

Arguments:

  • enabled_layer_names::Vector{String}
  • enabled_extension_names::Vector{String}
  • allocator::AllocationCallbacks: defaults to C_NULL
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • application_info::ApplicationInfo: defaults to C_NULL

API documentation

Instance(
    enabled_layer_names::AbstractArray,
    enabled_extension_names::AbstractArray;
    allocator,
    next,
    flags,
    application_info
) -> Instance
source
Vulkan.InstanceCreateInfoType

High-level wrapper for VkInstanceCreateInfo.

API documentation

struct InstanceCreateInfo <: Vulkan.HighLevelStruct
  • next::Any

  • flags::UInt32

  • application_info::Union{Ptr{Nothing}, ApplicationInfo}

  • enabled_layer_names::Vector{String}

  • enabled_extension_names::Vector{String}

source
Vulkan.InstanceCreateInfoMethod

Arguments:

  • enabled_layer_names::Vector{String}
  • enabled_extension_names::Vector{String}
  • next::Any: defaults to C_NULL
  • flags::UInt32: defaults to 0
  • application_info::ApplicationInfo: defaults to C_NULL

API documentation

InstanceCreateInfo(
    enabled_layer_names::AbstractArray,
    enabled_extension_names::AbstractArray;
    next,
    flags,
    application_info
) -> InstanceCreateInfo
source
Vulkan.LayerPropertiesType

High-level wrapper for VkLayerProperties.

API documentation

struct LayerProperties <: Vulkan.HighLevelStruct
  • layer_name::String

  • spec_version::VersionNumber

  • implementation_version::VersionNumber

  • description::String

source
Vulkan.MappedMemoryRangeMethod

Arguments:

  • memory::DeviceMemory
  • offset::UInt64
  • size::UInt64
  • next::Any: defaults to C_NULL

API documentation

MappedMemoryRange(
    memory::DeviceMemory,
    offset::Integer,
    size::Integer;
    next
) -> MappedMemoryRange
source
Vulkan.MemoryAllocateInfoMethod

Arguments:

  • allocation_size::UInt64
  • memory_type_index::UInt32
  • next::Any: defaults to C_NULL

API documentation

MemoryAllocateInfo(
    allocation_size::Integer,
    memory_type_index::Integer;
    next
) -> MemoryAllocateInfo
source
Vulkan.MemoryBarrierMethod

Arguments:

  • next::Any: defaults to C_NULL
  • src_access_mask::AccessFlag: defaults to 0
  • dst_access_mask::AccessFlag: defaults to 0

API documentation

MemoryBarrier(
;
    next,
    src_access_mask,
    dst_access_mask
) -> MemoryBarrier
source
Vulkan.MemoryBarrier2Type

High-level wrapper for VkMemoryBarrier2.

API documentation

struct MemoryBarrier2 <: Vulkan.HighLevelStruct
  • next::Any

  • src_stage_mask::UInt64

  • src_access_mask::UInt64

  • dst_stage_mask::UInt64

  • dst_access_mask::UInt64

source
Vulkan.MemoryBarrier2Method

Arguments:

  • next::Any: defaults to C_NULL
  • src_stage_mask::UInt64: defaults to 0
  • src_access_mask::UInt64: defaults to 0
  • dst_stage_mask::UInt64: defaults to 0
  • dst_access_mask::UInt64: defaults to 0

API documentation

MemoryBarrier2(
;
    next,
    src_stage_mask,
    src_access_mask,
    dst_stage_mask,
    dst_access_mask
) -> MemoryBarrier2
source
Vulkan.MemoryDedicatedRequirementsMethod

Arguments:

  • prefers_dedicated_allocation::Bool
  • requires_dedicated_allocation::Bool
  • next::Any: defaults to C_NULL

API documentation

MemoryDedicatedRequirements(
    prefers_dedicated_allocation::Bool,
    requires_dedicated_allocation::Bool;
    next
) -> MemoryDedicatedRequirements
source
Vulkan.MemoryGetFdInfoKHRType

High-level wrapper for VkMemoryGetFdInfoKHR.

Extension: VK_KHR_external_memory_fd

API documentation

struct MemoryGetFdInfoKHR <: Vulkan.HighLevelStruct
  • next::Any

  • memory::DeviceMemory

  • handle_type::ExternalMemoryHandleTypeFlag

source
Vulkan.MemoryGetFdInfoKHRMethod

Extension: VK_KHR_external_memory_fd

Arguments:

  • memory::DeviceMemory
  • handle_type::ExternalMemoryHandleTypeFlag
  • next::Any: defaults to C_NULL

API documentation

MemoryGetFdInfoKHR(
    memory::DeviceMemory,
    handle_type::ExternalMemoryHandleTypeFlag;
    next
) -> MemoryGetFdInfoKHR
source
Vulkan.MemoryGetRemoteAddressInfoNVMethod

Extension: VK_NV_external_memory_rdma

Arguments:

  • memory::DeviceMemory
  • handle_type::ExternalMemoryHandleTypeFlag
  • next::Any: defaults to C_NULL

API documentation

MemoryGetRemoteAddressInfoNV(
    memory::DeviceMemory,
    handle_type::ExternalMemoryHandleTypeFlag;
    next
) -> MemoryGetRemoteAddressInfoNV
source