# VkImageCompressionControlEXT(3) Manual Page

## Name

VkImageCompressionControlEXT - Specify image compression properties

Loading… please wait.

## C Specification

If the `pNext` list of VkImageCreateInfo includes a `VkImageCompressionControlEXT` structure, then that structure describes compression controls for this image.

The `VkImageCompressionControlEXT` structure is defined as:

    // Provided by VK_EXT_image_compression_control
    typedef struct VkImageCompressionControlEXT {
        VkStructureType                         sType;
        const void*                             pNext;
        VkImageCompressionFlagsEXT              flags;
        uint32_t                                compressionControlPlaneCount;
        VkImageCompressionFixedRateFlagsEXT*    pFixedRateFlags;
    } VkImageCompressionControlEXT;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `flags` is a bitmask of VkImageCompressionFlagBitsEXT describing compression controls for the image.

- `compressionControlPlaneCount` is the number of entries in the `pFixedRateFlags` array.

- `pFixedRateFlags` is `NULL` or a pointer to an array of VkImageCompressionFixedRateFlagsEXT bitfields describing allowed fixed-rate compression rates of each image plane. It is ignored if `flags` does not include `VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT`.

## Description

If enabled, fixed-rate compression is done in an implementation-defined manner and may be applied at block granularity. In that case, a write to an individual texel may modify the value of other texels in the same block.

Valid Usage

- VUID-VkImageCompressionControlEXT-flags-06747
  `flags` must be one of `VK_IMAGE_COMPRESSION_DEFAULT_EXT`, `VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT`, `VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT`, or `VK_IMAGE_COMPRESSION_DISABLED_EXT`

- VUID-VkImageCompressionControlEXT-flags-06748
  If `flags` includes `VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT`, `pFixedRateFlags` must not be `NULL`

Valid Usage (Implicit)

- VUID-VkImageCompressionControlEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT`

Note | Some combinations of compression properties may not be supported. For example, some implementations may not support different fixed-rate compression rates per plane of a multi-planar format and will not be able to enable fixed-rate compression for any plane if the requested rates differ.

## See Also

VK_EXT_image_compression_control, VkImageCompressionFixedRateFlagsEXT, VkImageCompressionFlagsEXT, VkStructureType

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0