vulkan-2.0.0.1: Bindings to the Vulkan graphics API.

Safe HaskellNone
LanguageHaskell2010

Graphics.Vulkan.Extensions.VK_NV_clip_space_w_scaling

Synopsis

Documentation

pattern VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: VkDynamicState Source #

VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV specifies that the pViewportScalings state in VkPipelineViewportWScalingStateCreateInfoNV will be ignored and must be set dynamically with vkCmdSetViewportWScalingNV before any draws are performed with a pipeline state with VkPipelineViewportWScalingStateCreateInfo member viewportScalingEnable set to VK_TRUE

vkCmdSetViewportWScalingNV :: ("commandBuffer" ::: VkCommandBuffer) -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewportWScalings" ::: Ptr VkViewportWScalingNV) -> IO () Source #

vkCmdSetViewportWScalingNV - Set the viewport W scaling on a command buffer

Parameters

  • commandBuffer is the command buffer into which the command will be recorded.
  • firstViewport is the index of the first viewport whose parameters are updated by the command.
  • viewportCount is the number of viewports whose parameters are updated by the command.
  • pViewportWScalings is a pointer to an array of VkViewportWScalingNV structures specifying viewport parameters.

Description

The viewport parameters taken from element i of pViewportWScalings replace the current state for the viewport index firstViewport + i, for i in [0, viewportCount).

Valid Usage

  • The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV dynamic state enabled

Valid Usage (Implicit)

  • commandBuffer must be a valid VkCommandBuffer handle
  • pViewportWScalings must be a valid pointer to an array of viewportCount VkViewportWScalingNV structures
  • commandBuffer must be in the recording state
  • The VkCommandPool that commandBuffer was allocated from must support graphics operations
  • viewportCount must be greater than 0

Host Synchronization

  • Host access to commandBuffer must be externally synchronized
  • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized

Command Properties

'

Command Buffer Levels Render Pass Scope Supported Queue Types Pipeline Type
Primary Secondary Both Graphics

See Also

VkCommandBuffer, VkViewportWScalingNV

data VkPipelineViewportWScalingStateCreateInfoNV Source #

VkPipelineViewportWScalingStateCreateInfoNV - Structure specifying parameters of a newly created pipeline viewport W scaling state

Valid Usage (Implicit)

  • sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV
  • viewportCount must be greater than 0

See Also

VkBool32, VkStructureType, VkViewportWScalingNV

Constructors

VkPipelineViewportWScalingStateCreateInfoNV 

Fields

  • vkSType :: VkStructureType

    sType is the type of this structure.

  • vkPNext :: Ptr ()

    pNext is NULL or a pointer to an extension-specific structure.

  • vkViewportWScalingEnable :: VkBool32

    viewportWScalingEnable controls whether viewport W scaling is enabled.

  • vkViewportCount :: Word32

    viewportCount is the number of viewports used by W scaling, and must match the number of viewports in the pipeline if viewport W scaling is enabled.

  • vkPViewportWScalings :: Ptr VkViewportWScalingNV

    pViewportWScalings is a pointer to an array of VkViewportWScalingNV structures, which define the W scaling parameters for the corresponding viewport. If the viewport W scaling state is dynamic, this member is ignored.