include::{generated}/meta/VK_EXT_fragment_shader_interlock.txt[] *Last Modified Data*:: 2019-05-02 *Interactions and External Dependencies*:: - This extension requires the {spirv}/EXT/SPV_EXT_fragment_shader_interlock.html[`SPV_EXT_fragment_shader_interlock`] SPIR-V extension. - This extension requires the https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_fragment_shader_interlock.txt[`GL_ARB_fragment_shader_interlock`], extensions for GLSL source languages. *Contributors*:: - Daniel Koch, NVIDIA - Graeme Leese, Broadcom - Jan-Harald Fredriksen, Arm - Jason Ekstrand, Intel - Jeff Bolz, NVIDIA - Ruihao Zhang, Qualcomm - Slawomir Grajewski, Intel - Spencer Fricke, Samsung This extension adds support for the code:FragmentShaderPixelInterlockEXT, code:FragmentShaderSampleInterlockEXT, and code:FragmentShaderShadingRateInterlockEXT capabilities from the `SPV_EXT_fragment_shader_interlock` extension to Vulkan. Enabling these capabilities provides a critical section for fragment shaders to avoid overlapping pixels being processed at the same time, and certain guarantees about the ordering of fragment shader invocations of fragments of overlapping pixels. This extension can be useful for algorithms that need to access per-pixel data structures via shader loads and stores. Algorithms using this extension can access per-pixel data structures in critical sections without other invocations accessing the same per-pixel data. Additionally, the ordering guarantees are useful for cases where the API ordering of fragments is meaningful. For example, applications may be able to execute programmable blending operations in the fragment shader, where the destination buffer is read via image loads and the final value is written via image stores. === New Object Types None. === New Enum Constants * Extending elink:VkStructureType: ** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT === New Enums None. === New Structures * Extending slink:VkPhysicalDeviceFeatures2: ** slink:VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT === New Functions None. === New SPIR-V Capabilities * <> * <> * <> === Issues None. === Version History * Revision 1, 2019-05-24 (Piers Daniell) - Internal revisions