| include::meta/VK_EXT_swapchain_colorspace.txt[] |
| |
| *Last Modified Date*:: |
| 2017-03-15 |
| *IP Status*:: |
| No known IP claims. |
| *Contributors*:: |
| - Courtney Goeltzenleuchter, Google |
| |
| === New Enum Constants |
| |
| * Extending elink:VkColorSpaceKHR: |
| ** ename:VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT - supports the Display-P3 |
| color space and applies an sRGB-like transfer function. |
| ** ename:VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT - supports the extended |
| sRGB color space and applies a linear transfer function. |
| ** ename:VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT - supports the |
| extended sRGB color space with an sRGB nonlinear transfer function. |
| ** ename:VK_COLOR_SPACE_DCI_P3_LINEAR_EXT - supports the DCI-P3 color |
| space and applies a linear OETF. |
| ** ename:VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT - supports the DCI-P3 color |
| space and applies the Gamma 2.6 OETF. |
| ** ename:VK_COLOR_SPACE_BT709_LINEAR_EXT - supports the BT709 color space |
| and applies a linear transfer function. |
| ** ename:VK_COLOR_SPACE_BT709_NONLINEAR_EXT - supports the BT709 color |
| space and applies the SMPTE 170M OETF. |
| ** ename:VK_COLOR_SPACE_BT2020_LINEAR_EXT - supports the BT2020 color |
| space and applies a linear OETF. |
| ** ename:VK_COLOR_SPACE_HDR10_ST2084_EXT - supports HDR10 (BT2020 color |
| space and applies the SMPTE ST2084 Perceptual Quantizer (PQ) OETF). |
| ** ename:VK_COLOR_SPACE_DOLBYVISION_EXT - supports Dolby Vision (BT2020 |
| color space, proprietary encoding, and applies the SMPTE ST2084 OETF). |
| ** ename:VK_COLOR_SPACE_HDR10_HLG_EXT - supports HDR10 (BT2020 color space |
| and applies the Hybrid Log Gamma (HLG) OETF). |
| ** ename:VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT - supports the AdobeRGB color |
| space and applies a linear OETF. |
| ** ename:VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT - supports the AdobeRGB |
| color space and applies the Gamma 2.2 OETF. |
| ** ename:VK_COLOR_SPACE_PASS_THROUGH_EXT - color components used "`as |
| is`". |
| Intended to allow application to supply data for color spaces not |
| described here. |
| |
| === Issues |
| |
| 1) Does the spec need to specify which kinds of image formats support the |
| color spaces? |
| |
| *RESOLVED*: Pixel format is independent of color space (though some color |
| spaces really want / need floating point color components to be useful). |
| Therefore, do not plan on documenting what formats support which |
| colorspaces. |
| An application can: call flink:vkGetPhysicalDeviceSurfaceFormatsKHR to query |
| what a particular implementation supports. |
| |
| 2) How does application determine if HW supports appropriate transfer |
| function for a colorspace? |
| |
| *RESOLVED*: Extension indicates that implementation must: not do the OETF |
| encoding if it is not sRGB. |
| That responsibility falls to the application shaders. |
| Any other native OETF / EOTF functions supported by an implementation can be |
| described by separate extension. |
| |
| === Version History |
| |
| * Revision 1, 2016-12-27 (Courtney Goeltzenleuchter) |
| - Initial version |
| |
| * Revision 2, 2017-01-19 (Courtney Goeltzenleuchter) |
| - Add pass through and multiple options for BT2020. |
| - Clean up some issues with equations not displaying properly. |
| |
| * Revision 3, 2017-06-23 (Courtney Goeltzenleuchter) |
| - Add extended sRGB non-linear enum. |