mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-01-12 06:54:14 +00:00
3e4bee3d11
* Bump API patch number and header version number to 43 for this update. Github Issues: * Make clearer that color write mask is applied regardless of whether blending is enabled, by referring to the <<framebuffer-color-write-mask,Color Write Mask>> section (public issue 241). * Fix public issue 414: ** Added two new command buffer states (invalid, pending), and an explicit "command buffer lifecycle" section to explain them. ** Replaced "pending execution" with "in the pending state". ** Replaced a bunch of "this will invalidate the command buffer" language with "this will move the command buffer to the invalid state", and added validation language for what state those command buffers should be in. ** Added additional validation language about what state a command buffer should be in for various commands that affect it. ** Added invalidation language to destroy commands in the lifetimes section of fundamentals. ** Added command buffers to list of objects which must not be deleted whilst a (primary) command buffer is in the recording or pending state. * Update `GL_KHR_vulkan_glsl` extension to allow anonymous push constant blocks (public issue 428). Internal Issues: * Document rules about extension interactions in the style guide (internal issue 579). * Require ename:VK_PRESENT_MODE_MAILBOX_KHR support in queries of surfaces created with flink:vkCreateWaylandSurfaceKHR using the VK_KHR_wayland_surface extension (internal issue 666). * Remove Valid Usage constraints for flink:vkAllocateDescriptorSets when the `VK_KHR_maintainance1` extension is present (internal issue 686). * Remove undocumented KHX-variants of vkGetPhysicalDeviceProperties2KHR and vkGetPhysicalDeviceImageFormatProperties2KHR from the <<VK_KHX_external_memory_capabilities>> and <<VK_KHX_external_semaphore_capabilities>> extensions. New Extensions: * `VK_EXT_hdr_metadata` * `VK_GOOGLE_display_timing`
76 lines
2.4 KiB
Plaintext
76 lines
2.4 KiB
Plaintext
[[VK_EXT_hdr_metadata]]
|
|
== VK_EXT_hdr_metadata
|
|
|
|
*Name String*::
|
|
+VK_EXT_hdr_metadata+
|
|
*Extension Type*::
|
|
Device
|
|
*Registered Extension Number*::
|
|
106
|
|
*Last Modified Date*::
|
|
2017-03-04
|
|
*Revision*::
|
|
1
|
|
*IP Status*::
|
|
No known IP claims.
|
|
*Dependencies*::
|
|
- This extension is written against version 1.0 of the Vulkan API.
|
|
- This extension requires +VK_KHR_surface+.
|
|
*Contributors*::
|
|
- Courtney Goeltzenleuchter, Google
|
|
*Contacts*::
|
|
- Courtney Goeltzenleuchter, Google
|
|
|
|
This extension defines two new structures and a function to assign SMPTE
|
|
(the Society of Motion Picture and Television Engineers) 2086 metadata and
|
|
CTA (Consumer Technology Assocation) 861.3 metadata to a swapchain.
|
|
The metadata includes the color primaries, white point, and luminance range
|
|
of the mastering display, which all together define the color volume that
|
|
contains all the possible colors the mastering display can produce.
|
|
The mastering display is the display where creative work is done and
|
|
creative intent is established.
|
|
To preserve such creative intent as much as possible and achieve consistent
|
|
color reproduction on different viewing displays, it is useful for the
|
|
display pipeline to know the color volume of the original mastering display
|
|
where content was created or tuned.
|
|
This avoids performing unnecessary mapping of colors that are not
|
|
displayable on the original mastering display.
|
|
The metadata also includes the maxContentLightLevel and
|
|
maxFrameAverageLightLevel as defined by CTA 861.3.
|
|
|
|
While the general purpose of the metadata is to assist in the transformation
|
|
between different color volumes of different displays and help achieve
|
|
better color reproduction, it is not in the scope of this extension to
|
|
define how exactly the metadata should be used in such a process.
|
|
It is up to the implementation to determine how to make use of the metadata.
|
|
|
|
=== New Enum Constants
|
|
|
|
* Extending elink:VkStructureType:
|
|
** ename:VK_STRUCTURE_TYPE_HDR_METADATA_EXT
|
|
|
|
=== New Structures
|
|
|
|
* slink:VkXYColorEXT
|
|
* slink:VkHdrMetadataEXT
|
|
|
|
=== New Functions
|
|
|
|
* flink:vkSetHdrMetadataEXT
|
|
|
|
=== Issues
|
|
|
|
1) Do we need a query function?
|
|
|
|
PROPOSED: No, Vulkan does not provide queries for state that the
|
|
application can track on its own.
|
|
|
|
2) Should we specify default if not specified by the application?
|
|
|
|
PROPOSED: No, that leaves the default up to the display.
|
|
|
|
=== Version History
|
|
|
|
* Revision 1, 2016-12-27 (Courtney Goeltzenleuchter)
|
|
- Initial version
|