diff --git a/src/gallium/drivers/zink/VP_ZINK_requirements.json b/src/gallium/drivers/zink/VP_ZINK_requirements.json new file mode 100644 index 00000000000..6d1c1a33c6d --- /dev/null +++ b/src/gallium/drivers/zink/VP_ZINK_requirements.json @@ -0,0 +1,870 @@ +{ + "$schema": "https://schema.khronos.org/vulkan/profiles-0.8.1-230.json#", + "capabilities": { + "vulkan10requirements": { + "features": { + "VkPhysicalDeviceFeatures": { + "robustBufferAccess": true + } + } + }, + "gl21_baseline": { + "extensions": { + "VK_KHR_maintenance1": 1, + "VK_KHR_create_renderpass2": 1, + "VK_KHR_imageless_framebuffer": 1, + "VK_KHR_timeline_semaphore": 1, + "VK_EXT_custom_border_color": 1, + "VK_EXT_provoking_vertex": 1, + "VK_EXT_line_rasterization": 1, + "VK_KHR_swapchain_mutable_format": 1, + "VK_EXT_border_color_swizzle": 1, + "VK_KHR_descriptor_update_template": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "logicOp": true, + "fillModeNonSolid": true, + "alphaToOne": true, + "shaderClipDistance": true + }, + "VkPhysicalDeviceCustomBorderColorFeaturesEXT": { + "customBorderColorWithoutFormat": true + }, + "VkPhysicalDeviceLineRasterizationFeaturesEXT": { + "rectangularLines": true, + "bresenhamLines": true + } + }, + "properties": { + "VkPhysicalDeviceProperties": { + + } + } + }, + "gl21_baseline_vk10": { + "extensions": { + "VK_EXT_scalar_block_layout": 1 + }, + "features": { + "VkPhysicalDeviceScalarBlockLayoutFeaturesEXT": { + "scalarBlockLayout": true + } + } + }, + "gl21_baseline_vk12": { + "features": { + "VkPhysicalDeviceVulkan12Features": { + "scalarBlockLayout": true + } + } + }, + "gl21_optional": { + "extensions": { + "VK_KHR_external_memory": 1 + } + }, + "gl30_baseline": { + "extensions": { + "VK_EXT_transform_feedback": 1, + "VK_EXT_conditional_rendering": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "independentBlend": true + } + } + }, + "gl31_baseline": { + "properties": { + "VkPhysicalDeviceProperties": { + "limits": { + "maxPerStageDescriptorSamplers": 16 + } + } + } + }, + "gl32_baseline": { + "extensions": { + "VK_EXT_depth_clip_enable": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "depthClamp": true, + "geometryShader": true, + "shaderTessellationAndGeometryPointSize": true + }, + "VkPhysicalDeviceDepthClipEnableFeaturesEXT": { + "depthClipEnable": true + } + } + }, + "gl33_baseline": { + "extensions": { + "VK_EXT_vertex_attribute_divisor": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "occlusionQueryPrecise": true, + "dualSrcBlend": true + } + } + }, + "gl40_baseline": { + "extensions": { + "VK_KHR_maintenance2": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "sampleRateShading": true, + "tessellationShader": true, + "imageCubeArray": true + } + }, + "formats": { + "VK_FORMAT_R32G32B32_SFLOAT": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ] + } + }, + "VK_FORMAT_R32G32B32_SINT": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ] + } + }, + "VK_FORMAT_R32G32B32_UINT": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT" + ] + } + } + } + }, + "gl41_baseline": { + "features": { + "VkPhysicalDeviceFeatures": { + "multiViewport": true + } + }, + "properties": { + "VkPhysicalDeviceProperties": { + "limits": { + "maxImageDimension1D": 16384, + "maxImageDimension2D": 16384, + "maxImageDimension3D": 2048, + "maxImageDimensionCube": 16384, + "maxImageArrayLayers": 2048, + "maxViewports": 16 + } + } + } + }, + "gl42_baseline": { + "extensions": { + "VK_EXT_image_2d_view_of_3d": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "shaderStorageImageExtendedFormats": true, + "shaderStorageImageWriteWithoutFormat": true, + "vertexPipelineStoresAndAtomics": true, + "fragmentStoresAndAtomics": true, + "textureCompressionBC": true + } + } + }, + "gl42_baseline_vk10": { + "extensions": { + "VK_KHR_shader_draw_parameters": 1 + }, + "features": { + "VkPhysicalDeviceShaderDrawParametersFeatures": { + "shaderDrawParameters": true + } + } + }, + "gl42_baseline_vk12": { + "features": { + "VkPhysicalDeviceVulkan11Features": { + "shaderDrawParameters": true + } + } + }, + "gl43_baseline": { + "extensions": { + "VK_EXT_robustness2": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "robustBufferAccess": true, + "multiDrawIndirect": true + }, + "VkPhysicalDeviceRobustness2FeaturesEXT": { + "robustImageAccess2": true + } + }, + "formats": { + "VK_FORMAT_R8G8B8A8_UNORM": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_R8G8B8A8_SRGB": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_R16_UNORM": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_R16G16_UNORM": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_R16_SNORM": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_R16G16_SNORM": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + }, + "VK_FORMAT_D32_SFLOAT_S8_UINT": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" + ] + } + } + } + }, + "gl44_baseline": { + "extensions": { + "VK_KHR_sampler_mirror_clamp_to_edge": 1 + }, + "formats": { + "VK_FORMAT_B10G11R11_UFLOAT_PACK32": { + "VkFormatProperties": { + "linearTilingFeatures": [ + "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT" + ], + "optimalTilingFeatures": [ + "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT" + ], + "bufferFeatures": [ + "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT" + ] + } + } + } + }, + "gl45_baseline": { + "features": { + "VkPhysicalDeviceFeatures": { + "shaderCullDistance": true + } + } + }, + "gl46_baseline": { + "extensions": { + "VK_KHR_draw_indirect_count": 1 + }, + "features": { + "VkPhysicalDeviceFeatures": { + "samplerAnisotropy": true, + "pipelineStatisticsQuery": true, + "depthBiasClamp": true + } + } + }, + "gl46_optimal": { + "extensions": { + "VK_EXT_extended_dynamic_state": 1, + "VK_EXT_extended_dynamic_state2": 1, + "VK_EXT_extended_dynamic_state3": 1, + "VK_EXT_graphics_pipeline_library": 1, + "VK_KHR_pipeline_library": 1, + "VK_EXT_non_seamless_cube_map": 1 + }, + "features": { + "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT": { + "extendedDynamicState": true + }, + "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT": { + "extendedDynamicState2": true, + "extendedDynamicState2LogicOp": true, + "extendedDynamicState2PatchControlPoints": true + }, + "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT": { + "extendedDynamicState3PolygonMode": true, + "extendedDynamicState3DepthClampEnable": true, + "extendedDynamicState3DepthClipEnable": true, + "extendedDynamicState3ProvokingVertexMode": true, + "extendedDynamicState3LineRasterizationMode": true + }, + "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT": { + "graphicsPipelineLibrary": true + }, + "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT": { + "nonSeamlessCubeMap": true + } + }, + "properties": { + "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT": { + + } + } + }, + "gl46_optimal_ext": { + "extensions": { + "VK_KHR_dynamic_rendering": 1 + }, + "features": { + "VkPhysicalDeviceDynamicRenderingFeaturesKHR": { + "dynamicRendering": true + } + } + }, + "gl46_optimal_vk13": { + "features": { + "VkPhysicalDeviceVulkan13Features": { + "dynamicRendering": true + } + } + }, + "gl46_optional": { + "extensions": { + "VK_EXT_primitives_generated_query": 1, + "VK_EXT_color_write_enable": 1, + "VK_EXT_extended_dynamic_state3": 1 + }, + "features": { + "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT": { + "primitivesGeneratedQueryWithRasterizerDiscard": true + }, + "VkPhysicalDeviceColorWriteEnableFeaturesEXT": { + "colorWriteEnable": true + }, + "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT": { + "extendedDynamicState3AlphaToOneEnable": true, + "extendedDynamicState3SampleMask": true, + "extendedDynamicState3AlphaToCoverageEnable": true, + "extendedDynamicState3ColorBlendEnable": true, + "extendedDynamicState3RasterizationSamples": true, + "extendedDynamicState3ColorWriteMask": true, + "extendedDynamicState3LogicOpEnable": true + } + } + }, + "gl46_optional_ext": { + "extensions": { + "VK_EXT_pipeline_creation_cache_control": 1 + }, + "features": { + "VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT": { + "pipelineCreationCacheControl": true + } + } + }, + "gl46_optional_vk13": { + "features": { + "VkPhysicalDeviceVulkan13Features": { + "pipelineCreationCacheControl": true + } + } + }, + "GL_ARB_bindless_texture": { + "extensions": { + "VK_EXT_descriptor_indexing": 1 + }, + "properties": { + "VkPhysicalDeviceDescriptorIndexingPropertiesEXT": { + "robustBufferAccessUpdateAfterBind": true + } + } + }, + "GL_ARB_sparse_texture": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidencyImage2D": true, + "sparseResidencyImage3D": true + } + } + }, + "GL_ARB_sparse_texture2": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidency2Samples": true + } + } + }, + "GL_ARB_sparse_texture_clamp_2s": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidency2Samples": true + } + } + }, + "GL_ARB_sparse_texture_clamp_4s": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidency4Samples": true + } + } + }, + "GL_ARB_sparse_texture_clamp_8s": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidency8Samples": true + } + } + }, + "GL_ARB_sparse_texture_clamp_16s": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseResidency16Samples": true + } + } + }, + "GL_ARB_sparse_buffer": { + "features": { + "VkPhysicalDeviceFeatures": { + "sparseBinding": true, + "sparseResidencyBuffer": true + } + } + }, + "GL_ARB_shader_viewport_layer_array_ext": { + "extensions": { + "VK_EXT_shader_viewport_index_layer": 1 + }, + }, + "GL_ARB_shader_viewport_layer_array_vk12": { + "features": { + "VkPhysicalDeviceVulkan12Features": { + "shaderOutputViewportIndex": true, + "shaderOutputLayer": true + } + } + }, + "GL_ARB_fragment_shader_interlock": { + "extensions": { + "VK_EXT_fragment_shader_interlock": 1 + } + }, + "GL_ARB_shader_clock": { + "extensions": { + "VK_KHR_shader_clock": 1 + } + }, + "GL_ARB_shader_ballot_ext": { + "extensions": { + "VK_EXT_shader_subgroup_ballot": 1 + } + }, + "GL_ARB_shader_ballot_vk11": { + "properties": { + "VkPhysicalDeviceSubgroupProperties": { + "subgroupSize": 64, + "supportedOperations": [ "VK_SUBGROUP_FEATURE_BALLOT_BIT" ] + } + } + }, + "GL_ARB_sample_locations": { + "extensions": { + "VK_EXT_extended_dynamic_state": 1, + "VK_EXT_sample_locations": 1 + }, + "features": { + "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT": { + "extendedDynamicState": true + } + } + }, + "GL_ARB_shader_stencil_export": { + "extensions": { + "VK_EXT_shader_stencil_export": 1 + } + }, + "GL_EXT_depth_bounds_test": { + "features": { + "VkPhysicalDeviceFeatures": { + "depthBounds": true + } + } + }, + "GL_EXT_texture_filter_minmax_ext": { + "extensions": { + "VK_EXT_sampler_filter_minmax": 1 + }, + "properties": { + "VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT": { + "filterMinmaxSingleComponentFormats": true, + "filterMinmaxImageComponentMapping": true, + } + } + }, + "GL_EXT_texture_filter_minmax_vk12": { + "properties": { + "VkPhysicalDeviceVulkan12Properties": { + "filterMinmaxSingleComponentFormats": true, + "filterMinmaxImageComponentMapping": true, + } + } + } + }, + "profiles": { + "VP_ZINK_gl21_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 2.1 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 2.1 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ] + ] + }, + "VP_ZINK_gl30_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 3.0 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 3.0 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline" + ] + }, + "VP_ZINK_gl31_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 3.1 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 3.1 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline" + ] + }, + "VP_ZINK_gl32_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 3.2 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 3.2 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline" + ] + }, + "VP_ZINK_gl33_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 3.3 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 3.3 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline" + ] + }, + "VP_ZINK_gl40_baseline": { + "version": 1, + "api-version": "1.0.196", + "label": "Zink OpenGL 4.0 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.0 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline" + ] + }, + "VP_ZINK_gl41_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.1 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.1 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline" + ] + }, + "VP_ZINK_gl42_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.2 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.2 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ] + ] + }, + "VP_ZINK_gl43_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.3 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.3 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ], + "gl43_baseline" + ] + }, + "VP_ZINK_gl44_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.4 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.4 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ], + "gl43_baseline", + "gl44_baseline" + ] + }, + "VP_ZINK_gl45_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.5 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.5 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ], + "gl43_baseline", + "gl44_baseline", + "gl45_baseline" + ] + }, + "VP_ZINK_gl46_baseline": { + "version": 1, + "api-version": "1.0.211", + "label": "Zink OpenGL 4.6 Baseline profile", + "description": "Minimum requirements for Zink OpenGL 4.6 support.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ], + "gl43_baseline", + "gl44_baseline", + "gl45_baseline", + "gl46_baseline" + ] + }, + "VP_ZINK_gl46_optimal": { + "version": 1, + "api-version": "1.0.230", + "label": "Zink OpenGL 4.6 Optimal profile", + "description": "Requirements for Zink OpenGL 4.6 support with best performances.", + "capabilities": [ + "vulkan10requirements", + "gl21_baseline", + [ "gl21_baseline_vk10", "gl21_baseline_vk12" ], + "gl30_baseline", + "gl31_baseline", + "gl32_baseline", + "gl33_baseline", + "gl40_baseline", + "gl41_baseline", + "gl42_baseline", + [ "gl42_baseline_vk10", "gl42_baseline_vk12" ], + "gl43_baseline", + "gl44_baseline", + "gl45_baseline", + "gl46_baseline", + "gl46_optimal", + [ "gl46_optimal_ext", "gl46_optimal_vk13" ] + ], + "optionals": [ + "gl46_optional", + [ "gl46_optional_ext", "gl46_optional_vk13" ], + "GL_ARB_bindless_texture", + "GL_ARB_sparse_texture", + "GL_ARB_sparse_texture2", + [ "GL_ARB_sparse_texture_clamp_2s", "GL_ARB_sparse_texture_clamp_4s", "GL_ARB_sparse_texture_clamp_8s", "GL_ARB_sparse_texture_clamp_16s" ], + "GL_ARB_sparse_buffer", + [ "GL_ARB_shader_viewport_layer_array_ext", "GL_ARB_shader_viewport_layer_array_vk12" ], + "GL_ARB_fragment_shader_interlock", + "GL_ARB_shader_clock", + [ "GL_ARB_shader_ballot_ext", "GL_ARB_shader_ballot_vk11" ], + "GL_ARB_sample_locations", + "GL_ARB_shader_stencil_export", + "GL_EXT_depth_bounds_test", + [ "GL_EXT_texture_filter_minmax_ext", "GL_EXT_texture_filter_minmax_vk12" ] + ] + } + }, + "contributors": { + "Mike Blumenkrantz": { + "company": "Valve" + }, + "Christophe Riccio": { + "company": "LunarG" + }, + "Erik Faye-Lund": { + "company": "Zink" + }, + "Soroush Faghihi": { + "company": "Zink" + }, + "Connor Abbott": { + "company": "Zink" + } + }, + "history": [ + { + "revision": 1, + "date": "2022-10-18", + "author": "Christophe Riccio", + "comment": "Initial revision" + } + ] +}