1// Copyright 2017-2024 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_EXT_post_depth_coverage.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2017-07-17 11*Interactions and External Dependencies*:: 12 - This extension provides API support for 13 {GLregistry}/ARB/ARB_post_depth_coverage.txt[`GL_ARB_post_depth_coverage`] 14 and 15 {GLregistry}/EXT/EXT_post_depth_coverage.txt[`GL_EXT_post_depth_coverage`] 16*Contributors*:: 17 - Jeff Bolz, NVIDIA 18 19=== Description 20 21This extension adds support for the following SPIR-V extension in Vulkan: 22 23 * `SPV_KHR_post_depth_coverage` 24 25which allows the fragment shader to control whether values in the 26code:SampleMask built-in input variable reflect the coverage after early 27<<fragops-depth,depth>> and <<fragops-stencil,stencil>> tests are applied. 28 29This extension adds a new code:PostDepthCoverage execution mode under the 30code:SampleMaskPostDepthCoverage capability. 31When this mode is specified along with code:EarlyFragmentTests, the value of 32an input variable decorated with the 33<<interfaces-builtin-variables-samplemask, code:SampleMask>> built-in 34reflects the coverage after the early fragment tests are applied. 35Otherwise, it reflects the coverage before the depth and stencil tests. 36 37When using GLSL source-based shading languages, the code:post_depth_coverage 38layout qualifier from GL_ARB_post_depth_coverage or 39GL_EXT_post_depth_coverage maps to the code:PostDepthCoverage execution 40mode. 41 42include::{generated}/interfaces/VK_EXT_post_depth_coverage.adoc[] 43 44=== New SPIR-V Capabilities 45 46 * <<spirvenv-capabilities-table-SampleMaskPostDepthCoverage, 47 code:SampleMaskPostDepthCoverage>> 48 49=== Version History 50 51 * Revision 1, 2017-07-17 (Daniel Koch) 52 ** Internal revisions 53