vulkan
Safe HaskellNone
LanguageHaskell2010

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

New Enum Constants

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

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

VK_ARM_pipeline_opacity_micromap, Bool32, StructureType

Constructors

PhysicalDevicePipelineOpacityMicromapFeaturesARM 

Fields

  • pipelineOpacityMicromap :: Bool

    pipelineOpacityMicromap indicates if a pipeline can declare if it can be used with an acceleration structure referencing an opacity micromap, or not.

Instances

Instances details
Eq PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

Storable PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

Show PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

FromCStruct PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

ToCStruct PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

Zero PhysicalDevicePipelineOpacityMicromapFeaturesARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_pipeline_opacity_micromap

type ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME = "VK_ARM_pipeline_opacity_micromap" Source #