Skip to content

Commit

Permalink
Change log for January 15, 2020 Vulkan 1.2.131 spec update:
Browse files Browse the repository at this point in the history
  * Vulkan 1.2 initial release. Update release number to 131 for this
    update. The patch number will be used for all Vulkan 1.x spec updates,
    and continue to increment continuously from the previous Vulkan 1.1.130
    update.

Github Issues:

  * Use the attributes {prime}, {YCbCr}, and {RGBprime} for better markup of
    prime symbols, and ease of changing the markup for the commonly used
    color format names (public issue 636).
  * Expand the <<extendingvulkan-extensions-extensiondependencies, Extension
    Dependencies>> section to acknowledge that extension dependencies are
    usually, but not always satisfied by promoted versions of the
    dependencies, and point to the extension and version appendices for more
    information (public issue 1085).
  * Clarify the <<features-shaderStorageImageExtendedFormats,
    pname:shaderStorageImageExtendedFormats>> feature and add corresponding
    formats to the <<formats-mandatory-features-2byte>>,
    <<formats-mandatory-features-10bit>>,
    <<formats-mandatory-features-16bit>>, and
    <<formats-mandatory-features-64bit>> tables (public pull request 1098).
  * Fix issue 2 wording in the `<<VK_KHR_surface>>` appendix (public pull
    request 1100).
  * Fix valid usage statements for
    slink:VkSwapchainCreateInfoKhr::pname:minImageCount interactions with
    `<<VK_KHR_shared_presentable_image>>` (public pull request 1101).
  * Change the etext:VK_QUERY_SCOPE_* tokens in the
    slink:VkPerformanceCounterScopeKHR to aliases of new
    etext:VK_PERFORMANCE_COUNTER_SCOPE_* tokens, following the naming
    conventions for enumerants (public issue 1130).
  * Move `NV` extension pipe stages in elink:VkShaderStageFlagBits so they
    are not included in enmae:VK_SHADER_STAGE_ALL_GRAPHICS (public pull
    request 1133).
  * Clarify the introduction of the "`Surface Queries`" section of the
    <<wsi, Window System Integration>> chapter (public pull request 1135).
  * Fix macros that consume codelike text like pname:foo\->bar (public pull
    request 1149).

Internal Issues:

  * Add a new <<fundamentals-errorcodes, error code>>,
    ename:VK_ERROR_UNKNOWN, that can be returned by any function that has
    error returns (internal issue 1654).
  * Remove the `<<VK_EXT_filter_cubic>>` requirement to cubic filter the
    formats etext:*USCALED_PACKED32, etext:*SSCALED_PACKED32,
    etext:*UINT_PACK32, and etext:*SINT_PACK32 in the
    <<features-required-format-support, Required Format Support>> section
    (internal issue 1934).
  * Add a missing valid usage statement for
    `<<VK_KHR_buffer_device_address>>` to slink:VkBindBufferMemoryInfo,
    based on a similar statement for flink:vkBindBufferMemory (internal
    merge request 3512).
  * Fix some 'name:' macros to the correct 'pname:' (internal merge request
    3529).
  * Changes to script tools to stay relatively aligned with OpenXR scripts
    (internal merge request 3530).
  • Loading branch information
oddhack committed Jan 14, 2020
1 parent 7e1df7c commit ec1c5a0
Show file tree
Hide file tree
Showing 222 changed files with 5,863 additions and 3,427 deletions.
67 changes: 64 additions & 3 deletions ChangeLog.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,67 @@ public pull requests that have been accepted.

-----------------------------------------------------

Change log for January 15, 2020 Vulkan 1.2.131 spec update:

* Vulkan 1.2 initial release. Update release number to 131 for this
update. The patch number will be used for all Vulkan 1.x spec updates,
and continue to increment continuously from the previous Vulkan 1.1.130
update.

Github Issues:

