Commit 72517ff1 authored by Liam Middlebrook's avatar Liam Middlebrook Committed by Alexandre Julliard

winevulkan: Update to VK spec version 1.2.149.

parent 449d323d
...@@ -64,7 +64,7 @@ from enum import Enum ...@@ -64,7 +64,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan") LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler()) LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.2.148" VK_XML_VERSION = "1.2.149"
WINE_VK_VERSION = (1, 2) WINE_VK_VERSION = (1, 2)
# Filenames to create. # Filenames to create.
......
...@@ -2790,6 +2790,23 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea ...@@ -2790,6 +2790,23 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
break; break;
} }
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:
{
const VkPhysicalDevice4444FormatsFeaturesEXT *in = (const VkPhysicalDevice4444FormatsFeaturesEXT *)in_header;
VkPhysicalDevice4444FormatsFeaturesEXT *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->formatA4R4G4B4 = in->formatA4R4G4B4;
out->formatA4B4G4R4 = in->formatA4B4G4R4;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
default: default:
FIXME("Application requested a linked structure of type %u.\n", in_header->sType); FIXME("Application requested a linked structure of type %u.\n", in_header->sType);
} }
...@@ -5798,6 +5815,7 @@ static const char * const vk_device_extensions[] = ...@@ -5798,6 +5815,7 @@ static const char * const vk_device_extensions[] =
"VK_AMD_shader_info", "VK_AMD_shader_info",
"VK_AMD_shader_trinary_minmax", "VK_AMD_shader_trinary_minmax",
"VK_AMD_texture_gather_bias_lod", "VK_AMD_texture_gather_bias_lod",
"VK_EXT_4444_formats",
"VK_EXT_astc_decode_mode", "VK_EXT_astc_decode_mode",
"VK_EXT_blend_operation_advanced", "VK_EXT_blend_operation_advanced",
"VK_EXT_buffer_device_address", "VK_EXT_buffer_device_address",
......
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
"file_format_version": "1.0.0", "file_format_version": "1.0.0",
"ICD": { "ICD": {
"library_path": ".\\winevulkan.dll", "library_path": ".\\winevulkan.dll",
"api_version": "1.2.148" "api_version": "1.2.149"
} }
} }
...@@ -381,6 +381,8 @@ ...@@ -381,6 +381,8 @@
#define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2" #define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2"
#define VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION 1 #define VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION 1
#define VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_image_robustness" #define VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_image_robustness"
#define VK_EXT_4444_FORMATS_SPEC_VERSION 1
#define VK_EXT_4444_FORMATS_EXTENSION_NAME "VK_EXT_4444_formats"
#define VK_MAKE_VERSION(major, minor, patch) \ #define VK_MAKE_VERSION(major, minor, patch) \
((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch))) ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
...@@ -390,7 +392,7 @@ ...@@ -390,7 +392,7 @@
#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0) #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)
#define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0) #define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)
#define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 0) #define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 0)
#define VK_HEADER_VERSION 148 #define VK_HEADER_VERSION 149
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;
...@@ -1522,6 +1524,8 @@ typedef enum VkFormat ...@@ -1522,6 +1524,8 @@ typedef enum VkFormat
VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 1000156031, VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 1000156031,
VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = 1000156032, VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = 1000156032,
VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 1000156033, VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 1000156033,
VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT = 1000340000,
VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT = 1000340001,
VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM, VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM,
VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VK_FORMAT_B8G8R8G8_422_UNORM, VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VK_FORMAT_B8G8R8G8_422_UNORM,
VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM, VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,
...@@ -2883,6 +2887,7 @@ typedef enum VkStructureType ...@@ -2883,6 +2887,7 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT = 1000332000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT = 1000332000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT = 1000335000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT = 1000335000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
...@@ -3838,117 +3843,157 @@ typedef struct VkPhysicalDevice16BitStorageFeatures ...@@ -3838,117 +3843,157 @@ typedef struct VkPhysicalDevice16BitStorageFeatures
} VkPhysicalDevice16BitStorageFeatures; } VkPhysicalDevice16BitStorageFeatures;
typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR; typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;
typedef struct VkPhysicalDevice8BitStorageFeatures typedef struct VkPhysicalDevice4444FormatsFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 storageBuffer8BitAccess; VkBool32 formatA4R4G4B4;
VkBool32 uniformAndStorageBuffer8BitAccess; VkBool32 formatA4B4G4R4;
VkBool32 storagePushConstant8; } VkPhysicalDevice4444FormatsFeaturesEXT;
} VkPhysicalDevice8BitStorageFeatures;
typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR;
typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 decodeModeSharedExponent; VkBool32 advancedBlendCoherentOperations;
} VkPhysicalDeviceASTCDecodeFeaturesEXT; } VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;
typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t advancedBlendMaxColorAttachments; VkBool32 bufferDeviceAddress;
VkBool32 advancedBlendIndependentBlend; VkBool32 bufferDeviceAddressCaptureReplay;
VkBool32 advancedBlendNonPremultipliedSrcColor; VkBool32 bufferDeviceAddressMultiDevice;
VkBool32 advancedBlendNonPremultipliedDstColor; } VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;
VkBool32 advancedBlendCorrelatedOverlap; typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;
VkBool32 advancedBlendAllOperations;
} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;
typedef struct VkPhysicalDeviceBufferDeviceAddressFeatures typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 bufferDeviceAddress; VkBool32 deviceCoherentMemory;
VkBool32 bufferDeviceAddressCaptureReplay; } VkPhysicalDeviceCoherentMemoryFeaturesAMD;
VkBool32 bufferDeviceAddressMultiDevice;
} VkPhysicalDeviceBufferDeviceAddressFeatures;
typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR;
typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 computeDerivativeGroupQuads; VkBool32 conditionalRendering;
VkBool32 computeDerivativeGroupLinear; VkBool32 inheritedConditionalRendering;
} VkPhysicalDeviceComputeShaderDerivativesFeaturesNV; } VkPhysicalDeviceConditionalRenderingFeaturesEXT;
typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
float primitiveOverestimationSize; VkBool32 cooperativeMatrix;
float maxExtraPrimitiveOverestimationSize; VkBool32 cooperativeMatrixRobustBufferAccess;
float extraPrimitiveOverestimationSizeGranularity; } VkPhysicalDeviceCooperativeMatrixFeaturesNV;
VkBool32 primitiveUnderestimation;
VkBool32 conservativePointAndLineRasterization;
VkBool32 degenerateTrianglesRasterized;
VkBool32 degenerateLinesRasterized;
VkBool32 fullyCoveredFragmentShaderInputVariable;
VkBool32 conservativeRasterizationPostDepthCoverage;
} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;
typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkShaderStageFlags cooperativeMatrixSupportedStages; VkBool32 cornerSampledImage;
} VkPhysicalDeviceCooperativeMatrixPropertiesNV; } VkPhysicalDeviceCornerSampledImageFeaturesNV;
typedef struct VkPhysicalDeviceCoverageReductionModeFeaturesNV typedef struct VkPhysicalDeviceCustomBorderColorFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 coverageReductionMode; VkBool32 customBorderColors;
} VkPhysicalDeviceCoverageReductionModeFeaturesNV; VkBool32 customBorderColorWithoutFormat;
} VkPhysicalDeviceCustomBorderColorFeaturesEXT;
typedef struct VkPhysicalDeviceCustomBorderColorPropertiesEXT typedef struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t maxCustomBorderColorSamplers; VkBool32 dedicatedAllocationImageAliasing;
} VkPhysicalDeviceCustomBorderColorPropertiesEXT; } VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
typedef struct VkPhysicalDeviceDepthClipEnableFeaturesEXT typedef struct VkPhysicalDeviceDepthStencilResolveProperties
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 depthClipEnable; VkResolveModeFlags supportedDepthResolveModes;
} VkPhysicalDeviceDepthClipEnableFeaturesEXT; VkResolveModeFlags supportedStencilResolveModes;
VkBool32 independentResolveNone;
VkBool32 independentResolve;
} VkPhysicalDeviceDepthStencilResolveProperties;
typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR;
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV typedef struct VkPhysicalDeviceDescriptorIndexingFeatures
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t maxGraphicsShaderGroupCount; VkBool32 shaderInputAttachmentArrayDynamicIndexing;
uint32_t maxIndirectSequenceCount; VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
uint32_t maxIndirectCommandsTokenCount; VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
uint32_t maxIndirectCommandsStreamCount; VkBool32 shaderUniformBufferArrayNonUniformIndexing;
uint32_t maxIndirectCommandsTokenOffset; VkBool32 shaderSampledImageArrayNonUniformIndexing;
uint32_t maxIndirectCommandsStreamStride; VkBool32 shaderStorageBufferArrayNonUniformIndexing;
uint32_t minSequencesCountBufferOffsetAlignment; VkBool32 shaderStorageImageArrayNonUniformIndexing;
uint32_t minSequencesIndexBufferOffsetAlignment; VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
uint32_t minIndirectCommandsBufferOffsetAlignment; VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV; VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
VkBool32 descriptorBindingSampledImageUpdateAfterBind;
VkBool32 descriptorBindingStorageImageUpdateAfterBind;
VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
VkBool32 descriptorBindingUpdateUnusedWhilePending;
VkBool32 descriptorBindingPartiallyBound;
VkBool32 descriptorBindingVariableDescriptorCount;
VkBool32 runtimeDescriptorArray;
} VkPhysicalDeviceDescriptorIndexingFeatures;
typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT;
typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT typedef struct VkPhysicalDeviceDescriptorIndexingProperties
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t maxDiscardRectangles; uint32_t maxUpdateAfterBindDescriptorsInAllPools;
} VkPhysicalDeviceDiscardRectanglePropertiesEXT; VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
VkBool32 robustBufferAccessUpdateAfterBind;
VkBool32 quadDivergentImplicitLod;
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
uint32_t maxPerStageUpdateAfterBindResources;
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
} VkPhysicalDeviceDescriptorIndexingProperties;
typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT;
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV
{
VkStructureType sType;
void *pNext;
VkBool32 deviceGeneratedCommands;
} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV
{
VkStructureType sType;
void *pNext;
VkBool32 diagnosticsConfig;
} VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT
{ {
...@@ -5308,166 +5353,124 @@ typedef union VkPerformanceValueDataINTEL ...@@ -5308,166 +5353,124 @@ typedef union VkPerformanceValueDataINTEL
const char *valueString; const char *valueString;
} VkPerformanceValueDataINTEL; } VkPerformanceValueDataINTEL;
typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 advancedBlendCoherentOperations; VkBool32 decodeModeSharedExponent;
} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT; } VkPhysicalDeviceASTCDecodeFeaturesEXT;
typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT typedef struct VkPhysicalDeviceBufferDeviceAddressFeatures
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 bufferDeviceAddress; VkBool32 bufferDeviceAddress;
VkBool32 bufferDeviceAddressCaptureReplay; VkBool32 bufferDeviceAddressCaptureReplay;
VkBool32 bufferDeviceAddressMultiDevice; VkBool32 bufferDeviceAddressMultiDevice;
} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT; } VkPhysicalDeviceBufferDeviceAddressFeatures;
typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT; typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR;
typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT
{
VkStructureType sType;
void *pNext;
VkBool32 conditionalRendering;
VkBool32 inheritedConditionalRendering;
} VkPhysicalDeviceConditionalRenderingFeaturesEXT;
typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 cornerSampledImage; VkBool32 computeDerivativeGroupQuads;
} VkPhysicalDeviceCornerSampledImageFeaturesNV; VkBool32 computeDerivativeGroupLinear;
} VkPhysicalDeviceComputeShaderDerivativesFeaturesNV;
typedef struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 dedicatedAllocationImageAliasing; VkShaderStageFlags cooperativeMatrixSupportedStages;
} VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV; } VkPhysicalDeviceCooperativeMatrixPropertiesNV;
typedef struct VkPhysicalDeviceDescriptorIndexingFeatures typedef struct VkPhysicalDeviceCustomBorderColorPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 shaderInputAttachmentArrayDynamicIndexing; uint32_t maxCustomBorderColorSamplers;
VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; } VkPhysicalDeviceCustomBorderColorPropertiesEXT;
VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
VkBool32 shaderUniformBufferArrayNonUniformIndexing;
VkBool32 shaderSampledImageArrayNonUniformIndexing;
VkBool32 shaderStorageBufferArrayNonUniformIndexing;
VkBool32 shaderStorageImageArrayNonUniformIndexing;
VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
VkBool32 descriptorBindingSampledImageUpdateAfterBind;
VkBool32 descriptorBindingStorageImageUpdateAfterBind;
VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
VkBool32 descriptorBindingUpdateUnusedWhilePending;
VkBool32 descriptorBindingPartiallyBound;
VkBool32 descriptorBindingVariableDescriptorCount;
VkBool32 runtimeDescriptorArray;
} VkPhysicalDeviceDescriptorIndexingFeatures;
typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT;
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 deviceGeneratedCommands; uint32_t maxDiscardRectangles;
} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV; } VkPhysicalDeviceDiscardRectanglePropertiesEXT;
typedef struct VkPhysicalDeviceDriverProperties typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkDriverId driverID; VkBool32 exclusiveScissor;
char driverName[VK_MAX_DRIVER_NAME_SIZE]; } VkPhysicalDeviceExclusiveScissorFeaturesNV;
char driverInfo[VK_MAX_DRIVER_INFO_SIZE];
VkConformanceVersion conformanceVersion;
} VkPhysicalDeviceDriverProperties;
typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR;
typedef struct VkPhysicalDeviceExternalBufferInfo typedef struct VkPhysicalDeviceExternalFenceInfo
{ {
VkStructureType sType; VkStructureType sType;
const void *pNext; const void *pNext;
VkBufferCreateFlags flags; VkExternalFenceHandleTypeFlagBits handleType;
VkBufferUsageFlags usage; } VkPhysicalDeviceExternalFenceInfo;
VkExternalMemoryHandleTypeFlagBits handleType; typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR;
} VkPhysicalDeviceExternalBufferInfo;
typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR;
typedef struct VkPhysicalDeviceExternalImageFormatInfo typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
const void *pNext; void *pNext;
VkExternalMemoryHandleTypeFlagBits handleType; VkDeviceSize WINE_VK_ALIGN(8) minImportedHostPointerAlignment;
} VkPhysicalDeviceExternalImageFormatInfo; } VkPhysicalDeviceExternalMemoryHostPropertiesEXT;
typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR;
typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT typedef struct VkPhysicalDeviceFeatures2
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 subsampledLoads; VkPhysicalDeviceFeatures features;
VkBool32 subsampledCoarseReconstructionEarlyAccess; } VkPhysicalDeviceFeatures2;
uint32_t maxSubsampledArrayLayers; typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR;
uint32_t maxDescriptorSetSubsampledSamplers;
} VkPhysicalDeviceFragmentDensityMap2PropertiesEXT;
typedef struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT typedef struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 fragmentShaderSampleInterlock; VkExtent2D minFragmentDensityTexelSize;
VkBool32 fragmentShaderPixelInterlock; VkExtent2D maxFragmentDensityTexelSize;
VkBool32 fragmentShaderShadingRateInterlock; VkBool32 fragmentDensityInvocations;
} VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT; } VkPhysicalDeviceFragmentDensityMapPropertiesEXT;
typedef struct VkPhysicalDeviceImageFormatInfo2 typedef struct VkPhysicalDeviceImageRobustnessFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
const void *pNext; void *pNext;
VkFormat format; VkBool32 robustImageAccess;
VkImageType type; } VkPhysicalDeviceImageRobustnessFeaturesEXT;
VkImageTiling tiling;
VkImageUsageFlags usage;
VkImageCreateFlags flags;
} VkPhysicalDeviceImageFormatInfo2;
typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;
typedef struct VkPhysicalDeviceImagelessFramebufferFeatures typedef struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 imagelessFramebuffer; VkBool32 indexTypeUint8;
} VkPhysicalDeviceImagelessFramebufferFeatures; } VkPhysicalDeviceIndexTypeUint8FeaturesEXT;
typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR;
typedef struct VkPhysicalDeviceInlineUniformBlockPropertiesEXT typedef struct VkPhysicalDeviceLineRasterizationFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t maxInlineUniformBlockSize; VkBool32 rectangularLines;
uint32_t maxPerStageDescriptorInlineUniformBlocks; VkBool32 bresenhamLines;
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; VkBool32 smoothLines;
uint32_t maxDescriptorSetInlineUniformBlocks; VkBool32 stippledRectangularLines;
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks; VkBool32 stippledBresenhamLines;
} VkPhysicalDeviceInlineUniformBlockPropertiesEXT; VkBool32 stippledSmoothLines;
} VkPhysicalDeviceLineRasterizationFeaturesEXT;
typedef struct VkPhysicalDeviceMaintenance3Properties typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
uint32_t maxPerSetDescriptors; VkDeviceSize WINE_VK_ALIGN(8) heapBudget[VK_MAX_MEMORY_HEAPS];
VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize; VkDeviceSize WINE_VK_ALIGN(8) heapUsage[VK_MAX_MEMORY_HEAPS];
} VkPhysicalDeviceMaintenance3Properties; } VkPhysicalDeviceMemoryBudgetPropertiesEXT;
typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;
typedef struct VkPhysicalDeviceMeshShaderFeaturesNV typedef struct VkPhysicalDeviceMeshShaderFeaturesNV
{ {
...@@ -6159,71 +6162,91 @@ typedef struct VkPerformanceValueINTEL ...@@ -6159,71 +6162,91 @@ typedef struct VkPerformanceValueINTEL
VkPerformanceValueDataINTEL data; VkPerformanceValueDataINTEL data;
} VkPerformanceValueINTEL; } VkPerformanceValueINTEL;
typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesNV typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 cooperativeMatrix; uint32_t advancedBlendMaxColorAttachments;
VkBool32 cooperativeMatrixRobustBufferAccess; VkBool32 advancedBlendIndependentBlend;
} VkPhysicalDeviceCooperativeMatrixFeaturesNV; VkBool32 advancedBlendNonPremultipliedSrcColor;
VkBool32 advancedBlendNonPremultipliedDstColor;
VkBool32 advancedBlendCorrelatedOverlap;
VkBool32 advancedBlendAllOperations;
} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;
typedef struct VkPhysicalDeviceDepthStencilResolveProperties typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkResolveModeFlags supportedDepthResolveModes; float primitiveOverestimationSize;
VkResolveModeFlags supportedStencilResolveModes; float maxExtraPrimitiveOverestimationSize;
VkBool32 independentResolveNone; float extraPrimitiveOverestimationSizeGranularity;
VkBool32 independentResolve; VkBool32 primitiveUnderestimation;
} VkPhysicalDeviceDepthStencilResolveProperties; VkBool32 conservativePointAndLineRasterization;
typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR; VkBool32 degenerateTrianglesRasterized;
VkBool32 degenerateLinesRasterized;
VkBool32 fullyCoveredFragmentShaderInputVariable;
VkBool32 conservativeRasterizationPostDepthCoverage;
} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;
typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV typedef struct VkPhysicalDeviceDepthClipEnableFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 diagnosticsConfig; VkBool32 depthClipEnable;
} VkPhysicalDeviceDiagnosticsConfigFeaturesNV; } VkPhysicalDeviceDepthClipEnableFeaturesEXT;
typedef struct VkPhysicalDeviceExternalFenceInfo typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV
{ {
VkStructureType sType; VkStructureType sType;
const void *pNext; void *pNext;
VkExternalFenceHandleTypeFlagBits handleType; uint32_t maxGraphicsShaderGroupCount;
} VkPhysicalDeviceExternalFenceInfo; uint32_t maxIndirectSequenceCount;
typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR; uint32_t maxIndirectCommandsTokenCount;
uint32_t maxIndirectCommandsStreamCount;
uint32_t maxIndirectCommandsTokenOffset;
uint32_t maxIndirectCommandsStreamStride;
uint32_t minSequencesCountBufferOffsetAlignment;
uint32_t minSequencesIndexBufferOffsetAlignment;
uint32_t minIndirectCommandsBufferOffsetAlignment;
} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
typedef struct VkPhysicalDeviceFeatures2 typedef struct VkPhysicalDeviceExternalBufferInfo
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; const void *pNext;
VkPhysicalDeviceFeatures features; VkBufferCreateFlags flags;
} VkPhysicalDeviceFeatures2; VkBufferUsageFlags usage;
typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR; VkExternalMemoryHandleTypeFlagBits handleType;
} VkPhysicalDeviceExternalBufferInfo;
typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR;
typedef struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkExtent2D minFragmentDensityTexelSize; VkBool32 subsampledLoads;
VkExtent2D maxFragmentDensityTexelSize; VkBool32 subsampledCoarseReconstructionEarlyAccess;
VkBool32 fragmentDensityInvocations; uint32_t maxSubsampledArrayLayers;
} VkPhysicalDeviceFragmentDensityMapPropertiesEXT; uint32_t maxDescriptorSetSubsampledSamplers;
} VkPhysicalDeviceFragmentDensityMap2PropertiesEXT;
typedef struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT typedef struct VkPhysicalDeviceImagelessFramebufferFeatures
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 indexTypeUint8; VkBool32 imagelessFramebuffer;
} VkPhysicalDeviceIndexTypeUint8FeaturesEXT; } VkPhysicalDeviceImagelessFramebufferFeatures;
typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR;
typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT typedef struct VkPhysicalDeviceMaintenance3Properties
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkDeviceSize WINE_VK_ALIGN(8) heapBudget[VK_MAX_MEMORY_HEAPS]; uint32_t maxPerSetDescriptors;
VkDeviceSize WINE_VK_ALIGN(8) heapUsage[VK_MAX_MEMORY_HEAPS]; VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize;
} VkPhysicalDeviceMemoryBudgetPropertiesEXT; } VkPhysicalDeviceMaintenance3Properties;
typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;
typedef struct VkPhysicalDeviceMultiviewFeatures typedef struct VkPhysicalDeviceMultiviewFeatures
{ {
...@@ -6632,61 +6655,33 @@ typedef struct VkPerformanceQuerySubmitInfoKHR ...@@ -6632,61 +6655,33 @@ typedef struct VkPerformanceQuerySubmitInfoKHR
uint32_t counterPassIndex; uint32_t counterPassIndex;
} VkPerformanceQuerySubmitInfoKHR; } VkPerformanceQuerySubmitInfoKHR;
typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD typedef struct VkPhysicalDeviceExternalImageFormatInfo
{
VkStructureType sType;
void *pNext;
VkBool32 deviceCoherentMemory;
} VkPhysicalDeviceCoherentMemoryFeaturesAMD;
typedef struct VkPhysicalDeviceDescriptorIndexingProperties
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; const void *pNext;
uint32_t maxUpdateAfterBindDescriptorsInAllPools; VkExternalMemoryHandleTypeFlagBits handleType;
VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; } VkPhysicalDeviceExternalImageFormatInfo;
VkBool32 shaderSampledImageArrayNonUniformIndexingNative; typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR;
VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
VkBool32 robustBufferAccessUpdateAfterBind;
VkBool32 quadDivergentImplicitLod;
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
uint32_t maxPerStageUpdateAfterBindResources;
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
} VkPhysicalDeviceDescriptorIndexingProperties;
typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT;
typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT typedef struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkDeviceSize WINE_VK_ALIGN(8) minImportedHostPointerAlignment; VkBool32 fragmentShaderSampleInterlock;
} VkPhysicalDeviceExternalMemoryHostPropertiesEXT; VkBool32 fragmentShaderPixelInterlock;
VkBool32 fragmentShaderShadingRateInterlock;
} VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT;
typedef struct VkPhysicalDeviceLineRasterizationFeaturesEXT typedef struct VkPhysicalDeviceInlineUniformBlockPropertiesEXT
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 rectangularLines; uint32_t maxInlineUniformBlockSize;
VkBool32 bresenhamLines; uint32_t maxPerStageDescriptorInlineUniformBlocks;
VkBool32 smoothLines; uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
VkBool32 stippledRectangularLines; uint32_t maxDescriptorSetInlineUniformBlocks;
VkBool32 stippledBresenhamLines; uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
VkBool32 stippledSmoothLines; } VkPhysicalDeviceInlineUniformBlockPropertiesEXT;
} VkPhysicalDeviceLineRasterizationFeaturesEXT;
typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR
{ {
...@@ -6953,19 +6948,38 @@ typedef struct VkMemoryHeap ...@@ -6953,19 +6948,38 @@ typedef struct VkMemoryHeap
VkMemoryHeapFlags flags; VkMemoryHeapFlags flags;
} VkMemoryHeap; } VkMemoryHeap;
typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV typedef struct VkPhysicalDevice8BitStorageFeatures
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 exclusiveScissor; VkBool32 storageBuffer8BitAccess;
} VkPhysicalDeviceExclusiveScissorFeaturesNV; VkBool32 uniformAndStorageBuffer8BitAccess;
VkBool32 storagePushConstant8;
} VkPhysicalDevice8BitStorageFeatures;
typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR;
typedef struct VkPhysicalDeviceImageRobustnessFeaturesEXT typedef struct VkPhysicalDeviceDriverProperties
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 robustImageAccess; VkDriverId driverID;
} VkPhysicalDeviceImageRobustnessFeaturesEXT; char driverName[VK_MAX_DRIVER_NAME_SIZE];
char driverInfo[VK_MAX_DRIVER_INFO_SIZE];
VkConformanceVersion conformanceVersion;
} VkPhysicalDeviceDriverProperties;
typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR;
typedef struct VkPhysicalDeviceImageFormatInfo2
{
VkStructureType sType;
const void *pNext;
VkFormat format;
VkImageType type;
VkImageTiling tiling;
VkImageUsageFlags usage;
VkImageCreateFlags flags;
} VkPhysicalDeviceImageFormatInfo2;
typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;
typedef struct VkPipelineDepthStencilStateCreateInfo typedef struct VkPipelineDepthStencilStateCreateInfo
{ {
...@@ -7080,13 +7094,12 @@ typedef struct VkInstanceCreateInfo ...@@ -7080,13 +7094,12 @@ typedef struct VkInstanceCreateInfo
const char * const*ppEnabledExtensionNames; const char * const*ppEnabledExtensionNames;
} VkInstanceCreateInfo; } VkInstanceCreateInfo;
typedef struct VkPhysicalDeviceCustomBorderColorFeaturesEXT typedef struct VkPhysicalDeviceCoverageReductionModeFeaturesNV
{ {
VkStructureType sType; VkStructureType sType;
void *pNext; void *pNext;
VkBool32 customBorderColors; VkBool32 coverageReductionMode;
VkBool32 customBorderColorWithoutFormat; } VkPhysicalDeviceCoverageReductionModeFeaturesNV;
} VkPhysicalDeviceCustomBorderColorFeaturesEXT;
typedef struct VkPhysicalDeviceMemoryProperties typedef struct VkPhysicalDeviceMemoryProperties
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment