Skip to content

Commit

Permalink
Merge pull request #355 from ThreeOfTwelve/vulkan-update-v1.2.201
Browse files Browse the repository at this point in the history
  • Loading branch information
expipiplus1 authored Dec 1, 2021
2 parents 7f7fc1d + e31c278 commit 53768c9
Show file tree
Hide file tree
Showing 38 changed files with 1,030 additions and 889 deletions.
3 changes: 3 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## WIP

## [3.14.1] - 2021-12-01
- Bump API version to v1.2.201

## [3.14] - 2021-11-25
- Bump API version to v1.2.200

Expand Down
2 changes: 1 addition & 1 deletion generate-new/Vulkan-Docs
Submodule Vulkan-Docs updated 96 files
+3 −3 .github/ISSUE_TEMPLATE/template-for-release-task-list.md
+1 −1 .github/workflows/CI.yml
+1 −1 .reuse/dep5
+9 −10 BUILD.adoc
+2 −2 COPYING.adoc
+54 −10 ChangeLog.txt
+26 −8 Makefile
+4 −4 appendices/VK_EXT_depth_clip_control.txt
+1 −2 appendices/VK_EXT_tooling_info.txt
+2 −1 appendices/VK_FUCHSIA_buffer_collection.txt
+2 −2 appendices/VK_KHR_get_display_properties2.txt
+3 −3 appendices/versions.txt
+1 −1 chapters/VK_GGP_stream_descriptor_surface/platformCreateSurface_streamdescriptor.txt
+3 −3 chapters/VK_GOOGLE_display_timing/queries.txt
+3 −0 chapters/VK_NV_mesh_shader/drawing.txt
+2 −2 chapters/clears.txt
+0 −53 chapters/commonvalidity/draw_common.txt
+14 −0 chapters/commonvalidity/draw_dispatch_common.txt
+17 −0 chapters/commonvalidity/draw_mesh_common.txt
+62 −0 chapters/commonvalidity/draw_vertex_binding.txt
+1 −519 chapters/formats.txt
+1 −1 chapters/memory.txt
+60 −57 chapters/renderpass.txt
+1 −1 chapters/resources.txt
+3 −3 chapters/samplers.txt
+4 −5 chapters/shaders.txt
+0 −7 chapters/textures.txt
+132 −48 chapters/video_encode_extensions.txt
+175 −18 chapters/video_encode_h264_extensions.txt
+167 −0 chapters/video_encode_h265_extensions.txt
+5 −1 chapters/video_extensions.txt
+71 −0 config/CI/contractions
+14 −0 config/CI/contractions-allowed
+8 −0 config/README.adoc
+1 −1 config/attribs.txt
+14 −14 config/extension-highlighter/extension.rb
+1 −1 config/katex_replace/extension.rb
+1 −1 config/makeSubmit.py
+1 −1 config/mathtest.txt
+3 −3 config/quiet-include-failure.rb
+1 −1 config/rouge-extend-css.rb
+3 −3 config/spec-macros/extension.rb
+1 −1 config/tilde_open_block.rb
+12 −12 config/vu-to-json/extension.rb
+2 −2 gen-script-docs.sh
+1 −1 images/README.adoc
+1 −1 images/ray_intersection_candidate.svg
+1 −1 include/vulkan/vk_platform.h
+1 −1 makeSpec
+11 −11 proposals/VK_KHR_dynamic_rendering.asciidoc
+3 −3 proposals/VK_KHR_shader_integer_dot_product.asciidoc
+9 −9 proposals/template.asciidoc
+10 −0 registry.txt
+1 −1 sandboxCopy
+6 −7 scripts/README.adoc
+6 −6 scripts/Retired/checkLinks.py
+2 −2 scripts/Retired/extensionStubSource.py
+2 −2 scripts/Retired/fixupRef.py
+3 −3 scripts/Retired/insertTags.py
+2 −2 scripts/Retired/realign.py
+11 −0 scripts/apiconventions.py
+4 −4 scripts/cgenerator.py
+3 −3 scripts/check_html_xrefs.py
+2 −2 scripts/compImages.sh
+2 −2 scripts/conventions.py
+32 −8 scripts/docgenerator.py
+5 −5 scripts/extdependency.py
+168 −0 scripts/formatsgenerator.py
+19 −15 scripts/genRef.py
+12 −12 scripts/generator.py
+1 −1 scripts/genspec.py
+41 −20 scripts/genvk.py
+1 −1 scripts/globalizeIncludes
+1 −1 scripts/htmldiff/htmldiff
+2 −2 scripts/linkcheck.py
+8 −6 scripts/makemanaliases.py
+1 −1 scripts/promote.py
+1 −1 scripts/pygenerator.py
+12 −12 scripts/reflib.py
+21 −21 scripts/reflow.py
+87 −43 scripts/reg.py
+11 −10 scripts/scriptgenerator.py
+10 −0 scripts/spec_tools/consistency_tools.py
+2 −2 scripts/spirvcapgenerator.py
+1 −1 scripts/testSpecVersion.py
+35 −29 scripts/validitygenerator.py
+4 −3 scripts/vkconventions.py
+77 −5 scripts/xml_consistency.py
+3 −3 src/ext_loader/README.md
+4 −4 style/markup.txt
+1 −1 style/writing.txt
+1 −1 styleguide.txt
+1 −1 tests/htest.c
+1 −1 xml/README.adoc
+24 −17 xml/registry.rnc
+121 −15 xml/vk.xml
2 changes: 1 addition & 1 deletion package.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: vulkan
version: "3.14"
version: "3.14.1"
synopsis: Bindings to the Vulkan graphics API.
description: Please see [the readme](https://github.com/expipiplus1/vulkan/#readme)
category: Graphics
Expand Down
4 changes: 4 additions & 0 deletions src/Vulkan/CStruct/Extends.hs
Original file line number Diff line number Diff line change
Expand Up @@ -980,6 +980,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends DeviceCreateInfo PhysicalDeviceRGBA10X6FormatsFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceDynamicRenderingFeaturesKHR = ()
Extends DeviceCreateInfo PhysicalDeviceImageViewMinLodFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = ()
Extends DeviceQueueCreateInfo DeviceQueueGlobalPriorityCreateInfoEXT = ()
Extends FenceCreateInfo ExportFenceCreateInfo = ()
Extends FenceCreateInfo ExportFenceWin32HandleInfoKHR = ()
Expand Down Expand Up @@ -1147,6 +1148,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends PhysicalDeviceFeatures2 PhysicalDeviceRGBA10X6FormatsFeaturesEXT = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceDynamicRenderingFeaturesKHR = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceImageViewMinLodFeaturesEXT = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = ()
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceExternalImageFormatInfo = ()
Extends PhysicalDeviceImageFormatInfo2 ImageFormatListCreateInfo = ()
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceImageDrmFormatModifierInfoEXT = ()
Expand Down Expand Up @@ -1714,6 +1716,7 @@ peekChainHead ty p c = case ty of
STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX -> go @MultiviewPerViewAttributesInfoNVX
STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT -> go @PhysicalDeviceImageViewMinLodFeaturesEXT
STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT -> go @ImageViewMinLodCreateInfoEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM -> go @PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM
t -> throwIO $ IOError Nothing InvalidArgument "peekChainHead" ("Unrecognized struct type: " <> show t) Nothing Nothing
where
go :: forall e . (Typeable e, FromCStruct e, ToCStruct e, Show e) => IO b
Expand Down Expand Up @@ -2091,6 +2094,7 @@ infix 6 ::&
{-# complete (::&) :: MultiviewPerViewAttributesInfoNVX #-}
{-# complete (::&) :: PhysicalDeviceImageViewMinLodFeaturesEXT #-}
{-# complete (::&) :: ImageViewMinLodCreateInfoEXT #-}
{-# complete (::&) :: PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM #-}

-- | View the head and tail of a 'Chain', see '::&'
--
Expand Down
2 changes: 1 addition & 1 deletion src/Vulkan/Core10/APIConstants.hs
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ pattern MAX_MEMORY_HEAPS = 16

type REMAINING_MIP_LEVELS = 0xffffffff

-- | VK_REMAINING_MIP_LEVELS - Sentinel for all remaining array layers
-- | VK_REMAINING_MIP_LEVELS - Sentinel for all remaining mipmap levels
--
-- = See Also
--
Expand Down
614 changes: 345 additions & 269 deletions src/Vulkan/Core10/CommandBufferBuilding.hs

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions src/Vulkan/Core10/Device.hs
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_private_data (PhysicalDevicePriva
import {-# SOURCE #-} Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory (PhysicalDeviceProtectedMemoryFeatures)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_provoking_vertex (PhysicalDeviceProvokingVertexFeaturesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_rgba10x6_formats (PhysicalDeviceRGBA10X6FormatsFeaturesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_ARM_rasterization_order_attachment_access (PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_query (PhysicalDeviceRayQueryFeaturesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (PhysicalDeviceRayTracingMotionBlurFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing_pipeline (PhysicalDeviceRayTracingPipelineFeaturesKHR)
Expand Down Expand Up @@ -809,6 +810,7 @@ instance es ~ '[] => Zero (DeviceQueueCreateInfo es) where
-- 'Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures',
-- 'Vulkan.Extensions.VK_EXT_provoking_vertex.PhysicalDeviceProvokingVertexFeaturesEXT',
-- 'Vulkan.Extensions.VK_EXT_rgba10x6_formats.PhysicalDeviceRGBA10X6FormatsFeaturesEXT',
-- 'Vulkan.Extensions.VK_ARM_rasterization_order_attachment_access.PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM',
-- 'Vulkan.Extensions.VK_KHR_ray_query.PhysicalDeviceRayQueryFeaturesKHR',
-- 'Vulkan.Extensions.VK_NV_ray_tracing_motion_blur.PhysicalDeviceRayTracingMotionBlurFeaturesNV',
-- 'Vulkan.Extensions.VK_KHR_ray_tracing_pipeline.PhysicalDeviceRayTracingPipelineFeaturesKHR',
Expand Down Expand Up @@ -932,6 +934,7 @@ instance Extensible DeviceCreateInfo where
getNext DeviceCreateInfo{..} = next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends DeviceCreateInfo e => b) -> Maybe b
extends _ f
| Just Refl <- eqT @e @PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = Just f
| Just Refl <- eqT @e @PhysicalDeviceImageViewMinLodFeaturesEXT = Just f
| Just Refl <- eqT @e @PhysicalDeviceDynamicRenderingFeaturesKHR = Just f
| Just Refl <- eqT @e @PhysicalDeviceRGBA10X6FormatsFeaturesEXT = Just f
Expand Down
5 changes: 5 additions & 0 deletions src/Vulkan/Core10/Enums/StructureType.hs
Original file line number Diff line number Diff line change
Expand Up @@ -1159,6 +1159,8 @@ import GHC.Show (Show(showsPrec))
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264EmitPictureParametersEXT VkVideoEncodeH264EmitPictureParametersEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264NaluSliceEXT VkVideoEncodeH264NaluSliceEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264ProfileEXT VkVideoEncodeH264ProfileEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264RateControlInfoEXT VkVideoEncodeH264RateControlInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264RateControlLayerInfoEXT VkVideoEncodeH264RateControlLayerInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264SessionCreateInfoEXT VkVideoEncodeH264SessionCreateInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264SessionParametersAddInfoEXT VkVideoEncodeH264SessionParametersAddInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264SessionParametersCreateInfoEXT VkVideoEncodeH264SessionParametersCreateInfoEXT>,
Expand All @@ -1168,13 +1170,16 @@ import GHC.Show (Show(showsPrec))
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265EmitPictureParametersEXT VkVideoEncodeH265EmitPictureParametersEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265NaluSliceEXT VkVideoEncodeH265NaluSliceEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265ProfileEXT VkVideoEncodeH265ProfileEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265RateControlInfoEXT VkVideoEncodeH265RateControlInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265RateControlLayerInfoEXT VkVideoEncodeH265RateControlLayerInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265ReferenceListsEXT VkVideoEncodeH265ReferenceListsEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265SessionCreateInfoEXT VkVideoEncodeH265SessionCreateInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265SessionParametersAddInfoEXT VkVideoEncodeH265SessionParametersAddInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265SessionParametersCreateInfoEXT VkVideoEncodeH265SessionParametersCreateInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265VclFrameInfoEXT VkVideoEncodeH265VclFrameInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeInfoKHR VkVideoEncodeInfoKHR>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeRateControlInfoKHR VkVideoEncodeRateControlInfoKHR>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeRateControlLayerInfoKHR VkVideoEncodeRateControlLayerInfoKHR>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEndCodingInfoKHR VkVideoEndCodingInfoKHR>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoFormatPropertiesKHR VkVideoFormatPropertiesKHR>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoGetMemoryPropertiesKHR VkVideoGetMemoryPropertiesKHR>,
Expand Down
2 changes: 2 additions & 0 deletions src/Vulkan/Core10/FundamentalTypes.hs
Original file line number Diff line number Diff line change
Expand Up @@ -577,7 +577,9 @@ instance Zero Rect2D where
-- 'Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD',
-- 'Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD',
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264EmitPictureParametersEXT VkVideoEncodeH264EmitPictureParametersEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH264RateControlLayerInfoEXT VkVideoEncodeH264RateControlLayerInfoEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265EmitPictureParametersEXT VkVideoEncodeH265EmitPictureParametersEXT>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoEncodeH265RateControlLayerInfoEXT VkVideoEncodeH265RateControlLayerInfoEXT>,
-- 'Vulkan.Extensions.VK_NV_ray_tracing.cmdBuildAccelerationStructureNV',
-- 'Vulkan.Extensions.VK_NV_device_generated_commands.cmdExecuteGeneratedCommandsNV',
-- 'Vulkan.Extensions.VK_EXT_color_write_enable.cmdSetColorWriteEnableEXT',
Expand Down
14 changes: 7 additions & 7 deletions src/Vulkan/Core10/Memory.hs
Original file line number Diff line number Diff line change
Expand Up @@ -162,13 +162,13 @@ foreign import ccall
-- 'Vulkan.Core10.Enums.MemoryPropertyFlagBits.MEMORY_PROPERTY_PROTECTED_BIT'
-- property) than for non-protected memory allocations. These limits can be
-- system-wide, and depend on a variety of factors outside of the Vulkan
-- implementation, so can’t be queried in Vulkan. Applications /should/ use
-- as few allocations as possible from such memory types by suballocating
-- aggressively, and be prepared for allocation failure even when there is
-- apparently plenty of capacity remaining in the memory heap. As a
-- guideline, the Vulkan conformance test suite requires that at least 80
-- minimum-size allocations can exist concurrently when no other uses of
-- protected memory are active in the system.
-- implementation, so they cannot be queried in Vulkan. Applications
-- /should/ use as few allocations as possible from such memory types by
-- suballocating aggressively, and be prepared for allocation failure even
-- when there is apparently plenty of capacity remaining in the memory
-- heap. As a guideline, the Vulkan conformance test suite requires that at
-- least 80 minimum-size allocations can exist concurrently when no other
-- uses of protected memory are active in the system.
--
-- Some platforms /may/ have a limit on the maximum size of a single
-- allocation. For example, certain systems /may/ fail to create
Expand Down
17 changes: 9 additions & 8 deletions src/Vulkan/Core10/Pass.hs
Original file line number Diff line number Diff line change
Expand Up @@ -1241,12 +1241,6 @@ instance Zero AttachmentReference where
-- and if @pResolveAttachments@ is not @NULL@, then each resolve
-- attachment /must/ be 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED'
--
-- - #VUID-VkSubpassDescription-flags-03342# If @flags@ includes
-- 'Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM',
-- and if @pDepthStencilResolveAttachmentKHR@ is not @NULL@, then the
-- depth\/stencil resolve attachment /must/ be
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED'
--
-- - #VUID-VkSubpassDescription-flags-03343# If @flags@ includes
-- 'Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM',
-- then the subpass /must/ be the last subpass in a subpass dependency
Expand Down Expand Up @@ -1778,8 +1772,15 @@ instance Zero SubpassDependency where
-- member of any element of @pInputAttachments@, @pColorAttachments@,
-- @pResolveAttachments@ or @pDepthStencilAttachment@, or any element
-- of @pPreserveAttachments@ in any element of @pSubpasses@ is not
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', it /must/ be less
-- than @attachmentCount@
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then it /must/ be
-- less than @attachmentCount@
--
-- - #VUID-VkRenderPassCreateInfo-fragmentDensityMapAttachment-06471# If
-- the pNext chain includes a
-- 'Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT'
-- structure and the @fragmentDensityMapAttachment@ member is not
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then @attachment@
-- /must/ be less than @attachmentCount@
--
-- - #VUID-VkRenderPassCreateInfo-pAttachments-00836# For any member of
-- @pAttachments@ with a @loadOp@ equal to
Expand Down
6 changes: 3 additions & 3 deletions src/Vulkan/Core11/Enums/SamplerYcbcrModelConversion.hs
Original file line number Diff line number Diff line change
Expand Up @@ -29,17 +29,17 @@ import GHC.Show (Show(showsPrec))
--
-- - 'SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709' specifies the color model
-- conversion from Y′CBCR to R′G′B′ defined in BT.709 and described in
-- the “BT.709 YCBCR conversion” section of the
-- the “BT.709 YCBCR conversion” section of the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#data-format Khronos Data Format Specification>.
--
-- - 'SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601' specifies the color model
-- conversion from Y′CBCR to R′G′B′ defined in BT.601 and described in
-- the “BT.601 YCBCR conversion” section of the
-- the “BT.601 YCBCR conversion” section of the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#data-format Khronos Data Format Specification>.
--
-- - 'SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020' specifies the color
-- model conversion from Y′CBCR to R′G′B′ defined in BT.2020 and
-- described in the “BT.2020 YCBCR conversion” section of the
-- described in the “BT.2020 YCBCR conversion” section of the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#data-format Khronos Data Format Specification>.
--
-- In the @VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_*@ color models, for the
Expand Down
8 changes: 8 additions & 0 deletions src/Vulkan/Core11/Promoted_From_VK_KHR_device_group.hs
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,14 @@ foreign import ccall
-- /must/ contain
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT'
--
-- - #VUID-vkCmdDispatchBase-None-06479# If a
-- 'Vulkan.Core10.Handles.ImageView' is sampled with
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-depth-compare-operation depth comparison>,
-- the image view’s
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#resources-image-view-format-features format features>
-- /must/ contain
-- 'Vulkan.Extensions.VK_KHR_acceleration_structure.FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR'
--
-- - #VUID-vkCmdDispatchBase-None-02691# If a
-- 'Vulkan.Core10.Handles.ImageView' is accessed using atomic
-- operations as a result of this command, then the image view’s
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_provoking_vertex (PhysicalDeviceP
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_provoking_vertex (PhysicalDeviceProvokingVertexPropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_push_descriptor (PhysicalDevicePushDescriptorPropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_rgba10x6_formats (PhysicalDeviceRGBA10X6FormatsFeaturesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_ARM_rasterization_order_attachment_access (PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_query (PhysicalDeviceRayQueryFeaturesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (PhysicalDeviceRayTracingMotionBlurFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing_pipeline (PhysicalDeviceRayTracingPipelineFeaturesKHR)
Expand Down Expand Up @@ -715,6 +716,7 @@ instance Extensible PhysicalDeviceFeatures2 where
getNext PhysicalDeviceFeatures2{..} = next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends PhysicalDeviceFeatures2 e => b) -> Maybe b
extends _ f
| Just Refl <- eqT @e @PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = Just f
| Just Refl <- eqT @e @PhysicalDeviceImageViewMinLodFeaturesEXT = Just f
| Just Refl <- eqT @e @PhysicalDeviceDynamicRenderingFeaturesKHR = Just f
| Just Refl <- eqT @e @PhysicalDeviceRGBA10X6FormatsFeaturesEXT = Just f
Expand Down
21 changes: 18 additions & 3 deletions src/Vulkan/Core12/Promoted_From_VK_KHR_create_renderpass2.hs
Original file line number Diff line number Diff line change
Expand Up @@ -1851,8 +1851,23 @@ instance es ~ '[] => Zero (SubpassDependency2 es) where
-- member of any element of @pInputAttachments@, @pColorAttachments@,
-- @pResolveAttachments@ or @pDepthStencilAttachment@, or any element
-- of @pPreserveAttachments@ in any given element of @pSubpasses@ is
-- not 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', it /must/ be
-- less than @attachmentCount@
-- not 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then it /must/
-- be less than @attachmentCount@
--
-- - #VUID-VkRenderPassCreateInfo2-fragmentDensityMapAttachment-06472# If
-- the pNext chain includes a
-- 'Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT'
-- structure and the @fragmentDensityMapAttachment@ member is not
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then @attachment@
-- /must/ be less than @attachmentCount@
--
-- - #VUID-VkRenderPassCreateInfo2-pSubpasses-06473# If the @pSubpasses@
-- pNext chain includes a
-- 'Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve'
-- structure and the @pDepthStencilResolveAttachment@ member is not
-- @NULL@ and does not have the value
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then @attachment@
-- /must/ be less than @attachmentCount@
--
-- - #VUID-VkRenderPassCreateInfo2-pAttachments-02522# For any member of
-- @pAttachments@ with a @loadOp@ equal to
Expand Down Expand Up @@ -1975,7 +1990,7 @@ instance es ~ '[] => Zero (SubpassDependency2 es) where
--
-- - #VUID-VkRenderPassCreateInfo2-flags-04908# If @flags@ includes
-- 'Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM',
-- and if @pDepthStencilResolveAttachmentKHR@ is not @NULL@, then the
-- and if @pDepthStencilResolveAttachment@ is not @NULL@, then the
-- depth\/stencil resolve attachment /must/ be
-- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED'
--
Expand Down
Loading

0 comments on commit 53768c9

Please sign in to comment.