Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- cmdSetExclusiveScissorNV :: forall io. MonadIO io => CommandBuffer -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissors" ::: Vector Rect2D) -> io ()
- data PhysicalDeviceExclusiveScissorFeaturesNV = PhysicalDeviceExclusiveScissorFeaturesNV {}
- data PipelineViewportExclusiveScissorStateCreateInfoNV = PipelineViewportExclusiveScissorStateCreateInfoNV {}
- type NV_SCISSOR_EXCLUSIVE_SPEC_VERSION = 1
- pattern NV_SCISSOR_EXCLUSIVE_SPEC_VERSION :: forall a. Integral a => a
- type NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME = "VK_NV_scissor_exclusive"
- pattern NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
Documentation
cmdSetExclusiveScissorNV :: forall io. MonadIO io => CommandBuffer -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissors" ::: Vector Rect2D) -> io () Source #
vkCmdSetExclusiveScissorNV - Set the dynamic exclusive scissor rectangles on a command buffer
Parameters
commandBuffer
is the command buffer into which the command will be recorded.
firstExclusiveScissor
is the index of the first exclusive scissor rectangle whose state is updated by the command.exclusiveScissorCount
is the number of exclusive scissor rectangles updated by the command.pExclusiveScissors
is a pointer to an array ofRect2D
structures defining exclusive scissor rectangles.
Description
The scissor rectangles taken from element i of pExclusiveScissors
replace the current state for the scissor index firstExclusiveScissor
+ i, for i in [0, exclusiveScissorCount
).
This command sets the state for a given draw when the graphics pipeline
is created with
DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Valid Usage
- The exclusive scissor feature must be enabled
firstExclusiveScissor
must be less thanPhysicalDeviceLimits
::maxViewports
- The sum of
firstExclusiveScissor
andexclusiveScissorCount
must be between1
andPhysicalDeviceLimits
::maxViewports
, inclusive - If the
multiple viewports
feature is not enabled,
firstExclusiveScissor
must be0
- If the
multiple viewports
feature is not enabled,
exclusiveScissorCount
must be1
- The
x
andy
members ofoffset
in each member ofpExclusiveScissors
must be greater than or equal to0
- Evaluation of (
offset.x
+extent.width
) for each member ofpExclusiveScissors
must not cause a signed integer addition overflow - Evaluation of (
offset.y
+extent.height
) for each member ofpExclusiveScissors
must not cause a signed integer addition overflow
Valid Usage (Implicit)
commandBuffer
must be a validCommandBuffer
handle
pExclusiveScissors
must be a valid pointer to an array ofexclusiveScissorCount
Rect2D
structurescommandBuffer
must be in the recording state- The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations exclusiveScissorCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
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
data PhysicalDeviceExclusiveScissorFeaturesNV Source #
VkPhysicalDeviceExclusiveScissorFeaturesNV - Structure describing exclusive scissor features that can be supported by an implementation
Members
The members of the PhysicalDeviceExclusiveScissorFeaturesNV
structure
describe the following features:
Description
See Exclusive Scissor Test for more information.
If the PhysicalDeviceExclusiveScissorFeaturesNV
structure is included
in the pNext
chain of
PhysicalDeviceFeatures2
,
it is filled with values indicating whether the feature is supported.
PhysicalDeviceExclusiveScissorFeaturesNV
can also be included in the
pNext
chain of DeviceCreateInfo
to enable the
feature.
Valid Usage (Implicit)
See Also
PhysicalDeviceExclusiveScissorFeaturesNV | |
|
Instances
data PipelineViewportExclusiveScissorStateCreateInfoNV Source #
VkPipelineViewportExclusiveScissorStateCreateInfoNV - Structure specifying parameters controlling exclusive scissor testing
Description
If the
DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV
dynamic state is enabled for a pipeline, the pExclusiveScissors
member
is ignored.
When this structure is included in the pNext
chain of
GraphicsPipelineCreateInfo
, it defines
parameters of the exclusive scissor test. If this structure is not
included in the pNext
chain, it is equivalent to specifying this
structure with a exclusiveScissorCount
of 0
.
Valid Usage
- If the
multiple viewports
feature is not enabled,
exclusiveScissorCount
must be0
or1
exclusiveScissorCount
must be less than or equal toPhysicalDeviceLimits
::maxViewports
exclusiveScissorCount
must be0
or identical to theviewportCount
member ofPipelineViewportStateCreateInfo
- If no element of the
pDynamicStates
member ofpDynamicState
isDYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV
andexclusiveScissorCount
is not0
,pExclusiveScissors
must be a valid pointer to an array ofexclusiveScissorCount
Rect2D
structures
Valid Usage (Implicit)
- If
exclusiveScissorCount
is not0
, andpExclusiveScissors
is notNULL
,pExclusiveScissors
must be a valid pointer to an array ofexclusiveScissorCount
Rect2D
structures
See Also
PipelineViewportExclusiveScissorStateCreateInfoNV | |
|
Instances
type NV_SCISSOR_EXCLUSIVE_SPEC_VERSION = 1 Source #
pattern NV_SCISSOR_EXCLUSIVE_SPEC_VERSION :: forall a. Integral a => a Source #
type NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME = "VK_NV_scissor_exclusive" Source #
pattern NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #