1// Copyright 2018-2022 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_EXT_buffer_device_address.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2019-01-06 11*IP Status*:: 12 No known IP claims. 13*Interactions and External Dependencies*:: 14 - This extension requires 15 {spirv}/EXT/SPV_EXT_physical_storage_buffer.html[`SPV_EXT_physical_storage_buffer`] 16 - This extension provides API support for 17 {GLSLregistry}/ext/GLSL_EXT_buffer_reference.txt[`GLSL_EXT_buffer_reference`] 18 and 19 {GLSLregistry}/ext/GLSL_EXT_buffer_reference_uvec2.txt[`GLSL_EXT_buffer_reference_uvec2`] 20*Contributors*:: 21 - Jeff Bolz, NVIDIA 22 - Neil Henning, AMD 23 - Tobias Hector, AMD 24 - Jason Ekstrand, Intel 25 - Baldur Karlsson, Valve 26 27=== Description 28 29This extension allows the application to query a 64-bit buffer device 30address value for a buffer, which can be used to access the buffer memory 31via the code:PhysicalStorageBufferEXT storage class in the 32{GLSLregistry}/ext/GLSL_EXT_buffer_reference.txt[`GL_EXT_buffer_reference`] 33GLSL extension and 34{spirv}/EXT/SPV_EXT_physical_storage_buffer.html[`SPV_EXT_physical_storage_buffer`] 35SPIR-V extension. 36 37It also allows buffer device addresses to be provided by a trace replay 38tool, so that it matches the address used when the trace was captured. 39 40include::{generated}/interfaces/VK_EXT_buffer_device_address.adoc[] 41 42=== New SPIR-V Capabilities 43 44 * <<spirvenv-capabilities-table-PhysicalStorageBufferAddresses, 45 code:PhysicalStorageBufferAddressesEXT>> 46 47=== Issues 48 491) Where is VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT 50and VkPhysicalDeviceBufferAddressFeaturesEXT? 51 52*RESOLVED*: They were renamed as 53ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT 54and slink:VkPhysicalDeviceBufferDeviceAddressFeaturesEXT accordingly for 55consistency. 56Even though, the old names can still be found in the generated header files 57for compatibility. 58 59=== Version History 60 61 * Revision 1, 2018-11-01 (Jeff Bolz) 62 ** Internal revisions 63 * Revision 2, 2019-01-06 (Jon Leech) 64 ** Minor updates to appendix for publication 65