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 Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstExclusiveScissor" ::: Word32) |
|
-> ("exclusiveScissors" ::: Vector Rect2D) |
|
-> io () |
vkCmdSetExclusiveScissorNV - Set the dynamic exclusive scissor rectangles on a command buffer
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 #