# VkPipelineViewportDepthClampControlCreateInfoEXT(3) Manual Page

## Name

VkPipelineViewportDepthClampControlCreateInfoEXT - Structure specifying parameters of a newly created pipeline depth clamp control state

Loading… please wait.

## C Specification

The `VkPipelineViewportDepthClampControlCreateInfoEXT` structure is defined as:

    // Provided by VK_EXT_depth_clamp_control
    typedef struct VkPipelineViewportDepthClampControlCreateInfoEXT {
        VkStructureType                sType;
        const void*                    pNext;
        VkDepthClampModeEXT            depthClampMode;
        const VkDepthClampRangeEXT*    pDepthClampRange;
    } VkPipelineViewportDepthClampControlCreateInfoEXT;

## Members

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

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

- `depthClampMode` determines how the clamp range is determined for each viewport.

- `pDepthClampRange` sets the depth clamp range for all viewports if `depthClampMode` is `VK_DEPTH_CLAMP_MODE_USER_DEFINED_RANGE_EXT`.

## Description

This structure extends `VkPipelineViewportStateCreateInfo` and specifies the depth clamp range used in the pipeline. If this structure is not provided in the next chain then `depthClampMode` defaults to `VK_DEPTH_CLAMP_MODE_VIEWPORT_RANGE_EXT`.

Valid Usage

- VUID-VkPipelineViewportDepthClampControlCreateInfoEXT-pDepthClampRange-09646
  If `depthClampMode` is `VK_DEPTH_CLAMP_MODE_USER_DEFINED_RANGE_EXT`, and the pipeline is not created with `VK_DYNAMIC_STATE_DEPTH_CLAMP_RANGE_EXT`, then `pDepthClampRange` must be a valid pointer to a valid `VkDepthClampRangeEXT` structure

Valid Usage (Implicit)

- VUID-VkPipelineViewportDepthClampControlCreateInfoEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT`

- VUID-VkPipelineViewportDepthClampControlCreateInfoEXT-depthClampMode-parameter
  `depthClampMode` must be a valid VkDepthClampModeEXT value

- VUID-VkPipelineViewportDepthClampControlCreateInfoEXT-pDepthClampRange-parameter
  If `pDepthClampRange` is not `NULL`, `pDepthClampRange` must be a valid pointer to a valid VkDepthClampRangeEXT structure

## See Also

VK_EXT_depth_clamp_control, VkDepthClampModeEXT, VkDepthClampRangeEXT, 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