Vulkan-Docs/appendices/VK_EXT_fragment_density_map...

90 lines
2.9 KiB
Plaintext

include::meta/VK_EXT_fragment_density_map.txt[]
*Last Modified Date*::
2018-09-25
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/EXT/SPV_EXT_fragment_invocation_density.html[`SPV_EXT_fragment_invocation_density`]
SPIR-V extension.
*Contributors*::
- Matthew Netsch, Qualcomm Technologies, Inc.
- Robert VanReenen, Qualcomm Technologies, Inc.
- Jonathan Wicks, Qualcomm Technologies, Inc.
- Tate Hornbeck, Qualcomm Technologies, Inc.
- Sam Holmes, Qualcomm Technologies, Inc.
- Jeff Leger, Qualcomm Technologies, Inc.
- Jan-Harald Fredriksen, ARM
- Jeff Bolz, NVIDIA
- Pat Brown, NVIDIA
- Daniel Rakos, AMD
- Piers Daniell, NVIDIA
This extension allows an application to specify areas of the render target
where the fragment shader may be invoked fewer times.
These fragments are broadcasted out to multiple pixels to cover the render
target.
The primary use of this extension is to reduce workloads in areas where
lower quality may not be perceived such as the distorted edges of a lens or
the periphery of a user's gaze.
=== New Object Types
None.
=== New Enum Constants
* Extending elink:VkAccessFlagBits:
** ename:VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT
* Extending elink:VkFormatFeatureFlagBits:
** ename:VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT
* Extending elink:VkImageCreateFlagBits:
** ename:VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT
* Extending elink:VkImageLayout:
** ename:VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT
* Extending elink:VkImageUsageFlagBits:
** ename:VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT
* Extending elink:VkImageViewCreateFlagBits:
** ename:VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT
* Extending elink:VkPipelineStageFlagBits:
** ename:VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT
* Extending elink:VkSamplerCreateFlagBits:
** ename:VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT
** ename:VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT
* Extending elink:VkStructureType:
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT
** ename:VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT
=== New Enums
None.
=== New Structures
* slink:VkPhysicalDeviceFragmentDensityMapFeaturesEXT
* slink:VkPhysicalDeviceFragmentDensityMapPropertiesEXT
* slink:VkRenderPassFragmentDensityMapCreateInfoEXT
=== New Functions
None.
=== New or Modified Built-In Variables
* <<interfaces-builtin-variables-fraginvocationcount,code:FragInvocationCountEXT>>
* <<interfaces-builtin-variables-fragsize,code:FragSizeEXT>>
=== New Variable Decorations
None.
=== New SPIR-V Capabilities
* <<spirvenv-capabilities-table-fragmentdensity,FragmentDensityEXT>>
=== Version History
* Revision 1, 2018-09-25 (Matthew Netsch)
- Initial version