* Use the attributes {prime}, {YCbCr}, and {RGBprime} for better markup of
prime symbols, and ease of changing the markup for the commonly used
color format names (public issue 636).
* Expand the <<extendingvulkan-extensions-extensiondependencies, Extension
Dependencies>> section to acknowledge that extension dependencies are
usually, but not always satisfied by promoted versions of the
dependencies, and point to the extension and version appendices for more
information (public issue 1085).
* Clarify the <<features-shaderStorageImageExtendedFormats,
pname:shaderStorageImageExtendedFormats>> feature and add corresponding
formats to the <<formats-mandatory-features-2byte>>,
<<formats-mandatory-features-10bit>>,
<<formats-mandatory-features-16bit>>, and
<<formats-mandatory-features-64bit>> tables (public pull request 1098).
* Fix issue 2 wording in the `<<VK_KHR_surface>>` appendix (public pull
request 1100).
* Fix valid usage statements for
slink:VkSwapchainCreateInfoKhr::pname:minImageCount interactions with
`<<VK_KHR_shared_presentable_image>>` (public pull request 1101).
* Change the etext:VK_QUERY_SCOPE_* tokens in the
slink:VkPerformanceCounterScopeKHR to aliases of new
etext:VK_PERFORMANCE_COUNTER_SCOPE_* tokens, following the naming
conventions for enumerants (public issue 1130).
* Move `NV` extension pipe stages in elink:VkShaderStageFlagBits so they
are not included in enmae:VK_SHADER_STAGE_ALL_GRAPHICS (public pull
request 1133).
* Clarify the introduction of the "`Surface Queries`" section of the
<<wsi, Window System Integration>> chapter (public pull request 1135).
* Fix macros that consume codelike text like pname:foo\->bar (public pull
request 1149).

Internal Issues:

* Add a new <<fundamentals-errorcodes, error code>>,
ename:VK_ERROR_UNKNOWN, that can be returned by any function that has
error returns (internal issue 1654).
* Remove the `<<VK_EXT_filter_cubic>>` requirement to cubic filter the
formats etext:*USCALED_PACKED32, etext:*SSCALED_PACKED32,
etext:*UINT_PACK32, and etext:*SINT_PACK32 in the
<<features-required-format-support, Required Format Support>> section
(internal issue 1934).
* Add a missing valid usage statement for
`<<VK_KHR_buffer_device_address>>` to slink:VkBindBufferMemoryInfo,
based on a similar statement for flink:vkBindBufferMemory (internal
merge request 3512).
* Fix some 'name:' macros to the correct 'pname:' (internal merge request
3529).
* Changes to script tools to stay relatively aligned with OpenXR scripts
(internal merge request 3530).

-----------------------------------------------------

Change log for December 9, 2019 Vulkan 1.1.130 spec update:

* Update release number to 130
Expand Down Expand Up @@ -1320,7 +1381,7 @@ Public Issues:

Internal Issues:

* Document restrictions on image queries for Y'CbCr formats in the
* Document restrictions on image queries for {YCbCr} formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
Expand Down Expand Up @@ -1473,10 +1534,10 @@ Internal Issues:
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
* Make sparse image creation optional for {YCbCr} formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
requiring sampler {YCbCr} conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
Expand Down
10 changes: 7 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#
# To build the spec with a specific version included, set the
# $(VERSIONS) variable on the make command line to a space-separated
# list of version names (e.g. VK_VERSION_1_1) *including all previous
# list of version names (e.g. VK_VERSION_1_2) *including all previous
# versions of the API* (e.g. VK_VERSION_1_1 must also include
# VK_VERSION_1_0). $(VERSIONS) is converted into asciidoc and generator
# script arguments $(VERSIONATTRIBS) and $(VERSIONOPTIONS)
Expand All @@ -32,7 +32,7 @@
# runs of `make`.
.DELETE_ON_ERROR:

VERSIONS := VK_VERSION_1_0 VK_VERSION_1_1
VERSIONS := VK_VERSION_1_0 VK_VERSION_1_1 VK_VERSION_1_2
VERSIONATTRIBS := $(foreach version,$(VERSIONS),-a $(version))
VERSIONOPTIONS := $(foreach version,$(VERSIONS),-feature $(version))

Expand Down Expand Up @@ -119,12 +119,16 @@ VERBOSE =
# ADOCOPTS options for asciidoc->HTML5 output

NOTEOPTS = -a editing-notes -a implementation-guide
PATCHVERSION = 130
PATCHVERSION = 131
ifneq (,$(findstring VK_VERSION_1_2,$(VERSIONS)))
SPECREVISION = 1.2.$(PATCHVERSION)
else
ifneq (,$(findstring VK_VERSION_1_1,$(VERSIONS)))
SPECREVISION = 1.1.$(PATCHVERSION)
else
SPECREVISION = 1.0.$(PATCHVERSION)
endif
endif

# Spell out ISO 8601 format as not all date commands support --rfc-3339
SPECDATE = $(shell echo `date -u "+%Y-%m-%d %TZ"`)
Expand Down
7 changes: 7 additions & 0 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,13 @@ Everything is now maintained in the `master` branch of the repository.
From this branch it is possible to generate both Vulkan 1.1 and Vulkan 1.0
Specifications, as well as specifications for any set of Extensions.

