| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap
Description
Name
VK_ARM_pipeline_opacity_micromap - device extension
VK_ARM_pipeline_opacity_micromap
- Name String
VK_ARM_pipeline_opacity_micromap
- Extension Type
- Device extension
- Registered Extension Number
- 597
- Revision
- 1
- Ratification Status
- Not ratified
- Extension and Version Dependencies
- VK_EXT_opacity_micromap
- Contact
- Extension Proposal
- VK_ARM_pipeline_opacity_micromap
Other Extension Metadata
- Last Modified Date
- 2025-01-07
- IP Status
- No known IP claims.
- Contributors
- Mathieu Robart, Arm
- Marius Bjorge, Arm
- Yaozhong Zhang, Arm
- Jan-Harald Fredriksen, Arm
Description
The Opacity Micromap extension VK_EXT_opacity_micromap supports the
new pipeline creation flag
PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT,
indicating that the ray tracing pipeline may be used with acceleration
structures referencing micromaps. This allows for possible
optimizations, knowing beforehand that opacity micromaps may be used
with the pipeline.
An equivalent flag does not exist for pipelines supporting Ray Query with opacity micromaps, such as graphics and compute. Consequently, it is currently not possible to optimize such pipelines for no-opacity, e.g. when opacity micromaps are supported by an application but not used by the pipeline. This may lead to performance degradation.
This extension adds a new flag,
PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM,
indicating that a pipeline will NOT be used with an acceleration
structure referencing an opacity micromap, therefore allowing possible
pipeline optimizations.
New Structures
Extending
PhysicalDeviceFeatures2,DeviceCreateInfo:
New Enum Constants
ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSIONExtending
PipelineCreateFlagBits2:Extending
StructureType:
Issues
None.
Examples
None.
Version History
Revision 1, 2025-01-07 (Mathieu Robart)
- Initial draft
See Also
No cross-references are available
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 PhysicalDevicePipelineOpacityMicromapFeaturesARM = PhysicalDevicePipelineOpacityMicromapFeaturesARM {}
- type ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSION = 1
- pattern ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSION :: Integral a => a
- type ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME = "VK_ARM_pipeline_opacity_micromap"
- pattern ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME :: (Eq a, IsString a) => a
Documentation
data PhysicalDevicePipelineOpacityMicromapFeaturesARM Source #
VkPhysicalDevicePipelineOpacityMicromapFeaturesARM - Structure describing features supported by VK_ARM_pipeline_opacity_micromap
Members
This structure describes the following features:
Description
If the PhysicalDevicePipelineOpacityMicromapFeaturesARM 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. If the application wishes to use a
Device with any features described by
PhysicalDevicePipelineOpacityMicromapFeaturesARM, it must add an
instance of the structure, with the desired feature members set to
TRUE, to the pNext chain of
DeviceCreateInfo when creating the
Device.
Valid Usage (Implicit)
See Also
Constructors
| PhysicalDevicePipelineOpacityMicromapFeaturesARM | |
Fields | |
Instances
pattern ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSION :: Integral a => a Source #
type ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME = "VK_ARM_pipeline_opacity_micromap" Source #
pattern ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME :: (Eq a, IsString a) => a Source #