Vulkan-Docs/chapters/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

75 lines
2.7 KiB
Plaintext

// This section is included inside VK_KHR_swapchain
== Hdr Metadata
To improve color reproduction of content it is useful to have information
that can be used to better reproduce the colors as seen on the mastering
display.
That information can be provided to an implementation by calling
fname:vkSetHdrMetadataEXT.
The metadata will be applied to the specified sname:VkSwapchainKHR objects
at the next fname:vkQueuePresentKHR call using that sname:VkSwapchainKHR
object.
The metadata will persist until a subsequent fname:vkSetHdrMetadataEXT
changes it.
The definitions below are from the associated SMPTE 2086, CTA 861.3 and CIE
15:2004 specifications.
The definition of fname:vkSetHdrMetadataEXT is:
[open,refpage='vkSetHdrMetadataEXT',desc='function to set Hdr metadata',type='protos']
--
include::../api/protos/vkSetHdrMetadataEXT.txt[]
* pname:device is the logical device where the swapchain(s) were created.
* pname:swapchainCount is the number of swapchains included in
pname:pSwapchains.
* pname:pSwapchains is a pointer to the array of pname:swapchainCount
sname:VkSwapchainKHR handles.
* pname:pMetadata is a pointer to the array of pname:swapchainCount
sname:VkHdrMetadataEXT structures.
include::../validity/protos/vkSetHdrMetadataEXT.txt[]
--
[open,refpage='VkXYColorEXT',desc='structure to specify X,Y chromaticity coordinates',type='structs']
--
include::../api/structs/VkXYColorEXT.txt[]
Chromaticity coordinates x and y are as specified in CIE 15:2004
"`Calculation of chromaticity coordinates`" (Section 7.3) and are limited to
between 0 and 1 for real colors for the mastering display.
--
[open,refpage='VkHdrMetadataEXT',desc='structure to specify Hdr metadata',type='structs']
--
include::../api/structs/VkHdrMetadataEXT.txt[]
* pname:sType is the type of this structure.
* pname:pNext is `NULL` or a pointer to an extension-specific structure.
* pname:displayPrimaryRed is the mastering display's red primary in
chromaticity coordinates
* pname:displayPrimaryGreen is the mastering display's green primary in
chromaticity coordinates
* pname:displayPrimaryBlue is the mastering display's blue primary in
chromaticity coordinates
* pname:whitePoint is the mastering display's white-point in chromaticity
coordinates
* pname:maxLuminance is the maximum luminance of the mastering display in
nits
* pname:minLuminance is the minimum luminance of the mastering display in
nits
* pname:maxContentLightLevel is content's maximum luminance in nits
* pname:maxFrameAverageLightLevel is the maximum frame average light level
in nits
include::../validity/structs/VkHdrMetadataEXT.txt[]
[NOTE]
.Note
====
The validity and use of this data is outside the scope of Vulkan.
====
--