# VK_EXT_border_color_swizzle(3) Manual Page

## Name

VK_EXT_border_color_swizzle - device extension

Loading… please wait.

## Registered Extension Number

412

## Revision

1

## Ratification Status

Ratified

## Extension and Version Dependencies

VK_EXT_custom_border_color

## Special Uses

- OpenGL / ES support

- D3D support

## Contact

- Piers Daniell [GitHub]pdaniell-nv

## Other Extension Metadata

Last Modified Date

  2021-10-12

IP Status

  No known IP claims.

Contributors

  - Graeme Leese, Broadcom

  - Jan-Harald Fredriksen, Arm

  - Ricardo Garcia, Igalia

  - Shahbaz Youssefi, Google

  - Stu Smith, AMD

## Description

After the publication of VK_EXT_custom_border_color, it was discovered that some implementations had undefined behavior when combining a sampler that uses a custom border color with image views whose component mapping is not the identity mapping.

Since VK_EXT_custom_border_color has already shipped, this new extension VK_EXT_border_color_swizzle was created to define the interaction between custom border colors and non-identity image view swizzles, and provide a work-around for implementations that must pre-swizzle the sampler border color to match the image view component mapping it is combined with.

This extension also defines the behavior between samplers with an opaque black border color and image views with a non-identity component swizzle, which was previously left undefined.

## New Structures

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceBorderColorSwizzleFeaturesEXT

- Extending VkSamplerCreateInfo:

  - VkSamplerBorderColorComponentMappingCreateInfoEXT

## New Enum Constants

- `VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME`

- `VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION`

- Extending VkStructureType:

  - `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT`

  - `VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT`

## Issues

None.

## Version History

- Revision 1, 2021-10-12 (Piers Daniell)

  - Internal revisions.

## 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.

## Copyright

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0