nvk: Enable VK_EXT_provoking_vertex

We already have it plumbed through.  Just need to turn it on.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
This commit is contained in:
Faith Ekstrand
2023-01-30 20:12:04 -06:00
committed by Marge Bot
parent d1b9441a8e
commit b934e98452
+13
View File
@@ -194,6 +194,12 @@ nvk_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
f->sampler2DViewOf3D = true;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: {
VkPhysicalDeviceProvokingVertexFeaturesEXT *f = (void *)ext;
f->provokingVertexLast = true;
f->transformFeedbackPreservesProvokingVertex = true;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT: {
VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *f = (void *)ext;
f->vertexAttributeInstanceRateDivisor = true;
@@ -376,6 +382,12 @@ nvk_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
p->pciFunction = pdev->info.pci_func;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: {
VkPhysicalDeviceProvokingVertexPropertiesEXT *p = (void *)ext;
p->provokingVertexModePerPipeline = true;
p->transformFeedbackPreservesTriangleFanProvokingVertex = true;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: {
VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *p = (void *)ext;
p->maxVertexAttribDivisor = UINT32_MAX;
@@ -433,6 +445,7 @@ nvk_get_device_extensions(const struct nvk_physical_device *pdev,
.EXT_inline_uniform_block = true,
.EXT_pci_bus_info = true,
.EXT_private_data = true,
.EXT_provoking_vertex = true,
.EXT_sample_locations = pdev->info.cls_eng3d >= MAXWELL_B,
.EXT_vertex_attribute_divisor = true,
.EXT_vertex_input_dynamic_state = true,