Vulkan-Docs/appendices/VK_EXT_hdr_metadata.txt
Jon Leech 56e0289318 Change log for January 05, 2019 Vulkan 1.1.97 spec update:
* Update release number to 97.

Public Issues:

  * Add a special case to the <<renderpass-compatibility, Render Pass
    Compatibility>> rules allowing single-subpass renderpasses to be
    compatible even if they have different resolve attachment references
    (public issue 835).
  * Fix the miss shader binding table record address rule in the
    <<shader-binding-table-indexing-rules, Miss Shaders>> section to index
    by code:missIndex, not code:sbtOffset (public issue 875).

Internal Issues:

  * Add a missing anchor to the elink:VkSamplerCreateFlagBits language
    (internal issue 1483).
  * Add missing implicit valid usage include for slink:VkHdrMetadataEXT and
    corresponding `noautovalidity` attributes in `vk.xml` for the
    externally-defined metadata properties (internal issue 1514).
  * Remove restrictions on the `mask` parameter of SPIR-V's
    code:OpGroupNonUniformXor in the <<spirvenv-module-validation,
    Validation Rules within a Module>> appendix (internal merge request
    2971).
  * Restore `noautovalidity` attribute for
    slink:VkPipelineViewportWScalingStateCreateInfoNV::pname:pViewportWScalings
    in `vk.xml` (internal merge request 2975).
  * Update copyright dates on Khronos-copyrighted files to 2019 (internal
    merge request 2980).

New Extensions:

  * `VK_KHR_depth_stencil_resolve`
  * `VK_EXT_buffer_device_address`
  * `VK_EXT_memory_budget`
  * `VK_EXT_memory_priority`
  * `VK_EXT_validation_features`
2019-01-05 19:40:12 -08:00

65 lines
2.2 KiB
Plaintext

include::meta/VK_EXT_hdr_metadata.txt[]
*Last Modified Date*::
2017-03-04
*IP Status*::
No known IP claims.
*Contributors*::
- 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 Association) 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 pname:maxContentLightLevel and
pname: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
* Revision 2, 2018-12-19 (Courtney Goeltzenleuchter)
- Correct implicit validity for VkHdrMetadataEXT structure