| include::meta/VK_EXT_discard_rectangles.txt[] |
| |
| *Last Modified Date*:: |
| 2016-12-22 |
| *Interactions and External Dependencies*:: |
| - Interacts with VK_KHR_device_group |
| - Interacts with Vulkan 1.1 |
| *Contributors*:: |
| - Daniel Koch, NVIDIA |
| - Jeff Bolz, NVIDIA |
| |
| 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[] |
| |
| === New Object Types |
| |
| None. |
| |
| === New Enum Constants |
| |
| * Extending elink:VkStructureType: |
| |
| ** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT |
| ** ename:VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT |
| |
| * Extending elink:VkDynamicState |
| |
| ** ename:VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT |
| |
| === New Enums |
| |
| * elink:VkPipelineDiscardRectangleStateCreateFlagsEXT |
| * elink:VkDiscardRectangleModeEXT |
| |
| === New Structures |
| |
| * slink:VkPhysicalDeviceDiscardRectanglePropertiesEXT |
| * slink:VkPipelineDiscardRectangleStateCreateInfoEXT |
| |
| === New Functions |
| |
| * flink:vkCmdSetDiscardRectangleEXT |
| |
| === Issues |
| |
| None. |
| |
| === Version History |
| |
| * Revision 1, 2016-12-22 (Piers Daniell) |
| - Internal revisions |