Hello community, here is the log from the commit of package vulkan-doc for openSUSE:Factory checked in at 2019-11-11 21:22:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/vulkan-doc (Old) and /work/SRC/openSUSE:Factory/.vulkan-doc.new.2990 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vulkan-doc" Mon Nov 11 21:22:45 2019 rev:4 rq:746191 version:1.1.127 Changes: -------- --- /work/SRC/openSUSE:Factory/vulkan-doc/vulkan-doc.changes 2019-10-28 16:59:58.581729742 +0100 +++ /work/SRC/openSUSE:Factory/.vulkan-doc.new.2990/vulkan-doc.changes 2019-11-11 21:22:47.855742183 +0100 @@ -1,0 +2,8 @@ +Thu Nov 7 07:14:59 UTC 2019 - Jan Engelhardt <jeng...@inai.de> + +- Update to release 1.1.127 + * VK_KHR_separate_depth_stencil_layouts allows for image memory + barriers for depth/stencil images to have just one of the + depth or stencil bits set instead of both. + +------------------------------------------------------------------- Old: ---- v1.1.126.tar.gz New: ---- v1.1.127.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ vulkan-doc.spec ++++++ --- /var/tmp/diff_new_pack.7hQfDz/_old 2019-11-11 21:22:49.775743931 +0100 +++ /var/tmp/diff_new_pack.7hQfDz/_new 2019-11-11 21:22:49.779743935 +0100 @@ -17,7 +17,7 @@ Name: vulkan-doc -Version: 1.1.126 +Version: 1.1.127 Release: 0 Summary: Formal documentation of the Vulkan API License: CC-BY-SA-4.0 AND Apache-2.0 ++++++ v1.1.126.tar.gz -> v1.1.127.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/ChangeLog.txt new/Vulkan-Docs-1.1.127/ChangeLog.txt --- old/Vulkan-Docs-1.1.126/ChangeLog.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/ChangeLog.txt 2019-11-04 07:39:55.000000000 +0100 @@ -8,6 +8,44 @@ ----------------------------------------------------- +Change log for November 4, 2019 Vulkan 1.1.127 spec update: + + * Update release number to 127 + +Github Issues: + + * Consistently use the feature name pname:pipelineExecutableInfo as found + in `vk.xml` and the generated header files, instead of + pname:pipelineExecutableProperties as sometimes used in the + specification text (public issue 1061). + * Clarify the definition of the code:PrimitiveId returned by a + `<<VK_NV_ray_tracing>>` shader (public issue 1068). + +Internal Issues: + + * Remove unused `draw_renderpass_validation.txt` valid usage text + (internal issue 1869). + * Require <<features-features-timelineSemaphore, pname:timelineSemaphore>> + if the `<<VK_KHR_timeline_semaphore>>` extension is supported (internal + issue 1873). + * Fix typos in slink:VkBindBufferMemoryInfo valid usage statement 02791 + and various slink:VkSparseMemoryBind VUs (internal merge request 3411). + * Minor non-semantic markup and diagram fixes (internal merge request + 3417). + * Clarify that <<interfaces-iointerfaces-locations, Location>> values are + physical slots, not a virtual table that just imposes an overall maximum + on the number of locations that can be used (internal merge request + 3426). + * Add links to GLSL specs from the `<<VK_KHR_shader_clock>>` appendix, as + well as expected mappings for GLSL builtins (internal merge request + 3429). + +New Extensions + + * `<<VK_KHR_separate_depth_stencil_layouts>>` + +----------------------------------------------------- + Change log for October 21, 2019 Vulkan 1.1.126 spec update: * Update release number to 126 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/Makefile new/Vulkan-Docs-1.1.127/Makefile --- old/Vulkan-Docs-1.1.126/Makefile 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/Makefile 2019-11-04 07:39:55.000000000 +0100 @@ -119,7 +119,7 @@ # ADOCOPTS options for asciidoc->HTML5 output NOTEOPTS = -a editing-notes -a implementation-guide -PATCHVERSION = 126 +PATCHVERSION = 127 ifneq (,$(findstring VK_VERSION_1_1,$(VERSIONS))) SPECREVISION = 1.1.$(PATCHVERSION) else diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/appendices/VK_KHR_separate_depth_stencil_layouts.txt new/Vulkan-Docs-1.1.127/appendices/VK_KHR_separate_depth_stencil_layouts.txt --- old/Vulkan-Docs-1.1.126/appendices/VK_KHR_separate_depth_stencil_layouts.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/Vulkan-Docs-1.1.127/appendices/VK_KHR_separate_depth_stencil_layouts.txt 2019-11-04 07:39:55.000000000 +0100 @@ -0,0 +1,70 @@ +// Copyright (c) 2019 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_KHR_separate_depth_stencil_layouts.txt[] + +*Last Modified Data*:: + 2019-06-25 +*Contributors*:: + - Daniel Koch, NVIDIA + - Jeff Bolz, NVIDIA + - Jesse Barker, Unity + - Tobias Hector, AMD + +This extension allows image memory barriers for depth/stencil images to have +just one of the ename:VK_IMAGE_ASPECT_DEPTH_BIT or +ename:VK_IMAGE_ASPECT_STENCIL_BIT aspect bits set, rather than require both. +This allows their layouts to be set independently. +To support depth/stencil images with different layouts for the depth and +stencil aspects, the depth/stencil attachment interface has been updated to +support a separate layout for stencil. + +=== New Object Types + +None. + +=== New Enum Constants + + * Extending elink:VkStructureType: + ** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR + ** ename:VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR + ** ename:VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR + + * Extending elink:VkImageLayout: + ** ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR + ** ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR + ** ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR + ** ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + +=== New Enums + +None. + +=== New Structures + + * Extending slink:VkPhysicalDeviceFeatures2: + ** slink:VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR + + * Extending slink:VkAttachmentReference2KHR: + ** slink:VkAttachmentReferenceStencilLayoutKHR + + * Extending slink:VkAttachmentDescription2KHR: + ** slink:VkAttachmentDescriptionStencilLayoutKHR + +=== New Functions + +None. + +=== New SPIR-V Capabilities + +None. + +=== Issues + +None. + +=== Version History + + * Revision 1, 2019-06-25 (Piers Daniell) + - Internal revisions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/appendices/VK_KHR_shader_clock.txt new/Vulkan-Docs-1.1.127/appendices/VK_KHR_shader_clock.txt --- old/Vulkan-Docs-1.1.126/appendices/VK_KHR_shader_clock.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/appendices/VK_KHR_shader_clock.txt 2019-11-04 07:39:55.000000000 +0100 @@ -6,7 +6,13 @@ No known IP claims. *Interactions and External Dependencies*:: - This extension requires - https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_shader_clock.html[+SPV_KHR_shader_clock+] + {spirv}/KHR/SPV_KHR_shader_clock.html[+SPV_KHR_shader_clock+]. + - This extension enables + https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_clock.txt[+ARB_shader_clock+] + for GLSL source languages. + - This extension enables + https://github.com/KhronosGroup/GLSL/blob/master/extensions/ext/GL_EXT_shader_realtime_clock.txt[+EXT_shader_realtime_clock+] + for GLSL source languages. *Contributors*:: - Aaron Hagan, AMD - Daniel Koch, NVIDIA @@ -17,6 +23,12 @@ The two valid SPIR-V scopes for code:OpReadClockKHR are code:Subgroup and code:Device. +When using GLSL source-based shading languages, the +code:clockRealtime*code:EXT() timing functions map to the +code:OpReadClockKHR instruction with a scope of code:Device, and the +code:clock*code:ARB() timing functions map to the code:OpReadClockKHR +instruction with a scope of code:Subgroup. + === New Object Types None. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/VK_KHR_pipeline_executable_properties/pipelines.txt new/Vulkan-Docs-1.1.127/chapters/VK_KHR_pipeline_executable_properties/pipelines.txt --- old/Vulkan-Docs-1.1.126/chapters/VK_KHR_pipeline_executable_properties/pipelines.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/VK_KHR_pipeline_executable_properties/pipelines.txt 2019-11-04 07:39:55.000000000 +0100 @@ -30,9 +30,9 @@ .Valid Usage **** - * [[VUID-vkGetPipelineExecutablePropertiesKHR-pipelineExecutableProperties-03270]] - <<features-pipelineExecutableProperties, - pname:pipelineExecutableProperties>> must: be enabled. + * [[VUID-vkGetPipelineExecutablePropertiesKHR-pipelineExecutableInfo-03270]] + <<features-pipelineExecutableInfo, pname:pipelineExecutableInfo>> must: + be enabled. * [[VUID-vkGetPipelineExecutablePropertiesKHR-pipeline-03271]] pname:pipeline member of pname:pPipelineInfo must: have been created with pname:device. @@ -280,9 +280,9 @@ .Valid Usage **** - * [[VUID-vkGetPipelineExecutableInternalRepresentationsKHR-pipelineExecutableProperties-03276]] - <<features-pipelineExecutableProperties, - pname:pipelineExecutableProperties>> must: be enabled. + * [[VUID-vkGetPipelineExecutableInternalRepresentationsKHR-pipelineExecutableInfo-03276]] + <<features-pipelineExecutableInfo, pname:pipelineExecutableInfo>> must: + be enabled. * [[VUID-vkGetPipelineExecutableInternalRepresentationsKHR-pipeline-03277]] pname:pipeline member of pname:pExecutableInfo must: have been created with pname:device. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/commonvalidity/draw_renderpass_validation.txt new/Vulkan-Docs-1.1.127/chapters/commonvalidity/draw_renderpass_validation.txt --- old/Vulkan-Docs-1.1.126/chapters/commonvalidity/draw_renderpass_validation.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/commonvalidity/draw_renderpass_validation.txt 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +0,0 @@ -// Common Valid Usage -// Not clear what these are common to, they're not included anywhere? - * [[VUID-{refpage}-None-02807]] - Every input attachment used by the current subpass must: be bound to the - pipeline via a descriptor set -// Common Valid Usage diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/drawing.txt new/Vulkan-Docs-1.1.127/chapters/drawing.txt --- old/Vulkan-Docs-1.1.126/chapters/drawing.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/drawing.txt 2019-11-04 07:39:55.000000000 +0100 @@ -133,17 +133,17 @@ <<drawing-triangle-fans,connected triangle primitives>> with all triangles sharing a common vertex. * ename:VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY specifies a series - <<drawing-line-lists-with-adjacency,separate line primitives with + of <<drawing-line-lists-with-adjacency,separate line primitives with adjacency>>. * ename:VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY specifies a series - <<drawing-line-strips-with-adjacency,connected line primitives with + of <<drawing-line-strips-with-adjacency,connected line primitives with adjacency>>, with consecutive primitives sharing three vertices. * ename:VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY specifies a - series <<drawing-line-lists-with-adjacency,separate triangle primitives - with adjacency>>. + series of <<drawing-triangle-lists-with-adjacency,separate triangle + primitives with adjacency>>. * ename:VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY specifies - <<drawing-line-lists-with-adjacency,connected triangle primitives with - adjacency>>, with consecutive triangles sharing an edge. + <<drawing-triangle-strips-with-adjacency,connected triangle primitives + with adjacency>>, with consecutive triangles sharing an edge. * ename:VK_PRIMITIVE_TOPOLOGY_PATCH_LIST specifies <<drawing-patch-lists,separate patch primitives>>. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/features.txt new/Vulkan-Docs-1.1.127/chapters/features.txt --- old/Vulkan-Docs-1.1.126/chapters/features.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/features.txt 2019-11-04 07:39:55.000000000 +0100 @@ -2300,7 +2300,7 @@ The members of the sname:VkPhysicalDeviceTimelineSemaphoreFeaturesKHR structure describe the following features: - * [[features-features-timelineSemaphore]] pname:timelineSemaphore + * [[features-timelineSemaphore]] pname:timelineSemaphore indicates whether semaphores created with a elink:VkSemaphoreTypeKHR of ename:VK_SEMAPHORE_TYPE_TIMELINE_KHR are supported. @@ -2367,6 +2367,41 @@ endif::VK_NV_shader_sm_builtins[] +ifdef::VK_KHR_separate_depth_stencil_layouts[] +[open,refpage='VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR',desc='Structure describing whether the implementation can do depth and stencil image barriers separately',type='structs'] +-- +The sname:VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR structure +is defined as: + +include::{generated}/api/structs/VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR.txt[] + +The members of the +sname:VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR structure +describe the following features: + + * [[features-separateDepthStencilLayouts]] + pname:separateDepthStencilLayouts indicates whether the implementation + supports a sname:VkImageMemoryBarrier for a depth/stencil image with + only one of ename:VK_IMAGE_ASPECT_DEPTH_BIT or + ename:VK_IMAGE_ASPECT_STENCIL_BIT set, and whether + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR can be used. + + +If the sname:VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR +structure is included in the pname:pNext chain of +slink:VkPhysicalDeviceFeatures2, it is filled with values indicating whether +the feature is supported. +sname:VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR can: also be +used in the pname:pNext chain of slink:VkDeviceCreateInfo to enable the +feature. + +include::{generated}/validity/structs/VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR.txt[] +-- +endif::VK_KHR_separate_depth_stencil_layouts[] + ifdef::VK_KHR_pipeline_executable_properties[] [open,refpage='VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR',desc='Structure describing whether pipeline executable properties are available',type='structs'] @@ -2380,10 +2415,9 @@ sname:VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR structure describe the following features: - * [[features-pipelineExecutableProperties]] - pname:pipelineExecutableProperties indicates that the implementation - supports reporting properties and statistics about the executables - associated with a compiled pipeline. + * [[features-pipelineExecutableInfo]] pname:pipelineExecutableInfo + indicates that the implementation supports reporting properties and + statistics about the executables associated with a compiled pipeline. If the sname:VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR structure is included in the pname:pNext chain of @@ -2639,11 +2673,11 @@ if the `<<VK_KHR_uniform_buffer_standard_layout>>` extension is supported. endif::VK_KHR_uniform_buffer_standard_layout[] -ifdef::VK_VERSION_1_1,VK_KHR_variable_pointers[] +ifdef::VK_KHR_variable_pointers[] * <<features-variablePointersStorageBuffer, pname:variablePointersStorageBuffer>>, if the `<<VK_KHR_variable_pointers>>` extension is supported. -endif::VK_VERSION_1_1,VK_KHR_variable_pointers[] +endif::VK_KHR_variable_pointers[] ifdef::VK_KHR_8bit_storage[] * <<features-StorageBuffer8BitAccess, pname:storageBuffer8BitAccess>>, if the `<<VK_KHR_8bit_storage>>` extension is supported. @@ -2706,5 +2740,9 @@ * <<features-computeFullSubgroups, pname:computeFullSubgroups>>, if the `<<VK_EXT_subgroup_size_control>>` extension is supported. endif::VK_EXT_subgroup_size_control[] +ifdef::VK_KHR_timeline_semaphore[] + * <<features-timelineSemaphore, pname:timelineSemaphore>>, if the + `<<VK_KHR_timeline_semaphore>>` extension is supported. +endif::VK_KHR_timeline_semaphore[] All other features defined in the Specification are optional:. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/interfaces.txt new/Vulkan-Docs-1.1.127/chapters/interfaces.txt --- old/Vulkan-Docs-1.1.126/chapters/interfaces.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/interfaces.txt 2019-11-04 07:39:55.000000000 +0100 @@ -257,6 +257,9 @@ All variables in both the <<interfaces-builtin-variables,built-in interface block>> and the <<interfaces-iointerfaces-user,user-defined variable interface>> count against these limits. +Each effective code:Location must: have a value less than the number of +locations available for the given interface, as specified in the "Locations +Available" column in <<interfaces-iointerfaces-limits>>. [[interfaces-iointerfaces-limits]] @@ -2334,7 +2337,7 @@ ifdef::VK_NV_ray_tracing[] + In an intersection, any-hit, or closest hit shader, it will contain the -index of the triangle or bounding box being processed. +index within the geometry of the triangle or bounding box being processed. endif::VK_NV_ray_tracing[] + If a geometry shader is present and the fragment shader reads from an input diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/limits.txt new/Vulkan-Docs-1.1.127/chapters/limits.txt --- old/Vulkan-Docs-1.1.126/chapters/limits.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/limits.txt 2019-11-04 07:39:55.000000000 +0100 @@ -2650,7 +2650,7 @@ | code:uint32_t | pname:maxDescriptorSetAccelerationStructures | `<<VK_NV_ray_tracing>>` endif::VK_NV_ray_tracing[] ifdef::VK_KHR_timeline_semaphore[] -| code:uint64_t | pname:maxTimelineSemaphoreValueDifference | `<<features-features-timelineSemaphore,pname:timelineSemaphore>>` +| code:uint64_t | pname:maxTimelineSemaphoreValueDifference | `<<features-timelineSemaphore,pname:timelineSemaphore>>` endif::VK_KHR_timeline_semaphore[] ifdef::VK_EXT_line_rasterization[] | code:uint32_t | pname:lineSubPixelPrecisionBits | `<<VK_EXT_line_rasterization>>` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/renderpass.txt new/Vulkan-Docs-1.1.127/chapters/renderpass.txt --- old/Vulkan-Docs-1.1.126/chapters/renderpass.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/renderpass.txt 2019-11-04 07:39:55.000000000 +0100 @@ -610,6 +610,70 @@ * [[VUID-VkAttachmentDescription-finalLayout-00843]] pname:finalLayout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED or ename:VK_IMAGE_LAYOUT_PREINITIALIZED +ifdef::VK_KHR_separate_depth_stencil_layouts[] + * [[VUID-VkAttachmentDescription-separateDepthStencilLayouts-03284]] + If the <<features-separateDepthStencilLayouts, + pname:separateDepthStencilLayouts>> feature is not enabled, + pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-separateDepthStencilLayouts-03285]] + If the <<features-separateDepthStencilLayouts, + pname:separateDepthStencilLayouts>> feature is not enabled, + pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03286]] + If pname:format is a color format, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03287]] + If pname:format is a color format, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03288]] + If pname:format is a depth/stencil format which includes both depth and + stencil aspects, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03289]] + If pname:format is a depth/stencil format which includes both depth and + stencil aspects, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03290]] + If pname:format is a depth/stencil format which includes only the depth + aspect, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03291]] + If pname:format is a depth/stencil format which includes only the depth + aspect, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03292]] + If pname:format is a depth/stencil format which includes only the + stencil aspect, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription-format-03293]] + If pname:format is a depth/stencil format which includes only the + stencil aspect, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR +endif::VK_KHR_separate_depth_stencil_layouts[] **** include::{generated}/validity/structs/VkAttachmentDescription.txt[] @@ -1760,16 +1824,150 @@ Parameters defined by this structure with the same name as those in slink:VkAttachmentDescription have the identical effect to those parameters. +ifdef::VK_KHR_separate_depth_stencil_layouts[] +If the <<features-separateDepthStencilLayouts, +pname:separateDepthStencilLayouts>> feature is enabled, and pname:format is +a depth/stencil format, pname:initialLayout and pname:finalLayout can: be +set to a layout that only specifies the layout of the depth aspect. + +If pname:format is a depth/stencil format, and pname:initialLayout only +specifies the initial layout of the depth aspect of the attachment, the +initial layout of the stencil aspect is specified by the +pname:stencilInitialLayout member of an instance of +slink:VkAttachmentDescriptionStencilLayoutKHR in the pname:pNext chain. +Otherwise, pname:initialLayout describes the initial layout for all relevant +image aspects. + +If pname:format is a depth/stencil format, and pname:finalLayout only +specifies the final layout of the depth aspect of the attachment, the final +layout of the stencil aspect is specified by the pname:stencilFinalLayout +member of an instance of slink:VkAttachmentDescriptionStencilLayoutKHR in +the pname:pNext chain. +Otherwise, pname:finalLayout describes the final layout for all relevant +image aspects. +endif::VK_KHR_separate_depth_stencil_layouts[] + .Valid Usage **** * [[VUID-VkAttachmentDescription2KHR-finalLayout-03061]] pname:finalLayout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED or ename:VK_IMAGE_LAYOUT_PREINITIALIZED +ifdef::VK_KHR_separate_depth_stencil_layouts[] + * [[VUID-VkAttachmentDescription2KHR-separateDepthStencilLayouts-03298]] + If the <<features-separateDepthStencilLayouts, + pname:separateDepthStencilLayouts>> feature is not enabled, + pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-separateDepthStencilLayouts-03299]] + If the <<features-separateDepthStencilLayouts, + pname:separateDepthStencilLayouts>> feature is not enabled, + pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03300]] + If pname:format is a color format, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03301]] + If pname:format is a color format, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03302]] + If pname:format is a depth/stencil format which includes both depth and + stencil aspects, and pname:initialLayout is + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, the pname:pNext chain + must: include a valid instance of + slink:VkAttachmentDescriptionStencilLayoutKHR + * [[VUID-VkAttachmentDescription2KHR-format-03303]] + If pname:format is a depth/stencil format which includes both depth and + stencil aspects, and pname:finalLayout is + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, the pname:pNext chain + must: include a valid instance of + slink:VkAttachmentDescriptionStencilLayoutKHR + * [[VUID-VkAttachmentDescription2KHR-format-03304]] + If pname:format is a depth/stencil format which includes only the depth + aspect, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03305]] + If pname:format is a depth/stencil format which includes only the depth + aspect, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03306]] + If pname:format is a depth/stencil format which includes only the + stencil aspect, pname:initialLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentDescription2KHR-format-03307]] + If pname:format is a depth/stencil format which includes only the + stencil aspect, pname:finalLayout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR +endif::VK_KHR_separate_depth_stencil_layouts[] **** include::{generated}/validity/structs/VkAttachmentDescription2KHR.txt[] -- +ifdef::VK_KHR_separate_depth_stencil_layouts[] + +[open,refpage='VkAttachmentDescriptionStencilLayoutKHR',desc='Structure specifying an attachment description',type='structs'] +-- + +The sname:VkAttachmentDescriptionStencilLayoutKHR structure is defined as: + +include::{generated}/api/structs/VkAttachmentDescriptionStencilLayoutKHR.txt[] + + * pname:sType is the type of this structure. + * pname:pNext is `NULL` or a pointer to an extension-specific structure. + * pname:stencilInitialLayout is the layout the stencil aspect of the + attachment image subresource will be in when a render pass instance + begins. + * pname:stencilFinalLayout is the layout the stencil aspect of the + attachment image subresource will be transitioned to when a render pass + instance ends. + +.Valid Usage +**** + * [[VUID-VkAttachmentDescriptionStencilLayoutKHR-stencilInitialLayout-03308]] + pname:stencilInitialLayout must: not be + ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL + * [[VUID-VkAttachmentDescriptionStencilLayoutKHR-stencilFinalLayout-03309]] + pname:stencilFinalLayout must: not be + ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL + * [[VUID-VkAttachmentDescriptionStencilLayoutKHR-stencilFinalLayout-03310]] + pname:stencilFinalLayout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED or + ename:VK_IMAGE_LAYOUT_PREINITIALIZED +**** + +include::{generated}/validity/structs/VkAttachmentDescriptionStencilLayoutKHR.txt[] +-- +endif::VK_KHR_separate_depth_stencil_layouts[] + [open,refpage='VkSubpassDescription2KHR',desc='Structure specifying a subpass description',type='structs'] -- @@ -2035,17 +2233,101 @@ It is ignored when this structure is used to describe anything other than an input attachment reference. +ifdef::VK_KHR_separate_depth_stencil_layouts[] +If the <<features-separateDepthStencilLayouts, +pname:separateDepthStencilLayouts>> feature is enabled, and pname:attachment +has a depth/stencil format, pname:layout can: be set to a layout that only +specifies the layout of the depth aspect. + +If pname:layout only specifies the layout of the depth aspect of the +attachment, the layout of the stencil aspect is specified by the +pname:stencilLayout member of an instance of +slink:VkAttachmentReferenceStencilLayoutKHR in the pname:pNext chain. +Otherwise, pname:layout describes the layout for all relevant image aspects. +endif::VK_KHR_separate_depth_stencil_layouts[] + .Valid Usage **** * [[VUID-VkAttachmentReference2KHR-layout-03077]] If pname:attachment is not ename:VK_ATTACHMENT_UNUSED, pname:layout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED or ename:VK_IMAGE_LAYOUT_PREINITIALIZED +ifdef::VK_KHR_separate_depth_stencil_layouts[] + * [[VUID-VkAttachmentReference2KHR-separateDepthStencilLayouts-03313]] + If the <<features-separateDepthStencilLayouts, + pname:separateDepthStencilLayouts>> feature is not enabled, and + pname:attachment is not ename:VK_ATTACHMENT_UNUSED, pname:layout must: + not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR, + * [[VUID-VkAttachmentReference2KHR-attachment-03314]] + If pname:attachment is not ename:VK_ATTACHMENT_UNUSED, and + pname:aspectMask includes ename:VK_IMAGE_ASPECT_COLOR_BIT, pname:layout + must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR, + * [[VUID-VkAttachmentReference2KHR-attachment-03315]] + If pname:attachment is not ename:VK_ATTACHMENT_UNUSED, and + pname:aspectMask includes both ename:VK_IMAGE_ASPECT_DEPTH_BIT and + ename:VK_IMAGE_ASPECT_STENCIL_BIT, and pname:layout is + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, the pname:pNext chain + must: include a valid instance of + slink:VkAttachmentReferenceStencilLayoutKHR + * [[VUID-VkAttachmentReference2KHR-attachment-03316]] + If pname:attachment is not ename:VK_ATTACHMENT_UNUSED, and + pname:aspectMask includes only ename:VK_IMAGE_ASPECT_DEPTH_BIT then + pname:layout must: not be + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR + * [[VUID-VkAttachmentReference2KHR-attachment-03317]] + If pname:attachment is not ename:VK_ATTACHMENT_UNUSED, and + pname:aspectMask includes only ename:VK_IMAGE_ASPECT_STENCIL_BIT then + pname:layout must: not be + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, or + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR +endif::VK_KHR_separate_depth_stencil_layouts[] **** include::{generated}/validity/structs/VkAttachmentReference2KHR.txt[] -- + +ifdef::VK_KHR_separate_depth_stencil_layouts[] + +[open,refpage='VkAttachmentReferenceStencilLayoutKHR',desc='Structure specifying an attachment description',type='structs'] +-- + +The sname:VkAttachmentReferenceStencilLayoutKHR structure is defined as: + +include::{generated}/api/structs/VkAttachmentReferenceStencilLayoutKHR.txt[] + + * pname:sType is the type of this structure. + * pname:pNext is `NULL` or a pointer to an extension-specific structure. + * pname:stencilLayout is a elink:VkImageLayout value specifying the layout + the stencil aspect of the attachment uses during the subpass. + +.Valid Usage +**** + * [[VUID-VkAttachmentReferenceStencilLayoutKHR-stencilLayout-03318]] + pname:stencilLayout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED, + ename:VK_IMAGE_LAYOUT_PREINITIALIZED, + ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, or + ename:VK_IMAGE_LAYOUT_PRESENT_SRC_KHR +**** + +include::{generated}/validity/structs/VkAttachmentReferenceStencilLayoutKHR.txt[] +-- +endif::VK_KHR_separate_depth_stencil_layouts[] + [open,refpage='VkSubpassDependency2KHR',desc='Structure specifying a subpass dependency',type='structs'] -- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/resources.txt new/Vulkan-Docs-1.1.127/chapters/resources.txt --- old/Vulkan-Docs-1.1.126/chapters/resources.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/resources.txt 2019-11-04 07:39:55.000000000 +0100 @@ -2658,54 +2658,52 @@ color or resolve attachment in a sname:VkFramebuffer. This layout is valid only for image subresources of images created with the ename:VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT usage bit enabled. - * ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL must: only be - used as a depth/stencil -ifdef::VK_KHR_depth_stencil_resolve[] - or depth/stencil resolve -endif::VK_KHR_depth_stencil_resolve[] - attachment in a sname:VkFramebuffer. - This layout is valid only for image subresources of images created with - the ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT usage bit enabled. - * ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL must: only be used - as a read-only depth/stencil attachment in a sname:VkFramebuffer and/or - as a read-only image in a shader (which can: be read as a sampled image, - combined image/sampler and/or input attachment). - This layout is valid only for image subresources of images created with - the ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT usage bit enabled. - Only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_SAMPLED_BIT can: be used as a sampled image or - combined image/sampler in a shader. - Similarly, only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT can: be used as input - attachments. + * ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL specifies a + layout for both the depth and stencil aspects of a depth/stencil format + image allowing read and write access as a depth/stencil attachment. +ifdef::VK_KHR_separate_depth_stencil_layouts[] + It is equivalent to ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR + and ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR. +endif::VK_KHR_separate_depth_stencil_layouts[] + * ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL specifies a layout + for both the depth and stencil aspects of a depth/stencil format image + allowing read only access as a depth/stencil attachment or in shaders. +ifdef::VK_KHR_separate_depth_stencil_layouts[] + It is equivalent to ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR + and ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR. +endif::VK_KHR_separate_depth_stencil_layouts[] ifdef::VK_VERSION_1_1,VK_KHR_maintenance2[] - * ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL: must: - only be used as a depth/stencil attachment in a sname:VkFramebuffer, - where the depth aspect is read-only, and/or as a read-only image in a - shader (which can: be read as a sampled image, combined image/sampler - and/or input attachment) where only the depth aspect is accessed. - This layout is valid only for image subresources of images created with - the ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT usage bit enabled. - Only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_SAMPLED_BIT can: be used as a sampled image or - combined image/sampler in a shader. - Similarly, only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT can: be used as input - attachments. - * ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL: must: - only be used as a depth/stencil attachment in a sname:VkFramebuffer, - where the stencil aspect is read-only, and/or as a read-only image in a - shader (which can: be read as a sampled image, combined image/sampler - and/or input attachment) where only the stencil aspect is accessed. - This layout is valid only for image subresources of images created with - the ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT usage bit enabled. - Only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_SAMPLED_BIT can: be used as a sampled image or - combined image/sampler in a shader. - Similarly, only image views created with a pname:usage value including - ename:VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT can: be used as input - attachments. + * ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL + specifies a layout for depth/stencil format images allowing read and + write access to the stencil aspect as a stencil attachment, and read + only access to the depth aspect as a depth attachment or in shaders. +ifdef::VK_KHR_separate_depth_stencil_layouts[] + It is equivalent to ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR + and ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR. +endif::VK_KHR_separate_depth_stencil_layouts[] + * ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL + specifies a layout for depth/stencil format images allowing read and + write access to the depth aspect as a depth attachment, and read only + access to the stencil aspect as a stencil attachment or in shaders. +ifdef::VK_KHR_separate_depth_stencil_layouts[] + It is equivalent to ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR + and ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR. +endif::VK_KHR_separate_depth_stencil_layouts[] endif::VK_VERSION_1_1,VK_KHR_maintenance2[] +ifdef::VK_KHR_separate_depth_stencil_layouts[] + * ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR specifies a layout + for the depth aspect of a depth/stencil format image allowing read and + write access as a depth attachment. + * ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR specifies a layout for + the depth aspect of a depth/stencil format image allowing read-only + access as a depth attachment or in shaders. + * ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR specifies a layout + for the stencil aspect of a depth/stencil format image allowing read and + write access as a stencil attachment. + * ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR specifies a layout + for the stencil aspect of a depth/stencil format image allowing + read-only access as a stencil attachment or in shaders. +endif::VK_KHR_separate_depth_stencil_layouts[] * ename:VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL must: only be used as a read-only image in a shader (which can: be read as a sampled image, combined image/sampler and/or input attachment). @@ -4830,8 +4828,8 @@ If the value of slink:VkExportMemoryAllocateInfo::pname:handleTypes used to allocate pname:memory is not `0`, it must: include at least one of the handles set in - slink:VkExternalMemoryImageCreateInfo::pname:handleTypes when - pname:image was created + slink:VkExternalMemoryBufferCreateInfo::pname:handleTypes when + pname:buffer was created * [[VUID-VkBindBufferMemoryInfo-memory-02792]] If pname:memory was created by a memory import operation, the external handle type of the imported memory must: also have been set in diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/sparsemem.txt new/Vulkan-Docs-1.1.127/chapters/sparsemem.txt --- old/Vulkan-Docs-1.1.126/chapters/sparsemem.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/sparsemem.txt 2019-11-04 07:39:55.000000000 +0100 @@ -1371,13 +1371,13 @@ * [[VUID-VkSparseMemoryBind-memory-02730]] If pname:memory was created with slink:VkExportMemoryAllocateInfo::pname:handleTypes not equal to `0`, at - least one handle type it contained must also have been set in + least one handle type it contained must: also have been set in slink:VkExternalMemoryBufferCreateInfo::pname:handleTypes or slink:VkExternalMemoryImageCreateInfo::pname:handleTypes when the resource was created. * [[VUID-VkSparseMemoryBind-memory-02731]] If pname:memory was created by a memory import operation, the external - handle type of the imported memory must also have been set in + handle type of the imported memory must: also have been set in slink:VkExternalMemoryBufferCreateInfo::pname:handleTypes or slink:VkExternalMemoryImageCreateInfo::pname:handleTypes when the resource was created. @@ -1591,12 +1591,12 @@ * [[VUID-VkSparseImageMemoryBind-memory-02732]] If pname:memory was created with slink:VkExportMemoryAllocateInfo::pname:handleTypes not equal to `0`, at - least one handle type it contained must also have been set in + least one handle type it contained must: also have been set in slink:VkExternalMemoryImageCreateInfo::pname:handleTypes when the image was created. * [[VUID-VkSparseImageMemoryBind-memory-02733]] If pname:memory was created by a memory import operation, the external - handle type of the imported memory must also have been set in + handle type of the imported memory must: also have been set in slink:VkExternalMemoryImageCreateInfo::pname:handleTypes when pname:image was created. endif::VK_VERSION_1_1,VK_KHR_external_memory[] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/chapters/synchronization.txt new/Vulkan-Docs-1.1.127/chapters/synchronization.txt --- old/Vulkan-Docs-1.1.126/chapters/synchronization.txt 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/chapters/synchronization.txt 2019-11-04 07:39:55.000000000 +0100 @@ -2319,7 +2319,7 @@ .Valid Usage **** * [[VUID-VkSemaphoreTypeCreateInfoKHR-timelineSemaphore-03252]] - If the <<features-features-timelineSemaphore,pname:timelineSemaphore>> + If the <<features-timelineSemaphore,pname:timelineSemaphore>> feature is not enabled, pname:semaphoreType must: not equal ename:VK_SEMAPHORE_TYPE_TIMELINE_KHR * [[VUID-VkSemaphoreTypeCreateInfoKHR-semaphoreType-03279]] @@ -4682,11 +4682,28 @@ pname:subresourceRange.layerCount# must: be less than or equal to the pname:arrayLayers specified in slink:VkImageCreateInfo when pname:image was created +ifdef::VK_KHR_separate_depth_stencil_layouts[] + * [[VUID-VkImageMemoryBarrier-image-03319]] + If pname:image has a depth/stencil format with both depth and stencil + and the <<features-separateDepthStencilLayouts, + separateDepthStencilLayouts>> feature is enabled, then the + pname:aspectMask member of pname:subresourceRange must: include either + or both ename:VK_IMAGE_ASPECT_DEPTH_BIT and + ename:VK_IMAGE_ASPECT_STENCIL_BIT + * [[VUID-VkImageMemoryBarrier-image-03320]] + If pname:image has a depth/stencil format with both depth and stencil + and the <<features-separateDepthStencilLayouts, + separateDepthStencilLayouts>> feature is not enabled, then the + pname:aspectMask member of pname:subresourceRange must: include both + ename:VK_IMAGE_ASPECT_DEPTH_BIT and ename:VK_IMAGE_ASPECT_STENCIL_BIT +endif::VK_KHR_separate_depth_stencil_layouts[] +ifndef::VK_KHR_separate_depth_stencil_layouts[] * [[VUID-VkImageMemoryBarrier-image-01207]] If pname:image has a depth/stencil format with both depth and stencil components, then the pname:aspectMask member of pname:subresourceRange must: include both ename:VK_IMAGE_ASPECT_DEPTH_BIT and ename:VK_IMAGE_ASPECT_STENCIL_BIT +endif::VK_KHR_separate_depth_stencil_layouts[] ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[] * [[VUID-VkImageMemoryBarrier-image-01671]] If pname:image has a single-plane color format or is not _disjoint_, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/images/primitive_topology_triangle_strip_with_adjacency.svg new/Vulkan-Docs-1.1.127/images/primitive_topology_triangle_strip_with_adjacency.svg --- old/Vulkan-Docs-1.1.126/images/primitive_topology_triangle_strip_with_adjacency.svg 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/images/primitive_topology_triangle_strip_with_adjacency.svg 2019-11-04 07:39:55.000000000 +0100 @@ -1765,5 +1765,11 @@ id="path4517-0-8-5-91-0-3-1-2" style="fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> </g> + <circle + r="3.4908931" + cy="81.96489" + cx="172.53439" + id="circle9368" + style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> </g> </svg> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vulkan-Docs-1.1.126/xml/vk.xml new/Vulkan-Docs-1.1.127/xml/vk.xml --- old/Vulkan-Docs-1.1.126/xml/vk.xml 2019-10-21 10:52:44.000000000 +0200 +++ new/Vulkan-Docs-1.1.127/xml/vk.xml 2019-11-04 07:39:55.000000000 +0100 @@ -154,7 +154,7 @@ <type category="define">// Vulkan 1.1 version number #define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_VERSION</type>(1, 1, 0)// Patch version should always be set to 0</type> <type category="define">// Version of this file -#define <name>VK_HEADER_VERSION</name> 126</type> +#define <name>VK_HEADER_VERSION</name> 127</type> <type category="define"> #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type> @@ -4088,6 +4088,22 @@ <member><type>VkBool32</type> <name>fragmentShaderPixelInterlock</name></member> <member><type>VkBool32</type> <name>fragmentShaderShadingRateInterlock</name></member> </type> + <type category="struct" name="VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR"><type>VkStructureType</type><name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>separateDepthStencilLayouts</name></member> + </type> + <type category="struct" name="VkAttachmentReferenceStencilLayoutKHR" structextends="VkAttachmentReference2KHR"> + <member values="VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR"><type>VkStructureType</type><name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkImageLayout</type> <name>stencilLayout</name></member> + </type> + <type category="struct" name="VkAttachmentDescriptionStencilLayoutKHR" structextends="VkAttachmentDescription2KHR"> + <member values="VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR"><type>VkStructureType</type><name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkImageLayout</type> <name>stencilInitialLayout</name></member> + <member><type>VkImageLayout</type> <name>stencilFinalLayout</name></member> + </type> <type category="struct" name="VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member><type>void</type>* <name>pNext</name></member> @@ -11213,10 +11229,20 @@ <type name="VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV"/> </require> </extension> - <extension name="VK_NV_extension_242" number="242" author="NVIDIA" contact="Nuno Subtil @nsubtil" supported="disabled"> + <extension name="VK_KHR_separate_depth_stencil_layouts" number="242" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_create_renderpass2" author="KHR" contact="Piers Daniell @pdaniell-nv" supported="vulkan"> <require> - <enum value="0" name="VK_NV_EXTENSION_242_SPEC_VERSION"/> - <enum value=""VK_NV_extension_242"" name="VK_NV_EXTENSION_242_EXTENSION_NAME"/> + <enum value="1" name="VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION"/> + <enum value=""VK_KHR_separate_depth_stencil_layouts"" name="VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR"/> + <enum offset="0" extends="VkImageLayout" name="VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR"/> + <enum offset="1" extends="VkImageLayout" name="VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR"/> + <enum offset="2" extends="VkImageLayout" name="VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR"/> + <enum offset="3" extends="VkImageLayout" name="VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR"/> + <type name="VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR"/> + <type name="VkAttachmentReferenceStencilLayoutKHR"/> + <type name="VkAttachmentDescriptionStencilLayoutKHR"/> </require> </extension> <extension name="VK_INTEL_extension_243" number="243" author="INTEL" contact="Slawek Grajewski @sgrajewski" supported="disabled"> @@ -11635,5 +11661,24 @@ <enum value=""VK_KHR_extension_294"" name="VK_KHR_EXTENSION_294_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_KHR_extension_295" number="295" author="KHR" contact="Keith Packard @keithp" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_295_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_295"" name="VK_KHR_EXTENSION_295_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_296" number="296" author="NV" contact="Matthew Rusch gitlab:@mrusch" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_296_SPEC_VERSION"/> + <enum value=""VK_NV_extension_296"" name="VK_NV_EXTENSION_296_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_297" number="297" author="KHR" contact="Corentin Wallez @Kangz" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_297_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_297"" name="VK_KHR_EXTENSION_297_EXTENSION_NAME"/> + <enum bitpos="3" extends="VkPipelineShaderStageCreateFlagBits" name="VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"/> + </require> + </extension> </extensions> </registry>