VKDESCRIPTORTYPE(3)

NAME
VkDescriptorType - Specifies the type of a descriptor in a descriptor set.

C SPECIFICATION

    typedef enum VkDescriptorType {
        VK_DESCRIPTOR_TYPE_SAMPLER = 0,
        VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,
        VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,
        VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,
        VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,
        VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,
        VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,
        VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,
        VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,
        VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,
        VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,
    } VkDescriptorType;

CONSTANTS

VK_DESCRIPTOR_TYPE_SAMPLER
    Identifies a sampler descriptor which refers the state of a sampler object. A descriptor of this type enables shaders to perform filtered sampling of any compatible image resource using the referenced sampler in conjunction with a corresponding sampled image descriptor.

VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
    Identifies a combined image sampler descriptor which refers the state of a sampler object and an image view object being in a compatible image layout. A descriptor of this type enables shaders to perform filtered or unfiltered sampling of the referenced image view using the referenced sampler. This descriptor type is compatible with image views having one of the following image layouts: VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, or VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL. This descriptor type is compatible with image views of image objects created with the VK_IMAGE_USAGE_SAMPLED_BIT usage flag.

VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE
    Identifies a sampled image descriptor which refers the state of an image view object being in a compatible image layout. A descriptor of this type enables shaders to perform unfiltered sampling of the referenced image view, or can be used in conjunction with a sampler descriptor to perform filtered sampling of the referenced image view. This descriptor type is compatible with image views in any of the following layouts: VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, or VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL. This descriptor type is compatible with image views of image objects created with the VK_IMAGE_USAGE_SAMPLED_BIT usage flag.

VK_DESCRIPTOR_TYPE_STORAGE_IMAGE
    Identifies a storage image descriptor which refers the state of an image view object being in a compatible image layout. A descriptor of this type enables shaders to perform loads, stores, and atomic operations on the referenced image view. This descriptor type is compatible with image views in any of the following layouts: VK_IMAGE_LAYOUT_GENERAL or VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL. However, stores and atomic operations can only be performed on image views in the VK_IMAGE_LAYOUT_GENERAL layout. This descriptor type is compatible with image views of image objects created with the VK_IMAGE_USAGE_STORAGE_BIT usage flag.

VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER
    Identifies a uniform texel buffer descriptor which refers the state of a buffer view object. A descriptor of this type enables shaders to perform reads of uniform texel data from the referenced buffer view.

VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER
    Identifies a storage texel buffer descriptor which refers the state of a buffer view object. A descriptor of this type enables shaders to perform loads, stores, and atomic operations on the texel data of the referenced buffer view.

VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER
    Identifies a uniform buffer descriptor which refers the state of a buffer view object. A descriptor of this type enables shaders to perform reads of uniform block data in the referenced buffer and offset.

VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
    Identifies a storage buffer descriptor which refers the state of a buffer view object. A descriptor of this type enables shaders to perform loads, stores, and atomic operations of storage block data in the referenced buffer and offset.

VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
    Identifies a uniform buffer descriptor with dynamic offset support. The only difference compared to VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER is that descriptors of this type do not take their offset parameter from the buffer view’s corresponding state, but instead allow the application to specify the offset value dynamically at the time the descriptor set containing the descriptor is bound using vkCmdBindDescriptorSets.

VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
    Identifies a storage buffer descriptor with dynamic offset support. The only difference compared to VK_DESCRIPTOR_TYPE_STORAGE_BUFFER is that descriptors of this type do not take their offset parameter from the buffer view’s corresponding state, but instead allow the application to specify the offset value dynamically at the time the descriptor set containing the descriptor is bound using vkCmdBindDescriptorSets.

VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT
    Identifies an input attachment descriptor which refers to the state of an attachment view object. A descriptor of this type enables shaders to perform loads from images on the referenced attachment view. This descriptor type is compatible with image views in any of the following layouts: VK_IMAGE_LAYOUT_GENERAL or VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL. This descriptor type is compatible with image views of image objects created with the VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT usage flag.

DESCRIPTION

The constants of this enumeration are used to identify the type of the descriptors in various descriptor set and descriptor pool handling commands.

SEE ALSO

VkDescriptorSetLayoutBinding

COPYRIGHT

Copyright © 2014-2016 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.

AUTHOR

Khronos Group
    Author.