blob: 1e901edfd9de189a109c0ad55912529eba778c62 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
// Copyright 2019-2024 The Khronos Group Inc.
//
// SPDX-License-Identifier: CC-BY-4.0
// Common Valid Usage
// Common to all drawing commands that have a firstInstance parameter. For
// indirect commands, these VUs pertain to VkDrawIndirectCommand.
ifdef::VK_KHR_vertex_attribute_divisor[]
* [[VUID-{refpage}-pNext-09461]]
If the bound graphics pipeline state was created with
slink:VkPipelineVertexInputDivisorStateCreateInfoKHR in the pname:pNext
chain of slink:VkGraphicsPipelineCreateInfo::pname:pVertexInputState,
any member of
slink:VkPipelineVertexInputDivisorStateCreateInfoKHR::pname:pVertexBindingDivisors
has a value other than `1` in pname:divisor, and
slink:VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR::pname:supportsNonZeroFirstInstance
is ename:VK_FALSE, then pname:firstInstance must: be `0`
* [[VUID-{refpage}-None-09462]]
If
ifdef::VK_EXT_shader_object[]
<<shaders-objects, shader objects>> are used for drawing or
endif::VK_EXT_shader_object[]
the bound graphics pipeline state was created with the
ename:VK_DYNAMIC_STATE_VERTEX_INPUT_EXT dynamic state enabled, any
member of the pname:pVertexBindingDescriptions parameter to the
flink:vkCmdSetVertexInputEXT call that sets this dynamic state has a
value other than `1` in pname:divisor, and
slink:VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR::pname:supportsNonZeroFirstInstance
is ename:VK_FALSE, then pname:firstInstance must: be `0`
endif::VK_KHR_vertex_attribute_divisor[]
// Common Valid Usage
|