Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Name
VK_EXT_pipeline_library_group_handles - device extension
VK_EXT_pipeline_library_group_handles
- Name String
VK_EXT_pipeline_library_group_handles
- Extension Type
- Device extension
- Registered Extension Number
- 499
- Revision
- 1
- Ratification Status
- Not ratified
- Extension and Version Dependencies
- VK_KHR_ray_tracing_pipeline and VK_KHR_pipeline_library
- Contact
- Extension Proposal
- VK_EXT_pipeline_library_group_handles
Other Extension Metadata
- Last Modified Date
- 2023-01-25
- IP Status
- No known IP claims.
- Contributors
- Hans-Kristian Arntzen, Valve
- Stuart Smith, AMD
- Ricardo Garcia, Igalia
- Lionel Landwerlin, Intel
- Eric Werness, NVIDIA
- Daniel Koch, NVIDIA
Description
When using pipeline libraries in ray tracing pipelines, a library might get linked into different pipelines in an incremental way. An application can have a strategy where a ray tracing pipeline is comprised of N pipeline libraries and is later augumented by creating a new pipeline with N + 1 libraries. Without this extension, all group handles must be re-queried as the group handle is tied to the pipeline, not the library. This is problematic for applications which aim to decouple construction of record buffers and the linkage of ray tracing pipelines.
To aid in this, this extension enables support for querying group
handles directly from pipeline libraries. Group handles obtained from a
library must remain bitwise identical in any
Pipeline
that links to the library.
With this feature, the extension also improves compatibility with DXR 1.1 AddToStateObject(), which guarantees that group handles returned remain bitwise identical between parent and child pipelines. In addition, querying group handles from COLLECTION objects is also supported with that API.
New Structures
Extending
PhysicalDeviceFeatures2
,DeviceCreateInfo
:
New Enum Constants
Version History
Revision 1, 2023-01-25 (Hans-Kristian Arntzen)
- Initial draft
See Also
PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT {}
- type EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION = 1
- pattern EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION :: forall a. Integral a => a
- type EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME = "VK_EXT_pipeline_library_group_handles"
- pattern EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
Documentation
data PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT Source #
VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT - Structure describing whether querying shader group handles from a pipeline library is supported by the implementation
Members
This structure describes the following features:
Description
If the PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT
structure
is included in the pNext
chain of the
PhysicalDeviceFeatures2
structure passed to
getPhysicalDeviceFeatures2
,
it is filled in to indicate whether each corresponding feature is
supported. PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT
can
also be used in the pNext
chain of
DeviceCreateInfo
to selectively enable these
features.
Valid Usage (Implicit)
See Also
VK_EXT_pipeline_library_group_handles,
Bool32
,
StructureType
Instances
pattern EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME = "VK_EXT_pipeline_library_group_handles" Source #
pattern EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #