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 VK_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, VK_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

  • VK_ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME
  • VK_ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSION
  • Extending VkPipelineCreateFlagBits2:
    • VK_PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM
  • Extending VkStructureType:
    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM

Issues

None.

Examples

None.

Version History

  • Revision 1, 2025-01-07 (Mathieu Robart)
    • Initial draft