With the release of Vulkan 1.2, the current Specification continues to be
maintained in the `master` branch.
The last public spec update (Vulkan 1.1.130) can be found via the `v1.1.130`
git tag.
The last state of the `master` branch before 1.2 content was merged into it
can be found via the `1.1-archive` tag in Khronos' internal gitlab.


== Directory Structure

Expand Down
2 changes: 2 additions & 0 deletions appendices/VK_AMD_draw_indirect_count.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ include::{generated}/meta/VK_AMD_draw_indirect_count.txt[]

*Last Modified Date*::
2016-08-23
*Interactions and External Dependencies*::
- Promoted to <<VK_KHR_draw_indirect_count>>
*IP Status*::
No known IP claims.
*Contributors*::
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ creating the dlink:AHardwareBuffer externally and importing it.

Some dlink:AHardwareBuffer images have implementation-defined _external
formats_ that may: not correspond to Vulkan formats.
Sampler Y'C~b~C~r~ conversion can: be used to sample from these images and
Sampler {YCbCr} conversion can: be used to sample from these images and
convert them to a known color space.

=== New Object Types
Expand Down Expand Up @@ -98,14 +98,14 @@ is determined by the allocator HAL, so it is not known until the image is
bound to memory.

3) Should the result of sampling an external-format image with the suggested
Y'C~b~C~r~ conversion parameters yield the same results as using a
{YCbCr} conversion parameters yield the same results as using a
code:samplerExternalOES in OpenGL ES?

*RESOLVED*: This would be desirable, so that apps converting from OpenGL ES
to Vulkan could get the same output given the same input.
But since sampling and conversion from Y'C~b~C~r~ images is so loosely
defined in OpenGL ES, multiple implementations do it in a way that doesn't
conform to Vulkan's requirements.
But since sampling and conversion from {YCbCr} images is so loosely defined
in OpenGL ES, multiple implementations do it in a way that doesn't conform
to Vulkan's requirements.
Modifying the OpenGL ES implementation would be difficult, and would change
the output of existing unmodified applications.
Changing the output only for applications that are being modified gives
Expand Down
2 changes: 1 addition & 1 deletion appendices/VK_EXT_astc_decode_mode.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2018-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down
11 changes: 11 additions & 0 deletions appendices/VK_EXT_descriptor_indexing.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ include::{generated}/meta/VK_EXT_descriptor_indexing.txt[]
Complete
*Last Modified Data*::
2017-10-02
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Daniel Rakos, AMD
Expand Down Expand Up @@ -90,6 +92,15 @@ None.

None.

=== Promotion to Vulkan 1.2

Functionality in this extension is included in core Vulkan 1.2, with the EXT
suffix omitted.
However, if Vulkan 1.2 is supported and this extension is not, the
code:descriptorIndexing capability is optional.
The original type, enum and command names are still available as aliases of
the core functionality.

=== Issues

None.
Expand Down
5 changes: 4 additions & 1 deletion appendices/VK_EXT_filter_cubic.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
include::{generated}/meta/VK_EXT_filter_cubic.txt[]

*Last Modified Date*::
2019-01-24
2019-12-13
*Contributors*::
- Bill Licea-Kane, Qualcomm Technologies, Inc.
- Andrew Garrard, Samsung
Expand Down Expand Up @@ -30,6 +30,9 @@ support cubic filtering.

=== Version History

