Skip to content

Commit

Permalink
Merge pull request #238 from expipiplus1/fix-164
Browse files Browse the repository at this point in the history
Bump vulkan version to v1.2.164
  • Loading branch information
expipiplus1 authored Dec 8, 2020
2 parents ede5cdd + 98700a0 commit 07a777d
Show file tree
Hide file tree
Showing 36 changed files with 1,433 additions and 184 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.8.1] - 2020-12-08
- Bump API version to v1.2.164

- Add cabal flag trace-calls to enable calling traceEventIO before and after
every Vulkan command

Expand Down
2 changes: 1 addition & 1 deletion generate-new/Vulkan-Docs
Submodule Vulkan-Docs updated 34 files
+2 −2 BUILD.adoc
+44 −0 ChangeLog.txt
+2 −2 Makefile
+0 −0 appendices/VK_AMD_negative_viewport_height.txt
+0 −0 appendices/VK_EXT_shader_atomic_float.txt
+0 −0 appendices/VK_KHR_deferred_host_operations.txt
+1 −1 appendices/VK_KHR_ray_tracing_pipeline.txt
+0 −0 appendices/VK_KHR_surface_protected_capabilities.txt
+126 −0 appendices/VK_NV_acquire_winrt_display.txt
+1 −1 appendices/VK_NV_ray_tracing.txt
+45 −0 appendices/VK_VALVE_mutable_descriptor_type.txt
+30 −9 appendices/glossary.txt
+4 −0 chapters/VK_EXT_direct_mode_display/acquire_release_displays.txt
+0 −0 chapters/VK_KHR_deferred_host_operations/deferred_host_operations.txt
+11 −2 chapters/VK_KHR_swapchain/wsi.txt
+92 −0 chapters/VK_NV_acquire_winrt_display/acquire_winrt_display.txt
+0 −0 chapters/VK_NV_ray_tracing/raytracing-host-rtas.txt
+8 −0 chapters/VK_NV_ray_tracing/raytracing-pipelines.txt
+4 −0 chapters/VK_NV_ray_tracing/raytracing-resources.txt
+5 −3 chapters/VK_NV_ray_tracing/raytracing.txt
+0 −6 chapters/cmdbuffers.txt
+0 −0 chapters/commonvalidity/build_acceleration_structure_common.txt
+0 −0 chapters/commonvalidity/copy_acceleration_structure_common.txt
+5 −0 chapters/commonvalidity/draw_dispatch_nonindirect_common.txt
+0 −0 chapters/commonvalidity/write_acceleration_structure_properties_common.txt
+358 −2 chapters/descriptorsets.txt
+52 −0 chapters/features.txt
+22 −13 chapters/interfaces.txt
+0 −50 chapters/renderpass.txt
+3 −0 config/chunkindex/addscript.jsmarker
+1 −0 config/chunkindex/addscript.searchboxmarker
+26 −0 config/chunkindex/addscripts.sh
+6 −1 config/loadable_html/extension.rb
+48 −12 xml/vk.xml
76 changes: 38 additions & 38 deletions generate-new/src/Bespoke.hs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ module Bespoke
, bespokeElements
, bespokeSizes
, bespokeOptionality
, bespokeLengths
, bespokeSchemes
, BespokeScheme(..)
, structChainVar
Expand Down Expand Up @@ -464,19 +465,20 @@ difficultLengths =
<+> pretty uuidSizeDoc
tellImport uuidSizeDoc
throwErrDoc err cond
stmt (Just (ConT ''Ptr :@ ConT ''Word8)) (Just "versionData'") $ do
after assertCorrectLength
ValueDoc bs <- use bsRef
tellImportWithAll ''ContT
tellImport 'BS.unsafeUseAsCString
tellImport 'castPtr
tellImport ''Word8
tellImport ''CChar
pure
. ContTAction
. ValueDoc
$ "fmap (castPtr @CChar @Word8) . ContT $ unsafeUseAsCString"
<+> bs
stmt (Just (ConT ''Ptr :@ ConT ''Word8)) (Just "versionData'")
$ do
after assertCorrectLength
ValueDoc bs <- use bsRef
tellImportWithAll ''ContT
tellImport 'BS.unsafeUseAsCString
tellImport 'castPtr
tellImport ''Word8
tellImport ''CChar
pure
. ContTAction
. ValueDoc
$ "fmap (castPtr @CChar @Word8) . ContT $ unsafeUseAsCString"
<+> bs
, csPeek = \addrRef ->
stmt (Just (ConT ''ByteString)) (Just "versionData") $ do
RenderParams {..} <- input
Expand Down Expand Up @@ -732,7 +734,16 @@ bespokeOptionality = \case
_ -> Nothing
_ -> const Nothing

bespokeElements :: (HasErr r, HasRenderParams r) => Vector (Sem r RenderElement)
bespokeLengths :: CName -> CName -> Maybe (Vector ParameterLength)
bespokeLengths = \case
-- Work around https://github.com/KhronosGroup/Vulkan-Docs/issues/1414
"VkDescriptorSetAllocateInfo" -> \case
"pSetLayouts" -> Just (fromList [NamedLength "descriptorSetCount"])
_ -> Nothing
_ -> const Nothing

bespokeElements
:: (HasErr r, HasRenderParams r) => Vector (Sem r RenderElement)
bespokeElements =
fromList
$ [ namedType
Expand Down Expand Up @@ -795,7 +806,7 @@ baseType n t = fmap identicalBoot . genRe ("base type " <> unCName n) $ do
nullHandle :: (HasErr r, HasRenderParams r) => Sem r RenderElement
nullHandle = genRe "null handle" $ do
RenderParams {..} <- input
let patName = mkPatternName "VK_NULL_HANDLE"
let patName = mkPatternName "VK_NULL_HANDLE"
tellExplicitModule (vulkanModule ["Core10", "APIConstants"])
tellNotReexportable
tellExport (EPat patName)
Expand Down Expand Up @@ -835,9 +846,9 @@ win32' = [voidData "SECURITY_ATTRIBUTES"]
x11 :: HasRenderParams r => [BespokeAlias r]
x11 =
[ alias (APtr ''()) "Display"
, alias AWord64 "VisualID"
, alias AWord64 "Window"
, alias AWord64 "RROutput"
, alias AWord64 "VisualID"
, alias AWord64 "Window"
, alias AWord64 "RROutput"
]

xcb1 :: HasRenderParams r => [Sem r RenderElement]
Expand All @@ -847,33 +858,22 @@ xcb2 :: HasRenderParams r => [BespokeAlias r]
xcb2 = [alias AWord32 "xcb_visualid_t", alias AWord32 "xcb_window_t"]

ggp :: HasRenderParams r => [BespokeAlias r]
ggp =
[ alias AWord32 "GgpStreamDescriptor"
, alias AWord32 "GgpFrameToken"
]
ggp = [alias AWord32 "GgpStreamDescriptor", alias AWord32 "GgpFrameToken"]

metal :: HasRenderParams r => [Sem r RenderElement]
metal =
[ voidData "CAMetalLayer"
]
metal = [voidData "CAMetalLayer"]

wayland :: HasRenderParams r => [Sem r RenderElement]
wayland =
[ voidData "wl_display"
, voidData "wl_surface"
]
wayland = [voidData "wl_display", voidData "wl_surface"]

zircon :: HasRenderParams r => [BespokeAlias r]
zircon =
[alias AWord32 "zx_handle_t"]
zircon = [alias AWord32 "zx_handle_t"]

android :: HasRenderParams r => [Sem r RenderElement]
android =
[voidData "AHardwareBuffer", voidData "ANativeWindow"]
android = [voidData "AHardwareBuffer", voidData "ANativeWindow"]

directfb :: HasRenderParams r => [Sem r RenderElement]
directfb =
[voidData "IDirectFB", voidData "IDirectFBSurface"]
directfb = [voidData "IDirectFB", voidData "IDirectFBSurface"]

----------------------------------------------------------------
-- Helpers
Expand All @@ -883,9 +883,9 @@ data AType = AWord32 | AWord64 | APtr Name

aTypeSize :: AType -> (Int, Int)
aTypeSize = \case
AWord32 -> (4, 4)
AWord64 -> (8, 8)
APtr _ -> (8, 8)
AWord32 -> (4, 4)
AWord64 -> (8, 8)
APtr _ -> (8, 8)

aTypeType :: AType -> H.Type
aTypeType = \case
Expand Down
20 changes: 13 additions & 7 deletions generate-new/src/Spec/Parse.hs
Original file line number Diff line number Diff line change
Expand Up @@ -740,8 +740,10 @@ parseStruct n = do
Just o -> pure o
Nothing -> boolListAttr "optional" m
let listAttrName = if hasAttr "altlen" m then "altlen" else "len"
smLengths <- lenListAttr listAttrName m
smValues <- listAttr decode "values" m
smLengths <- case bespokeLengths sName smName of
Just o -> pure o
Nothing -> lenListAttr listAttrName m
smValues <- listAttr decode "values" m
let smOffset = ()
pure StructMember { .. }

Expand All @@ -764,7 +766,7 @@ parseCommands es =
cName <- nameElem "command" proto
cReturnType <- parseCType (allNonCommentText proto)
cParameters <- fromList
<$> traverseV parseParameter (manyChildren "param" n)
<$> traverseV (parseParameter cName) (manyChildren "param" n)
let cIsDynamic = True
cCanBlock =
"wait"
Expand All @@ -773,14 +775,18 @@ parseCommands es =
`V.elem` cSuccessCodes
pure Command { .. }

parseParameter :: Node -> P Parameter
parseParameter m = do
parseParameter :: CName -> Node -> P Parameter
parseParameter cName m = do
pName <- nameElem "parameter" m
let typeString = allNonCommentText m
pType <- parseCType typeString
pIsOptional <- boolListAttr "optional" m
pIsOptional <- case bespokeOptionality cName pName of
Just o -> pure o
Nothing -> boolListAttr "optional" m
let listAttrName = if hasAttr "altlen" m then "altlen" else "len"
pLengths <- lenListAttr listAttrName m
pLengths <- case bespokeLengths cName pName of
Just o -> pure o
Nothing -> lenListAttr listAttrName m
pure Parameter { .. }

----------------------------------------------------------------
Expand Down
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.8"
version: "3.8.1"
synopsis: Bindings to the Vulkan graphics API.
category: Graphics
maintainer: Joe Hermaszewski <[email protected]>
Expand Down
11 changes: 11 additions & 0 deletions src/Vulkan/CStruct/Extends.hs
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,8 @@ import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (MemoryType)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_win32 (MemoryWin32HandlePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_metal_surface (MetalSurfaceCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (MultisamplePropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_VALVE_mutable_descriptor_type (MutableDescriptorTypeCreateInfoVALVE)
import {-# SOURCE #-} Vulkan.Extensions.VK_VALVE_mutable_descriptor_type (MutableDescriptorTypeListVALVE)
import {-# SOURCE #-} Vulkan.Core10.FundamentalTypes (Offset2D)
import {-# SOURCE #-} Vulkan.Core10.FundamentalTypes (Offset3D)
import {-# SOURCE #-} Vulkan.Extensions.VK_GOOGLE_display_timing (PastPresentationTimingGOOGLE)
Expand Down Expand Up @@ -392,6 +394,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_NV_mesh_shader (PhysicalDeviceMeshSha
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_multiview (PhysicalDeviceMultiviewFeatures)
import {-# SOURCE #-} Vulkan.Extensions.VK_NVX_multiview_per_view_attributes (PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_multiview (PhysicalDeviceMultiviewProperties)
import {-# SOURCE #-} Vulkan.Extensions.VK_VALVE_mutable_descriptor_type (PhysicalDeviceMutableDescriptorTypeFeaturesVALVE)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_pci_bus_info (PhysicalDevicePCIBusInfoPropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (PhysicalDevicePerformanceQueryFeaturesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (PhysicalDevicePerformanceQueryPropertiesKHR)
Expand Down Expand Up @@ -752,8 +755,10 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends ComputePipelineCreateInfo PipelineCreationFeedbackCreateInfoEXT = ()
Extends ComputePipelineCreateInfo PipelineCompilerControlCreateInfoAMD = ()
Extends DescriptorPoolCreateInfo DescriptorPoolInlineUniformBlockCreateInfoEXT = ()
Extends DescriptorPoolCreateInfo MutableDescriptorTypeCreateInfoVALVE = ()
Extends DescriptorSetAllocateInfo DescriptorSetVariableDescriptorCountAllocateInfo = ()
Extends DescriptorSetLayoutCreateInfo DescriptorSetLayoutBindingFlagsCreateInfo = ()
Extends DescriptorSetLayoutCreateInfo MutableDescriptorTypeCreateInfoVALVE = ()
Extends DescriptorSetLayoutSupport DescriptorSetVariableDescriptorCountLayoutSupport = ()
Extends DeviceCreateInfo PhysicalDeviceDeviceGeneratedCommandsFeaturesNV = ()
Extends DeviceCreateInfo DevicePrivateDataCreateInfoEXT = ()
Expand Down Expand Up @@ -837,6 +842,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends DeviceCreateInfo PhysicalDeviceFragmentShadingRateFeaturesKHR = ()
Extends DeviceCreateInfo PhysicalDeviceShaderTerminateInvocationFeaturesKHR = ()
Extends DeviceCreateInfo PhysicalDeviceFragmentShadingRateEnumsFeaturesNV = ()
Extends DeviceCreateInfo PhysicalDeviceMutableDescriptorTypeFeaturesVALVE = ()
Extends DeviceQueueCreateInfo DeviceQueueGlobalPriorityCreateInfoEXT = ()
Extends FenceCreateInfo ExportFenceCreateInfo = ()
Extends FenceCreateInfo ExportFenceWin32HandleInfoKHR = ()
Expand Down Expand Up @@ -965,6 +971,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShadingRateFeaturesKHR = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderTerminateInvocationFeaturesKHR = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceMutableDescriptorTypeFeaturesVALVE = ()
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceExternalImageFormatInfo = ()
Extends PhysicalDeviceImageFormatInfo2 ImageFormatListCreateInfo = ()
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceImageDrmFormatModifierInfoEXT = ()
Expand Down Expand Up @@ -1449,6 +1456,8 @@ peekChainHead ty p c = case ty of
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV -> go @PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV -> go @PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV -> go @PipelineFragmentShadingRateEnumStateCreateInfoNV
STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE -> go @PhysicalDeviceMutableDescriptorTypeFeaturesVALVE
STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE -> go @MutableDescriptorTypeCreateInfoVALVE
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 @@ -1763,6 +1772,8 @@ infix 6 ::&
{-# complete (::&) :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV #-}
{-# complete (::&) :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV #-}
{-# complete (::&) :: PipelineFragmentShadingRateEnumStateCreateInfoNV #-}
{-# complete (::&) :: PhysicalDeviceMutableDescriptorTypeFeaturesVALVE #-}
{-# complete (::&) :: MutableDescriptorTypeCreateInfoVALVE #-}

-- | View the head and tail of a 'Chain', see '::&'
--
Expand Down
3 changes: 0 additions & 3 deletions src/Vulkan/Core10/CommandBuffer.hs
Original file line number Diff line number Diff line change
Expand Up @@ -589,9 +589,6 @@ data CommandBufferAllocateInfo = CommandBufferAllocateInfo
level :: CommandBufferLevel
, -- | @commandBufferCount@ is the number of command buffers to allocate from
-- the pool.
--
-- #VUID-VkCommandBufferAllocateInfo-commandBufferCount-00044#
-- @commandBufferCount@ /must/ be greater than @0@
commandBufferCount :: Word32
}
deriving (Typeable, Eq)
Expand Down
61 changes: 27 additions & 34 deletions src/Vulkan/Core10/CommandBufferBuilding.hs
Original file line number Diff line number Diff line change
Expand Up @@ -1331,6 +1331,12 @@ foreign import ccall
-- sum of the effective offset, as defined above, and the range of the
-- binding /must/ be less than or equal to the size of the buffer
--
-- - #VUID-vkCmdBindDescriptorSets-pDescriptorSets-04616# Each element of
-- @pDescriptorSets@ /must/ not have been allocated from a
-- 'Vulkan.Core10.Handles.DescriptorPool' with the
-- 'Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE'
-- flag set
--
-- == Valid Usage (Implicit)
--
-- - #VUID-vkCmdBindDescriptorSets-commandBuffer-parameter#
Expand Down Expand Up @@ -2094,6 +2100,13 @@ foreign import ccall
-- 'Vulkan.Core10.Handles.Pipeline' object bound to the pipeline bind
-- point /must/ not write to any resource
--
-- - #VUID-vkCmdDraw-commandBuffer-04617# If any of the shader stages of
-- the 'Vulkan.Core10.Handles.Pipeline' bound to the pipeline bind
-- point used by this command uses the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#spirvenv-capabilities-table-RayQueryKHR RayQueryKHR>
-- capability, then @commandBuffer@ /must/ not be a protected command
-- buffer
--
-- - #VUID-vkCmdDraw-None-04007# All vertex input bindings accessed via
-- vertex input variables declared in the vertex shader entry point’s
-- interface /must/ have either valid or
Expand Down Expand Up @@ -2610,6 +2623,13 @@ foreign import ccall
-- 'Vulkan.Core10.Handles.Pipeline' object bound to the pipeline bind
-- point /must/ not write to any resource
--
-- - #VUID-vkCmdDrawIndexed-commandBuffer-04617# If any of the shader
-- stages of the 'Vulkan.Core10.Handles.Pipeline' bound to the pipeline
-- bind point used by this command uses the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#spirvenv-capabilities-table-RayQueryKHR RayQueryKHR>
-- capability, then @commandBuffer@ /must/ not be a protected command
-- buffer
--
-- - #VUID-vkCmdDrawIndexed-None-04007# All vertex input bindings
-- accessed via vertex input variables declared in the vertex shader
-- entry point’s interface /must/ have either valid or
Expand Down Expand Up @@ -4017,6 +4037,13 @@ foreign import ccall
-- 'Vulkan.Core10.Handles.Pipeline' object bound to the pipeline bind
-- point /must/ not write to any resource
--
-- - #VUID-vkCmdDispatch-commandBuffer-04617# If any of the shader stages
-- of the 'Vulkan.Core10.Handles.Pipeline' bound to the pipeline bind
-- point used by this command uses the
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#spirvenv-capabilities-table-RayQueryKHR RayQueryKHR>
-- capability, then @commandBuffer@ /must/ not be a protected command
-- buffer
--
-- - #VUID-vkCmdDispatch-groupCountX-00386# @groupCountX@ /must/ be less
-- than or equal to
-- 'Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits'::@maxComputeWorkGroupCount@[0]
Expand Down Expand Up @@ -9706,40 +9733,6 @@ foreign import ccall
-- 'Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT'
-- set
--
-- - #VUID-vkCmdBeginRenderPass-pAttachments-04102# Each element of the
-- @pAttachments@ of @framebuffer@ that is referenced by any element of
-- the @pInputAttachments@ of any element of @pSubpasses@ of
-- @renderPass@ /must/ have
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#resources-image-view-format-features image view format features>
-- containing at least
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_COLOR_ATTACHMENT_BIT'
-- or
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT'
--
-- - #VUID-vkCmdBeginRenderPass-pAttachments-04103# Each element of the
-- @pAttachments@ of @framebuffer@ that is referenced by any element of
-- the @pColorAttachments@ of any element of @pSubpasses@ of
-- @renderPass@ /must/ have
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#resources-image-view-format-features image view format features>
-- containing
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_COLOR_ATTACHMENT_BIT'
--
-- - #VUID-vkCmdBeginRenderPass-pAttachments-04104# Each element of the
-- @pAttachments@ of @framebuffer@ that is referenced by any element of
-- the @pResolveAttachments@ of any element of @pSubpasses@ of
-- @renderPass@ /must/ have
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#resources-image-view-format-features image view format features>
-- containing
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_COLOR_ATTACHMENT_BIT'
--
-- - #VUID-vkCmdBeginRenderPass-pAttachments-04105# Each element of the
-- @pAttachments@ of @framebuffer@ that is referenced by any element of
-- the @pDepthStencilAttachment@ of any element of @pSubpasses@ of
-- @renderPass@ /must/ have
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#resources-image-view-format-features image view format features>
-- containing
-- 'Vulkan.Core10.Enums.FormatFeatureFlagBits.FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT'
--
-- == Valid Usage (Implicit)
--
-- - #VUID-vkCmdBeginRenderPass-commandBuffer-parameter# @commandBuffer@
Expand Down
Loading

0 comments on commit 07a777d

Please sign in to comment.