# VkPhysicalDeviceDescriptorBufferFeaturesEXT(3) Manual Page

## Name

VkPhysicalDeviceDescriptorBufferFeaturesEXT - Structure describing the descriptor buffer features that can be supported by an implementation

Loading… please wait.

## C Specification

The `VkPhysicalDeviceDescriptorBufferFeaturesEXT` structure is defined as:

    // Provided by VK_EXT_descriptor_buffer
    typedef struct VkPhysicalDeviceDescriptorBufferFeaturesEXT {
        VkStructureType    sType;
        void*              pNext;
        VkBool32           descriptorBuffer;
        VkBool32           descriptorBufferCaptureReplay;
        VkBool32           descriptorBufferImageLayoutIgnored;
        VkBool32           descriptorBufferPushDescriptors;
    } VkPhysicalDeviceDescriptorBufferFeaturesEXT;

## Members

This structure describes the following feature:

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `descriptorBuffer` indicates that the implementation supports putting shader-accessible descriptors directly in memory.

- `descriptorBufferCaptureReplay` indicates that the implementation supports capture and replay when using descriptor buffers. If this is `VK_TRUE`, all resources created with `VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT`, `VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT`, `VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT`, `VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT`, or `VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT` must be created before resources of the same types without those flags.

- `descriptorBufferImageLayoutIgnored` indicates that the implementation will ignore `imageLayout` in `VkDescriptorImageInfo` when calling vkGetDescriptorEXT.

- `descriptorBufferPushDescriptors` indicates that the implementation supports using push descriptors with descriptor buffers.

## Description

If the `VkPhysicalDeviceDescriptorBufferFeaturesEXT` structure is included in the `pNext` chain of the VkPhysicalDeviceFeatures2 structure passed to vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. If the application wishes to use a VkDevice with any features described by `VkPhysicalDeviceDescriptorBufferFeaturesEXT`, it must add an instance of the structure, with the desired feature members set to `VK_TRUE`, to the `pNext` chain of VkDeviceCreateInfo when creating the VkDevice.

Valid Usage (Implicit)

- VUID-VkPhysicalDeviceDescriptorBufferFeaturesEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT`

## See Also

VK_EXT_descriptor_buffer, VkBool32, VkStructureType

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0