* Revision 3, 2019-12-13 (wwlk)
- Delete requirement to cubic filter the formats USCALED_PACKED32,
SSCALED_PACKED32, UINT_PACK32, and SINT_PACK32 (cut/paste error)
* Revision 2, 2019-06-05 (wwlk)
- Clarify 1D optional
* Revision 1, 2019-01-24 (wwlk)
Expand Down
2 changes: 1 addition & 1 deletion appendices/VK_EXT_full_screen_exclusive.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018 Khronos Group. This work is licensed under a
// Copyright (c) 2018-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down
2 changes: 1 addition & 1 deletion appendices/VK_EXT_headless_surface.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2017-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2017-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down
8 changes: 8 additions & 0 deletions appendices/VK_EXT_host_query_reset.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ include::{generated}/meta/VK_EXT_host_query_reset.txt[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*Contributors*::
- Bas Nieuwenhuizen, Google
- Jason Ekstrand, Intel
Expand All @@ -30,6 +31,13 @@ None.

* flink:vkResetQueryPoolEXT

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2, with the
EXT suffix omitted.
The original type, enum and command names are still available as aliases of
the core functionality.

=== Issues

=== Version History
Expand Down
4 changes: 2 additions & 2 deletions appendices/VK_EXT_image_drm_format_modifier.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2018-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down Expand Up @@ -309,7 +309,7 @@ Beginning in Linux 4.10, the kernel requires that the application provide
the same DRM format _modifier_ for each plane.
(See Linux commit
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bae781b259269590109e8a4a8227331362b88212[bae781b259269590109e8a4a8227331362b88212]).
And GBM provides an entrypoint, code:gbm_bo_get_modifier, for querying the
And GBM provides an entry point, code:gbm_bo_get_modifier, for querying the
_modifier_ of the image but does not provide one to query the modifier of
individual planes.
--
Expand Down
2 changes: 1 addition & 1 deletion appendices/VK_EXT_memory_budget.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2018-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down
2 changes: 1 addition & 1 deletion appendices/VK_EXT_memory_priority.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2018-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

Expand Down
9 changes: 9 additions & 0 deletions appendices/VK_EXT_sampler_filter_minmax.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ include::{generated}/meta/VK_EXT_sampler_filter_minmax.txt[]

*Last Modified Date*::
2017-05-19
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
Expand Down Expand Up @@ -56,6 +58,13 @@ None.

None.

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2, with the
EXT suffix omitted.
The original type, enum and command names are still available as aliases of
the core functionality.

=== Issues

None.
Expand Down
13 changes: 12 additions & 1 deletion appendices/VK_EXT_scalar_block_layout.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
// Copyright (c) 2017-2019 Khronos Group. This work is licensed under a
// Copyright (c) 2017-2020 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/

include::{generated}/meta/VK_EXT_scalar_block_layout.txt[]

*Last Modified Date*::
2018-11-14
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*Contributors*::
- Jeff Bolz
- Jan-Harald Fredriksen
Expand Down Expand Up @@ -33,6 +35,15 @@ based on the size of their components, without additional requirements.

* slink:VkPhysicalDeviceScalarBlockLayoutFeaturesEXT

=== Promotion to Vulkan 1.2

Functionality in this extension is included in core Vulkan 1.2, with the EXT
suffix omitted.
However, if Vulkan 1.2 is supported and this extension is not, the
code:scalarBlockLayout capability is optional.
The original type, enum and command names are still available as aliases of
the core functionality.

=== Issues

None.
Expand Down
9 changes: 9 additions & 0 deletions appendices/VK_EXT_separate_stencil_usage.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ include::{generated}/meta//VK_EXT_separate_stencil_usage.txt[]

*Last Modified Date*::
2018-11-08
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
Expand Down Expand Up @@ -32,6 +34,13 @@ None.

None.

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2, with the
EXT suffix omitted.
The original type, enum and command names are still available as aliases of
the core functionality.

=== Issues

None.
Expand Down
19 changes: 19 additions & 0 deletions appendices/VK_EXT_shader_viewport_index_layer.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ include::{generated}/meta/VK_EXT_shader_viewport_index_layer.txt[]

*Last Modified Date*::
2017-08-08
*Interactions and External Dependencies*::
- Promoted to Vulkan 1.2 Core
*Interactions and External Dependencies*::
- This extension requires the
{spirv}/EXT/SPV_EXT_shader_viewport_index_layer.html[`SPV_EXT_shader_viewport_index_layer`]
Expand Down Expand Up @@ -82,6 +84,23 @@ None.

* <<spirvenv-capabilities-table-shader-viewport-index-layer,code:ShaderViewportIndexLayerEXT>>

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2.

The single code:ShaderViewportIndexLayerEXT capability from the
`SPV_EXT_shader_viewport_index_layer` extension is replaced by the
<<spirvenv-capabilities-table-shader-viewport-index,code:ShaderViewportIndex>>
and <<spirvenv-capabilities-table-shader-layer,code:ShaderLayer>>
capabilities from SPIR-V 1.5 which are enabled by the
<<features-shaderOutputViewportIndex,shaderOutputViewportIndex>> and
<<features-shaderOutputLayer,shaderOutputLayer>> features, respectively.
Additionally, if Vulkan 1.2 is supported but this extension is not, these
capabilities are optional.

Enabling both features is equivalent to enabling the
VK_EXT_shader_viewport_index_layer extension.

=== Issues

None yet!
Expand Down
Loading

0 comments on commit ec1c5a0

Please sign in to comment.