Structures
VkPhysicalDevice16BitStorageFeatures
Structure describing features supported by VK_KHR_16bit_storage
The VkPhysicalDevice16BitStorageFeatures structure is defined as:
typedef struct VkPhysicalDevice16BitStorageFeatures {
VkStructureType sType;
void* pNext;
VkBool32 storageBuffer16BitAccess;
VkBool32 uniformAndStorageBuffer16BitAccess;
VkBool32 storagePushConstant16;
VkBool32 storageInputOutput16;
} VkPhysicalDevice16BitStorageFeatures;
or the equivalent
typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;
This structure describes the following features:
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.-
storageBuffer16BitAccess
specifies whether objects in theStorageBuffer
,ShaderRecordBufferKHR
, orPhysicalStorageBuffer
storage class with theBlock
decoration can have 16-bit integer and 16-bit floating-point members. If this feature is not enabled, 16-bit integer or 16-bit floating-point members must not be used in such objects. This also specifies whether shader modules can declare theStorageBuffer16BitAccess
capability. uniformAndStorageBuffer16BitAccess
specifies whether objects in theUniform
storage class with theBlock
decoration can have 16-bit integer and 16-bit floating-point members. If this feature is not enabled, 16-bit integer or 16-bit floating-point members must not be used in such objects. This also specifies whether shader modules can declare theUniformAndStorageBuffer16BitAccess
capability.storagePushConstant16
specifies whether objects in thePushConstant
storage class can have 16-bit integer and 16-bit floating-point members. If this feature is not enabled, 16-bit integer or floating-point members must not be used in such objects. This also specifies whether shader modules can declare theStoragePushConstant16
capability.storageInputOutput16
specifies whether objects in theInput
andOutput
storage classes can have 16-bit integer and 16-bit floating-point members. If this feature is not enabled, 16-bit integer or 16-bit floating-point members must not be used in such objects. This also specifies whether shader modules can declare theStorageInputOutput16
capability.
If the VkPhysicalDevice16BitStorageFeatures
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.
VkPhysicalDevice16BitStorageFeatures
can also be used in the pNext
chain of
VkDeviceCreateInfo to selectively enable these features.
Valid Usage (Implicit)
VUID-VkPhysicalDevice16BitStorageFeatures-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES