vulkan 3.11.4.1 → 3.11.5
raw patch · 26 files changed
+132/−133 lines, 26 files
Files
- changelog.md +3/−0
- package.yaml +1/−1
- src/Vulkan/Core10/CommandBufferBuilding.hs +38/−58
- src/Vulkan/Core10/Enums/PipelineCreateFlagBits.hs +1/−1
- src/Vulkan/Core10/Memory.hs +4/−0
- src/Vulkan/Core10/Pass.hs +4/−4
- src/Vulkan/Core10/Queue.hs +4/−3
- src/Vulkan/Core11/Originally_Based_On_VK_KHR_protected_memory.hs +8/−6
- src/Vulkan/Core12/Promoted_From_VK_KHR_imageless_framebuffer.hs +2/−1
- src/Vulkan/Extensions/VK_EXT_multi_draw.hs +8/−10
- src/Vulkan/Extensions/VK_EXT_multi_draw.hs-boot +1/−1
- src/Vulkan/Extensions/VK_EXT_provoking_vertex.hs +3/−3
- src/Vulkan/Extensions/VK_EXT_provoking_vertex.hs-boot +3/−3
- src/Vulkan/Extensions/VK_EXT_vertex_input_dynamic_state.hs +5/−5
- src/Vulkan/Extensions/VK_HUAWEI_invocation_mask.hs +5/−5
- src/Vulkan/Extensions/VK_HUAWEI_invocation_mask.hs-boot +5/−5
- src/Vulkan/Extensions/VK_KHR_acceleration_structure.hs +10/−0
- src/Vulkan/Extensions/VK_KHR_copy_commands2.hs +4/−4
- src/Vulkan/Extensions/VK_KHR_portability_subset.hs +2/−0
- src/Vulkan/Extensions/VK_KHR_portability_subset.hs-boot +2/−0
- src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs +3/−3
- src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs-boot +1/−1
- src/Vulkan/Extensions/VK_NV_ray_tracing.hs +5/−5
- src/Vulkan/Extensions/VK_NV_ray_tracing_motion_blur.hs +7/−11
- src/Vulkan/Version.hs +2/−2
- vulkan.cabal +1/−1
changelog.md view
@@ -2,6 +2,9 @@ ## WIP +## [3.11.5] - 2021-08-03+- Bump API version to v1.2.187+ ## [3.11.4.1] - 2021-07-30 - Documentation fixes
package.yaml view
@@ -1,5 +1,5 @@ name: vulkan-version: "3.11.4.1"+version: "3.11.5" synopsis: Bindings to the Vulkan graphics API. description: Please see [the readme](https://github.com/expipiplus1/vulkan/#readme) category: Graphics
src/Vulkan/Core10/CommandBufferBuilding.hs view
@@ -799,12 +799,6 @@ -- representation, m is a function of depth values in the range [0,1], and -- o is applied to depth values in the same range. ----- For fixed-point depth buffers, fragment depth values are always limited--- to the range [0,1] by clamping after depth bias addition is performed.--- Unless the @VK_EXT_depth_range_unrestricted@ extension is enabled,--- fragment depth values are clamped even when the depth buffer uses a--- floating-point representation.--- -- == Valid Usage -- -- - #VUID-vkCmdSetDepthBias-depthBiasClamp-00790# If the@@ -6087,7 +6081,7 @@ -- is a protected command buffer, then @dstImage@ /must/ not be an -- unprotected image ----- - #VUID-vkCmdCopyBufferToImage-pRegions-00172# The image region+-- - #VUID-vkCmdCopyBufferToImage-pRegions-06217# The image region -- specified by each element of @pRegions@ /must/ be contained within -- the specified @imageSubresource@ of @dstImage@ --@@ -6169,13 +6163,13 @@ -- 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_DEPTH_BIT' or -- 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_STENCIL_BIT'. ----- - #VUID-vkCmdCopyBufferToImage-imageOffset-00197# For each element of+-- - #VUID-vkCmdCopyBufferToImage-pRegions-06218# For each element of -- @pRegions@, @imageOffset.x@ and (@imageExtent.width@ + -- @imageOffset.x@) /must/ both be greater than or equal to @0@ and -- less than or equal to the width of the specified @imageSubresource@ -- of @dstImage@ ----- - #VUID-vkCmdCopyBufferToImage-imageOffset-00198# For each element of+-- - #VUID-vkCmdCopyBufferToImage-pRegions-06219# For each element of -- @pRegions@, @imageOffset.y@ and (@imageExtent.height@ + -- @imageOffset.y@) /must/ both be greater than or equal to @0@ and -- less than or equal to the height of the specified @imageSubresource@@@ -6434,7 +6428,7 @@ -- is a protected command buffer, then @dstBuffer@ /must/ not be an -- unprotected buffer ----- - #VUID-vkCmdCopyImageToBuffer-pRegions-00182# The image region+-- - #VUID-vkCmdCopyImageToBuffer-pRegions-06220# The image region -- specified by each element of @pRegions@ /must/ be contained within -- the specified @imageSubresource@ of @srcImage@ --@@ -6507,13 +6501,13 @@ -- have been created with @flags@ containing -- 'Vulkan.Core10.Enums.ImageCreateFlagBits.IMAGE_CREATE_SUBSAMPLED_BIT_EXT' ----- - #VUID-vkCmdCopyImageToBuffer-imageOffset-00197# For each element of+-- - #VUID-vkCmdCopyImageToBuffer-pRegions-06221# For each element of -- @pRegions@, @imageOffset.x@ and (@imageExtent.width@ + -- @imageOffset.x@) /must/ both be greater than or equal to @0@ and -- less than or equal to the width of the specified @imageSubresource@ -- of @srcImage@ ----- - #VUID-vkCmdCopyImageToBuffer-imageOffset-00198# For each element of+-- - #VUID-vkCmdCopyImageToBuffer-pRegions-06222# For each element of -- @pRegions@, @imageOffset.y@ and (imageExtent.height + -- @imageOffset.y@) /must/ both be greater than or equal to @0@ and -- less than or equal to the height of the specified @imageSubresource@@@ -7434,12 +7428,6 @@ -- -- = Description ----- 'cmdClearAttachments' /can/ clear multiple regions of each attachment--- used in the current subpass of a render pass instance. This command--- /must/ be called only inside a render pass instance, and implicitly--- selects the images to clear based on the current framebuffer attachments--- and the command parameters.--- -- If the render pass has a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-fragmentdensitymapattachment fragment density map attachment>, -- clears follow the@@ -7467,6 +7455,15 @@ -- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT' -- stages. --+-- 'cmdClearAttachments' is not affected by the bound pipeline state.+--+-- Note+--+-- It’s generally advised that attachments are cleared by using the+-- 'Vulkan.Core10.Enums.AttachmentLoadOp.ATTACHMENT_LOAD_OP_CLEAR' load+-- operation at the start of rendering, which will be more efficient on+-- some implementations.+-- -- == Valid Usage -- -- - #VUID-vkCmdClearAttachments-aspectMask-02501# If the @aspectMask@@@ -7577,9 +7574,8 @@ CommandBuffer -> -- | @pAttachments@ is a pointer to an array of 'ClearAttachment' structures -- defining the attachments to clear and the clear values to use. If any- -- attachment to be cleared in the current subpass is- -- 'Vulkan.Core10.APIConstants.ATTACHMENT_UNUSED', then the clear has no- -- effect on that attachment.+ -- attachment index to be cleared is not backed by an image view, then the+ -- clear has no effect. ("attachments" ::: Vector ClearAttachment) -> -- | @pRects@ is a pointer to an array of 'ClearRect' structures defining -- regions within each selected attachment to clear.@@ -7934,7 +7930,7 @@ -- feature is not enabled, @stageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdSetEvent-stageMask-4098# Any pipeline stage included in+-- - #VUID-vkCmdSetEvent-stageMask-04098# Any pipeline stage included in -- @stageMask@ /must/ be supported by the capabilities of the queue -- family specified by the @queueFamilyIndex@ member of the -- 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that was@@ -8082,8 +8078,8 @@ -- feature is not enabled, @stageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdResetEvent-stageMask-4098# Any pipeline stage included in--- @stageMask@ /must/ be supported by the capabilities of the queue+-- - #VUID-vkCmdResetEvent-stageMask-04098# Any pipeline stage included+-- in @stageMask@ /must/ be supported by the capabilities of the queue -- family specified by the @queueFamilyIndex@ member of the -- 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that was -- used to create the 'Vulkan.Core10.Handles.CommandPool' that@@ -8360,11 +8356,11 @@ -- feature is not enabled, @srcStageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdWaitEvents-srcStageMask-4098# Any pipeline stage included--- in @srcStageMask@ /must/ be supported by the capabilities of the--- queue family specified by the @queueFamilyIndex@ member of the--- 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that was--- used to create the 'Vulkan.Core10.Handles.CommandPool' that+-- - #VUID-vkCmdWaitEvents-srcStageMask-04098# Any pipeline stage+-- included in @srcStageMask@ /must/ be supported by the capabilities+-- of the queue family specified by the @queueFamilyIndex@ member of+-- the 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that+-- was used to create the 'Vulkan.Core10.Handles.CommandPool' that -- @commandBuffer@ was allocated from, as specified in the -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-supported table of supported pipeline stages> --@@ -8414,11 +8410,11 @@ -- feature is not enabled, @dstStageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdWaitEvents-dstStageMask-4098# Any pipeline stage included--- in @dstStageMask@ /must/ be supported by the capabilities of the--- queue family specified by the @queueFamilyIndex@ member of the--- 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that was--- used to create the 'Vulkan.Core10.Handles.CommandPool' that+-- - #VUID-vkCmdWaitEvents-dstStageMask-04098# Any pipeline stage+-- included in @dstStageMask@ /must/ be supported by the capabilities+-- of the queue family specified by the @queueFamilyIndex@ member of+-- the 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that+-- was used to create the 'Vulkan.Core10.Handles.CommandPool' that -- @commandBuffer@ was allocated from, as specified in the -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-supported table of supported pipeline stages> --@@ -8760,7 +8756,7 @@ -- feature is not enabled, @srcStageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdPipelineBarrier-srcStageMask-4098# Any pipeline stage+-- - #VUID-vkCmdPipelineBarrier-srcStageMask-04098# Any pipeline stage -- included in @srcStageMask@ /must/ be supported by the capabilities -- of the queue family specified by the @queueFamilyIndex@ member of -- the 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that@@ -8814,7 +8810,7 @@ -- feature is not enabled, @dstStageMask@ /must/ not contain -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV' ----- - #VUID-vkCmdPipelineBarrier-dstStageMask-4098# Any pipeline stage+-- - #VUID-vkCmdPipelineBarrier-dstStageMask-04098# Any pipeline stage -- included in @dstStageMask@ /must/ be supported by the capabilities -- of the queue family specified by the @queueFamilyIndex@ member of -- the 'Vulkan.Core10.CommandPool.CommandPoolCreateInfo' structure that@@ -11458,7 +11454,7 @@ -- not contain -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo' -- or its @deviceRenderAreaCount@ member is equal to 0,--- @renderArea.offset.x@ + @renderArea.offset.width@ /must/ be less+-- @renderArea.offset.x@ + @renderArea.extent.width@ /must/ be less -- than or equal to 'Vulkan.Core10.Pass.FramebufferCreateInfo'::@width@ -- the @framebuffer@ was created with --@@ -11466,7 +11462,7 @@ -- not contain -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo' -- or its @deviceRenderAreaCount@ member is equal to 0,--- @renderArea.offset.y@ + @renderArea.offset.height@ /must/ be less+-- @renderArea.offset.y@ + @renderArea.extent.height@ /must/ be less -- than or equal to -- 'Vulkan.Core10.Pass.FramebufferCreateInfo'::@height@ the -- @framebuffer@ was created with@@ -11486,7 +11482,7 @@ -- - #VUID-VkRenderPassBeginInfo-pNext-02856# If the @pNext@ chain -- contains -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo',--- @offset.x@ + @offset.width@ of each element of @pDeviceRenderAreas@+-- @offset.x@ + @extent.width@ of each element of @pDeviceRenderAreas@ -- /must/ be less than or equal to -- 'Vulkan.Core10.Pass.FramebufferCreateInfo'::@width@ the -- @framebuffer@ was created with@@ -11494,7 +11490,7 @@ -- - #VUID-VkRenderPassBeginInfo-pNext-02857# If the @pNext@ chain -- contains -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo',--- @offset.y@ + @offset.height@ of each element of @pDeviceRenderAreas@+-- @offset.y@ + @extent.height@ of each element of @pDeviceRenderAreas@ -- /must/ be less than or equal to -- 'Vulkan.Core10.Pass.FramebufferCreateInfo'::@height@ the -- @framebuffer@ was created with@@ -11832,21 +11828,6 @@ -- | VkClearAttachment - Structure specifying a clear attachment ----- = Description------ No memory barriers are needed between 'cmdClearAttachments' and--- preceding or subsequent draw or attachment clear commands in the same--- subpass.------ The 'cmdClearAttachments' command is not affected by the bound pipeline--- state.------ Attachments /can/ also be cleared at the beginning of a render pass--- instance by setting @loadOp@ (or @stencilLoadOp@) of--- 'Vulkan.Core10.Pass.AttachmentDescription' to--- 'Vulkan.Core10.Enums.AttachmentLoadOp.ATTACHMENT_LOAD_OP_CLEAR', as--- described for 'Vulkan.Core10.Pass.createRenderPass'.--- -- == Valid Usage -- -- - #VUID-VkClearAttachment-aspectMask-00019# If @aspectMask@ includes@@ -11885,9 +11866,8 @@ aspectMask :: ImageAspectFlags , -- | @colorAttachment@ is only meaningful if -- 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_COLOR_BIT' is set- -- in @aspectMask@, in which case it is an index to the @pColorAttachments@- -- array in the 'Vulkan.Core10.Pass.SubpassDescription' structure of the- -- current subpass which selects the color attachment to clear.+ -- in @aspectMask@, in which case it is an index into the currently bound+ -- color attachments. colorAttachment :: Word32 , -- | @clearValue@ is the color or depth\/stencil value to clear the -- attachment to, as described in
src/Vulkan/Core10/Enums/PipelineCreateFlagBits.hs view
@@ -149,7 +149,7 @@ -- pipelines. -- -- - 'PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV' specifies that the--- pipeline is allowed to use OpTraceRayMotionNV.+-- pipeline is allowed to use @OpTraceRayMotionNV@. -- -- It is valid to set both 'PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT' and -- 'PIPELINE_CREATE_DERIVATIVE_BIT'. This allows a pipeline to be both a
src/Vulkan/Core10/Memory.hs view
@@ -1131,6 +1131,10 @@ -- @zx_vmo_get_size@(@handle@) where @handle@ is the VMO handle to the -- imported external memory. --+-- - #VUID-VkMemoryAllocateInfo-allocationSize-06231# @allocationSize@+-- /must/ be less than+-- 'Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties'::@maxMemoryAllocationSize@.+-- -- == Valid Usage (Implicit) -- -- - #VUID-VkMemoryAllocateInfo-sType-sType# @sType@ /must/ be
src/Vulkan/Core10/Pass.hs view
@@ -482,13 +482,13 @@ -- member of the returned 'Vulkan.Core10.FundamentalTypes.Extent2D' -- (the vertical granularity). ----- - either the @offset.width@ member in @renderArea@ is a multiple of--- the horizontal granularity or @offset.x@+@offset.width@ is equal to+-- - either the @extent.width@ member in @renderArea@ is a multiple of+-- the horizontal granularity or @offset.x@+@extent.width@ is equal to -- the @width@ of the @framebuffer@ in the -- 'Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo'. ----- - either the @offset.height@ member in @renderArea@ is a multiple of--- the vertical granularity or @offset.y@+@offset.height@ is equal to+-- - either the @extent.height@ member in @renderArea@ is a multiple of+-- the vertical granularity or @offset.y@+@extent.height@ is equal to -- the @height@ of the @framebuffer@ in the -- 'Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo'. --
src/Vulkan/Core10/Queue.hs view
@@ -119,9 +119,10 @@ -- structure -- -- - #VUID-vkGetDeviceQueue-queueIndex-00385# @queueIndex@ /must/ be less--- than the number of queues created for the specified queue family--- index when @device@ was created, via the @queueCount@ member of the--- 'Vulkan.Core10.Device.DeviceQueueCreateInfo' structure+-- than the value of+-- 'Vulkan.Core10.Device.DeviceQueueCreateInfo'::@queueCount@ for the+-- queue family indicated by @queueFamilyIndex@ when @device@ was+-- created -- -- - #VUID-vkGetDeviceQueue-flags-01841# -- 'Vulkan.Core10.Device.DeviceQueueCreateInfo'::@flags@ /must/ have
src/Vulkan/Core11/Originally_Based_On_VK_KHR_protected_memory.hs view
@@ -340,6 +340,11 @@ -- 'Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlags' -- value indicating the flags used to create the device queue. --+ -- #VUID-VkDeviceQueueInfo2-flags-06225# @flags@ /must/ be equal to+ -- 'Vulkan.Core10.Device.DeviceQueueCreateInfo'::@flags@ for a+ -- 'Vulkan.Core10.Device.DeviceQueueCreateInfo' structure for the queue+ -- family indicated by @queueFamilyIndex@ when @device@ was created+ -- -- #VUID-VkDeviceQueueInfo2-flags-parameter# @flags@ /must/ be a valid -- combination of -- 'Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits'@@ -356,12 +361,9 @@ -- retrieve. -- -- #VUID-VkDeviceQueueInfo2-queueIndex-01843# @queueIndex@ /must/ be less- -- than the number of queues created for the specified queue family index- -- and- -- 'Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlags'- -- member @flags@ equal to this @flags@ value when @device@ was created,- -- via the @queueCount@ member of the- -- 'Vulkan.Core10.Device.DeviceQueueCreateInfo' structure+ -- than 'Vulkan.Core10.Device.DeviceQueueCreateInfo'::@queueCount@ for the+ -- corresponding queue family and flags indicated by @queueFamilyIndex@ and+ -- @flags@ when @device@ was created queueIndex :: Word32 } deriving (Typeable, Eq)
src/Vulkan/Core12/Promoted_From_VK_KHR_imageless_framebuffer.hs view
@@ -233,7 +233,8 @@ width :: Word32 , -- | @height@ is the height of the image view used for rendering. height :: Word32- , -- No documentation found for Nested "VkFramebufferAttachmentImageInfo" "layerCount"+ , -- | @layerCount@ is the number of array layers of the image view used for+ -- rendering. layerCount :: Word32 , -- | @pViewFormats@ is a pointer to an array of -- 'Vulkan.Core10.Enums.Format.Format' values specifying all of the formats
src/Vulkan/Extensions/VK_EXT_multi_draw.hs view
@@ -103,7 +103,7 @@ -- -- == Version History ----- - Version 1, 2021-01-20 (Mike Blumenkrantz)+-- - Revision 1, 2021-01-20 (Mike Blumenkrantz) -- -- - Initial version --@@ -191,9 +191,8 @@ -- -- = Description ----- This command is equivalent to calling--- 'Vulkan.Core10.CommandBufferBuilding.cmdDraw' @drawCount@ times. The--- number of draw commands recorded is @drawCount@, with each command+-- @drawCount@ draws are executed with parameters taken from @pVertexInfo@.+-- The number of draw commands recorded is @drawCount@, with each command -- reading, sequentially, a @firstVertex@ and a @vertexCount@ from -- @pVertexInfo@. --@@ -817,12 +816,11 @@ -- -- = Description ----- This command is equivalent to calling--- 'Vulkan.Core10.CommandBufferBuilding.cmdDrawIndexed' @drawCount@ times.--- The number of draw commands recorded is @drawCount@, with each command--- reading, sequentially, a @firstIndex@ and an @indexCount@ from--- @pIndexInfo@. If @pVertexOffset@ is @NULL@, a @vertexOffset@ is also--- read from @pIndexInfo@, otherwise the value from dereferencing+-- @drawCount@ indexed draws are executed with parameters taken from+-- @pIndexInfo@. The number of draw commands recorded is @drawCount@, with+-- each command reading, sequentially, a @firstIndex@ and an @indexCount@+-- from @pIndexInfo@. If @pVertexOffset@ is @NULL@, a @vertexOffset@ is+-- also read from @pIndexInfo@, otherwise the value from dereferencing -- @pVertexOffset@ is used. -- -- == Valid Usage
src/Vulkan/Extensions/VK_EXT_multi_draw.hs-boot view
@@ -103,7 +103,7 @@ -- -- == Version History ----- - Version 1, 2021-01-20 (Mike Blumenkrantz)+-- - Revision 1, 2021-01-20 (Mike Blumenkrantz) -- -- - Initial version --
src/Vulkan/Extensions/VK_EXT_provoking_vertex.hs view
@@ -148,21 +148,21 @@ -- -- == Version History ----- - Revision 1(c), 2021-02-22 (Jesse Hall)+-- - Revision 1, (1c) 2021-02-22 (Jesse Hall) -- -- - Added -- VkPhysicalDeviceProvokingVertexPropertiesEXT::transformFeedbackPreservesTriangleFanProvokingVertex -- to accommodate implementations that cannot change the transform -- feedback vertex order for triangle fans. ----- - Revision 1(b), 2020-06-14 (Jesse Hall)+-- - Revision 1, (1b) 2020-06-14 (Jesse Hall) -- -- - Added -- VkPhysicalDeviceProvokingVertexFeaturesEXT::transformFeedbackPreservesProvokingVertex -- and required that transform feedback write vertices so as to -- preserve the provoking vertex of each primitive. ----- - Revision 1(a), 2019-10-23 (Jesse Hall)+-- - Revision 1, (1a) 2019-10-23 (Jesse Hall) -- -- - Initial draft, based on a proposal by Alexis Hétu --
src/Vulkan/Extensions/VK_EXT_provoking_vertex.hs-boot view
@@ -148,21 +148,21 @@ -- -- == Version History ----- - Revision 1(c), 2021-02-22 (Jesse Hall)+-- - Revision 1, (1c) 2021-02-22 (Jesse Hall) -- -- - Added -- VkPhysicalDeviceProvokingVertexPropertiesEXT::transformFeedbackPreservesTriangleFanProvokingVertex -- to accommodate implementations that cannot change the transform -- feedback vertex order for triangle fans. ----- - Revision 1(b), 2020-06-14 (Jesse Hall)+-- - Revision 1, (1b) 2020-06-14 (Jesse Hall) -- -- - Added -- VkPhysicalDeviceProvokingVertexFeaturesEXT::transformFeedbackPreservesProvokingVertex -- and required that transform feedback write vertices so as to -- preserve the provoking vertex of each primitive. ----- - Revision 1(a), 2019-10-23 (Jesse Hall)+-- - Revision 1, (1a) 2019-10-23 (Jesse Hall) -- -- - Initial draft, based on a proposal by Alexis Hétu --
src/Vulkan/Extensions/VK_EXT_vertex_input_dynamic_state.hs view
@@ -378,12 +378,12 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-vertexAttributeInstanceRateDivisor vertexAttributeInstanceRateDivisor> -- feature is not enabled, @divisor@ /must/ be @1@ ----- - #VUID-VkVertexInputBindingDescription2EXT-divisor-04800# @divisor@+-- - #VUID-VkVertexInputBindingDescription2EXT-divisor-06226# @divisor@ -- /must/ be a value between @0@ and -- 'Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT'::@maxVertexAttribDivisor@, -- inclusive ----- - #VUID-VkVertexInputBindingDescription2EXT-divisor-04801# If+-- - #VUID-VkVertexInputBindingDescription2EXT-divisor-06227# If -- @divisor@ is not @1@ then @inputRate@ /must/ be of type -- 'Vulkan.Core10.Enums.VertexInputRate.VERTEX_INPUT_RATE_INSTANCE' --@@ -482,15 +482,15 @@ -- -- == Valid Usage ----- - #VUID-VkVertexInputAttributeDescription2EXT-location-04802#+-- - #VUID-VkVertexInputAttributeDescription2EXT-location-06228# -- @location@ /must/ be less than -- 'Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits'::@maxVertexInputAttributes@ ----- - #VUID-VkVertexInputAttributeDescription2EXT-binding-04803# @binding@+-- - #VUID-VkVertexInputAttributeDescription2EXT-binding-06229# @binding@ -- /must/ be less than -- 'Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits'::@maxVertexInputBindings@ ----- - #VUID-VkVertexInputAttributeDescription2EXT-offset-04804# @offset@+-- - #VUID-VkVertexInputAttributeDescription2EXT-offset-06230# @offset@ -- /must/ be less than or equal to -- 'Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits'::@maxVertexInputAttributeOffset@ --
src/Vulkan/Extensions/VK_HUAWEI_invocation_mask.hs view
@@ -42,8 +42,8 @@ -- -- - This extension requires -- <VK_KHR_ray_tracing_pipeline.html VK_KHR_ray_tracing_pipeline>,--- which allow to bind an invocation mask image before the trace--- ray command+-- which allow to bind an invocation mask image before the ray+-- tracing command -- -- - This extension requires -- <VK_KHR_synchronization2.html VK_KHR_synchronization2>, which@@ -57,9 +57,9 @@ -- -- The rays to trace may be sparse in some use cases. For example, the -- scene only have a few regions to reflect. Providing an invocation mask--- image to the trace ray commands could potentially give the hardware the--- hint to do certain optimization without invoking an additional pass to--- compact the ray buffer.+-- image to the ray tracing commands could potentially give the hardware+-- the hint to do certain optimization without invoking an additional pass+-- to compact the ray buffer. -- -- == New Commands --
src/Vulkan/Extensions/VK_HUAWEI_invocation_mask.hs-boot view
@@ -42,8 +42,8 @@ -- -- - This extension requires -- <VK_KHR_ray_tracing_pipeline.html VK_KHR_ray_tracing_pipeline>,--- which allow to bind an invocation mask image before the trace--- ray command+-- which allow to bind an invocation mask image before the ray+-- tracing command -- -- - This extension requires -- <VK_KHR_synchronization2.html VK_KHR_synchronization2>, which@@ -57,9 +57,9 @@ -- -- The rays to trace may be sparse in some use cases. For example, the -- scene only have a few regions to reflect. Providing an invocation mask--- image to the trace ray commands could potentially give the hardware the--- hint to do certain optimization without invoking an additional pass to--- compact the ray buffer.+-- image to the ray tracing commands could potentially give the hardware+-- the hint to do certain optimization without invoking an additional pass+-- to compact the ray buffer. -- -- == New Commands --
src/Vulkan/Extensions/VK_KHR_acceleration_structure.hs view
@@ -2187,6 +2187,16 @@ -- of -- 'Vulkan.Core10.Enums.AccessFlagBits.ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR'. --+-- - If @queryType@ is+-- 'Vulkan.Core10.Enums.QueryType.QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR',+-- then the value written out is the number of bytes required by a+-- compacted acceleration structure.+--+-- - If @queryType@ is+-- 'Vulkan.Core10.Enums.QueryType.QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR',+-- then the value written out is the number of bytes required by a+-- serialized acceleration structure.+-- -- == Valid Usage -- -- - #VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryPool-02493#
src/Vulkan/Extensions/VK_KHR_copy_commands2.hs view
@@ -2378,16 +2378,16 @@ -- 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_DEPTH_BIT' or -- 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_STENCIL_BIT'. ----- - #VUID-VkCopyBufferToImageInfo2KHR-imageOffset-00197# For each--- element of @pRegions@ not containing+-- - #VUID-VkCopyBufferToImageInfo2KHR-pRegions-06223# For each element+-- of @pRegions@ not containing -- 'Vulkan.Extensions.VK_QCOM_rotated_copy_commands.CopyCommandTransformInfoQCOM' -- in its @pNext@ chain, @imageOffset.x@ and (@imageExtent.width@ + -- @imageOffset.x@) /must/ both be greater than or equal to @0@ and -- less than or equal to the width of the specified @imageSubresource@ -- of @dstImage@ ----- - #VUID-VkCopyBufferToImageInfo2KHR-imageOffset-00198# For each--- element of @pRegions@ not containing+-- - #VUID-VkCopyBufferToImageInfo2KHR-pRegions-06224# For each element+-- of @pRegions@ not containing -- 'Vulkan.Extensions.VK_QCOM_rotated_copy_commands.CopyCommandTransformInfoQCOM' -- in its @pNext@ chain, @imageOffset.y@ and (@imageExtent.height@ + -- @imageOffset.y@) /must/ both be greater than or equal to @0@ and
src/Vulkan/Extensions/VK_KHR_portability_subset.hs view
@@ -58,6 +58,8 @@ -- -- - Neil Trevett, NVIDIA --+-- - Alexey Knyazev, Independent+-- -- == Description -- -- The \`VK_KHR_portability_subset extension allows a non-conformant Vulkan
src/Vulkan/Extensions/VK_KHR_portability_subset.hs-boot view
@@ -58,6 +58,8 @@ -- -- - Neil Trevett, NVIDIA --+-- - Alexey Knyazev, Independent+-- -- == Description -- -- The \`VK_KHR_portability_subset extension allows a non-conformant Vulkan
src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs view
@@ -163,7 +163,7 @@ -- - A shader binding indirection table to link shader groups with -- acceleration structure items ----- - Trace ray commands which initiates the ray pipeline traversal and+-- - Ray tracing commands which initiate the ray pipeline traversal and -- invocation of the various new shader domains depending on which -- traversal conditions are met --@@ -3063,7 +3063,7 @@ -- -- - #features-rayTracingPipelineTraceRaysIndirect# -- @rayTracingPipelineTraceRaysIndirect@ indicates whether the--- implementation supports indirect trace ray commands, e.g.+-- implementation supports indirect ray tracing commands, e.g. -- 'cmdTraceRaysIndirectKHR'. -- -- - #features-rayTraversalPrimitiveCulling#@@ -3350,7 +3350,7 @@ -- | VkTraceRaysIndirectCommandKHR - Structure specifying the parameters of--- an indirect trace ray command+-- an indirect ray tracing command -- -- = Description --
src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs-boot view
@@ -163,7 +163,7 @@ -- - A shader binding indirection table to link shader groups with -- acceleration structure items ----- - Trace ray commands which initiates the ray pipeline traversal and+-- - Ray tracing commands which initiate the ray pipeline traversal and -- invocation of the various new shader domains depending on which -- traversal conditions are met --
src/Vulkan/Extensions/VK_NV_ray_tracing.hs view
@@ -1288,14 +1288,14 @@ -- All acceleration structures in @pAccelerationStructures@ /must/ have -- been built prior to the execution of this command ----- - #VUID-vkCmdWriteAccelerationStructuresPropertiesNV-accelerationStructures-03431#+-- - #VUID-vkCmdWriteAccelerationStructuresPropertiesNV-pAccelerationStructures-06215# -- All acceleration structures in @pAccelerationStructures@ /must/ have -- been built with -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR' -- if @queryType@ is -- 'Vulkan.Core10.Enums.QueryType.QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV' ----- - #VUID-vkCmdWriteAccelerationStructuresPropertiesNV-queryType-03432#+-- - #VUID-vkCmdWriteAccelerationStructuresPropertiesNV-queryType-06216# -- @queryType@ /must/ be -- 'Vulkan.Core10.Enums.QueryType.QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV' --@@ -1843,8 +1843,8 @@ -- not be a protected command buffer -- -- - #VUID-vkCmdTraceRaysNV-maxRecursionDepth-03625# This command /must/--- not cause a trace ray instruction to be executed from a shader--- invocation with a+-- not cause a pipeline trace ray instruction to be executed from a+-- shader invocation with a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#ray-tracing-recursion-depth recursion depth> -- greater than the value of @maxRecursionDepth@ used to create the -- bound ray tracing pipeline@@ -2620,7 +2620,7 @@ -- or -- 'Vulkan.Core10.Enums.PipelineCreateFlagBits.PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT' ----- - #VUID-VkRayTracingPipelineCreateInfoNV-stage-03425# The @stage@+-- - #VUID-VkRayTracingPipelineCreateInfoNV-stage-06232# The @stage@ -- member of at least one element of @pStages@ /must/ be -- 'Vulkan.Core10.Enums.ShaderStageFlagBits.SHADER_STAGE_RAYGEN_BIT_KHR' --
src/Vulkan/Extensions/VK_NV_ray_tracing_motion_blur.hs view
@@ -281,15 +281,7 @@ -- -- = Members ----- This structure describes the following feature: * @sType@ is the type of--- this structure. * @pNext@ is @NULL@ or a pointer to a structure--- extending this structure. * #features-rayTracingMotionBlur#--- @rayTracingMotionBlur@ indicates whether the implementation supports the--- motion blur feature. *--- #features-rayTracingMotionBlurPipelineTraceRaysIndirect#--- @rayTracingMotionBlurPipelineTraceRaysIndirect@ indicates whether the--- implementation supports indirect trace ray commands with the motion blur--- feature enabled.+-- This structure describes the following feature: -- -- = Description --@@ -310,9 +302,13 @@ -- 'Vulkan.Core10.FundamentalTypes.Bool32', -- 'Vulkan.Core10.Enums.StructureType.StructureType' data PhysicalDeviceRayTracingMotionBlurFeaturesNV = PhysicalDeviceRayTracingMotionBlurFeaturesNV- { -- No documentation found for Nested "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV" "rayTracingMotionBlur"+ { -- | #features-rayTracingMotionBlur# @rayTracingMotionBlur@ indicates whether+ -- the implementation supports the motion blur feature. rayTracingMotionBlur :: Bool- , -- No documentation found for Nested "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV" "rayTracingMotionBlurPipelineTraceRaysIndirect"+ , -- | #features-rayTracingMotionBlurPipelineTraceRaysIndirect#+ -- @rayTracingMotionBlurPipelineTraceRaysIndirect@ indicates whether the+ -- implementation supports indirect ray tracing commands with the motion+ -- blur feature enabled. rayTracingMotionBlurPipelineTraceRaysIndirect :: Bool } deriving (Typeable, Eq)
src/Vulkan/Version.hs view
@@ -19,11 +19,11 @@ import Data.Word (Word32) pattern HEADER_VERSION :: Word32-pattern HEADER_VERSION = 186+pattern HEADER_VERSION = 187 pattern HEADER_VERSION_COMPLETE :: Word32-pattern HEADER_VERSION_COMPLETE = MAKE_API_VERSION 1 2 186+pattern HEADER_VERSION_COMPLETE = MAKE_API_VERSION 1 2 187 pattern MAKE_API_VERSION :: Word32 -> Word32 -> Word32 -> Word32
vulkan.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: vulkan-version: 3.11.4.1+version: 3.11.5 synopsis: Bindings to the Vulkan graphics API. description: Please see [the readme](https://github.com/expipiplus1/vulkan/#readme) category: Graphics