blob: 33a424c4cd91bcccd1a66afa3131bd5ab6aebb92 [file] [log] [blame]
// Copyright (c) 2016-2020 NVIDIA Corporation
//
// SPDX-License-Identifier: CC-BY-4.0
include::{generated}/meta/{refprefix}VK_NV_sample_mask_override_coverage.txt[]
=== Other Extension Metadata
*Last Modified Date*::
2016-12-08
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- This extension requires
{spirv}/NV/SPV_NV_sample_mask_override_coverage.html[`SPV_NV_sample_mask_override_coverage`]
- This extension provides API support for
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_sample_mask_override_coverage.txt[`GL_NV_sample_mask_override_coverage`]
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
=== Description
This extension adds support for the following SPIR-V extension in Vulkan:
* `SPV_NV_sample_mask_override_coverage`
The extension provides access to the code:OverrideCoverageNV decoration
under the code:SampleMaskOverrideCoverageNV capability.
Adding this decoration to a variable with the code:SampleMask builtin
decoration allows the shader to modify the coverage mask and affect which
samples are used to process the fragment.
When using GLSL source-based shader languages, the code:override_coverage
layout qualifier from `GL_NV_sample_mask_override_coverage` maps to the
code:OverrideCoverageNV decoration.
To use the code:override_coverage layout qualifier in GLSL the
`GL_NV_sample_mask_override_coverage` extension must be enabled.
Behavior is described in the `GL_NV_sample_mask_override_coverage` extension
spec.
include::{generated}/interfaces/VK_NV_sample_mask_override_coverage.txt[]
=== New Variable Decoration
* <<interfaces-builtin-variables-samplemask,OverrideCoverageNV in
SampleMask>>
=== New SPIR-V Capabilities
* <<spirvenv-capabilities-table-SampleMaskOverrideCoverageNV,SampleMaskOverrideCoverageNV>>
=== Version History
* Revision 1, 2016-12-08 (Piers Daniell)
- Internal revisions