| // Copyright 2016-2021 The Khronos Group Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_EXT_discard_rectangles.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2016-12-22 |
| *Interactions and External Dependencies*:: |
| - Interacts with `apiext:VK_KHR_device_group` |
| - Interacts with Vulkan 1.1 |
| *Contributors*:: |
| - Daniel Koch, NVIDIA |
| - Jeff Bolz, NVIDIA |
| |
| === Description |
| |
| This extension provides additional orthogonally aligned "`discard |
| rectangles`" specified in framebuffer-space coordinates that restrict |
| rasterization of all points, lines and triangles. |
| |
| From zero to an implementation-dependent limit (specified by |
| pname:maxDiscardRectangles) number of discard rectangles can be operational |
| at once. |
| When one or more discard rectangles are active, rasterized fragments can |
| either survive if the fragment is within any of the operational discard |
| rectangles (ename:VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT mode) or be |
| rejected if the fragment is within any of the operational discard rectangles |
| (ename:VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT mode). |
| |
| These discard rectangles operate orthogonally to the existing scissor test |
| functionality. |
| ifdef::VK_VERSION_1_1,VK_KHR_device_group[] |
| The discard rectangles can be different for each physical device in a device |
| group by specifying the device mask and setting discard rectangle dynamic |
| state. |
| endif::VK_VERSION_1_1,VK_KHR_device_group[] |
| |
| include::{generated}/interfaces/VK_EXT_discard_rectangles.txt[] |
| |
| === Version History |
| |
| * Revision 1, 2016-12-22 (Piers Daniell) |
| - Internal revisions |