VkBufferDeviceAddressCreateInfoEXT(3)

# VkBufferDeviceAddressCreateInfoEXT(3) Manual Page

## Name

VkBufferDeviceAddressCreateInfoEXT - Request a specific address for a buffer

Loading… please wait.

## C Specification

Alternatively, to request a specific device address for a buffer, add a VkBufferDeviceAddressCreateInfoEXT structure to the `pNext` chain of the VkBufferCreateInfo structure. The `VkBufferDeviceAddressCreateInfoEXT` structure is defined as:

    // Provided by VK_EXT_buffer_device_address
    typedef struct VkBufferDeviceAddressCreateInfoEXT {
        VkStructureType    sType;
        const void*        pNext;
        VkDeviceAddress    deviceAddress;
    } VkBufferDeviceAddressCreateInfoEXT;

## Members

- `sType` is the type of this structure.

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

- `deviceAddress` is the device address requested for the buffer.

## Description

If `deviceAddress` is zero, no specific address is requested.

If `deviceAddress` is not zero, then it must be an address retrieved from an identically created buffer on the same implementation. The buffer must also be bound to an identically created `VkDeviceMemory` object.

If this structure is not present, it is as if `deviceAddress` is zero.

Apps should avoid creating buffers with app-provided addresses and implementation-provided addresses in the same process, to reduce the likelihood of `VK_ERROR_INVALID_DEVICE_ADDRESS_EXT` errors.

Valid Usage (Implicit)

- VUID-VkBufferDeviceAddressCreateInfoEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT`

## See Also

VK_EXT_buffer_device_address, `VkDeviceAddress`, 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-2022 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0