Registered Extension Number

382

Revision

1

Extension and Version Dependencies

Contact

Other Extension Metadata

Last Modified Date

2020-02-25

IP Status

No known IP claims.

Contributors
  • Sharif Elcott, Google

  • Tobias Hector, AMD

  • Piers Daniell, NVIDIA

Description

This extension allows for selectively enabling and disabling writes to output color attachments via a pipeline dynamic state.

The intended use cases for this new state are mostly identical to those of colorWriteMask, such as selectively disabling writes to avoid feedback loops between subpasses or bandwidth savings for unused outputs. By making the state dynamic, one additional benefit is the ability to reduce pipeline counts and pipeline switching via shaders that write a superset of the desired data of which subsets are selected dynamically. The reason for a new state, colorWriteEnable, rather than making colorWriteMask dynamic is that, on many implementations, the more flexible per-component semantics of the colorWriteMask state cannot be made dynamic in a performant manner.

New Enum Constants

  • VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME

  • VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION

  • Extending VkDynamicState:

    • VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT

  • Extending VkStructureType:

    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT

    • VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT

Version History

  • Revision 1, 2020-01-25 (Sharif Elcott)

    • Internal revisions

See Also

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.

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0