mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-01 00:55:16 +00:00
6db51e9241
* Bump API patch number and header version number to 11 for this update. Github Issues: * Clarify the WSI extension language by switching from the fuzzier "ownership" language to more-consistent "acquire" language (public issue 117). * Clarify that memory barriers apply to all commands in the dependency chains in the flink:vkGetRenderAreaGranularity command and the <<synchronization-execution-and-memory-dependencies,Execution And Memory Dependencies>> section (public issue 132). * Clarify that a queue family is a set of queues in the <<fundamentals-execmodel,Execution Model>> section (public issue 166). * Removed requirement from valid usage language that VkPresentInfoKHR::waitSemaphoreCount must be greater than 0 (public issue 171). * Fix broken internal links, describe structures consistently, use consistent style for SPIR-V codewords, and tag normative terms that were missing asciidoc tags (public issue 183 and ancillary markup/normative language fixes). * Fix typos for slink:VkPhysicalDeviceLimits member names in slink:VkImageCreateInfo validity language (public issue 184). Internal Issues: * Document that the requested patch version number specified as part of slink:VkApplicationInfo::pname:apiVersion is ignored when creating an instance (internal issue 176). * Clarify handling of extension structs in the <<fundamentals-validusageValid Usage>> section (internal issue 254). * Update required slink:VkImageFormatProperties::pname:maxMipLevels to be limited to the maximum allowed mipmap pyramid size corresponding to the actual maximum supported size for the format (internal issue 256). * Modify the <<features-extentperimagetype,Allowed Extent Values Based On Image Type>> section so the allowed maximum extent is the maximum image dimension supported for each dimension of the type of texture being queried (internal issue 257). * Clarify in the <<spirvenv-module-validation,Validation Rules within a Module>> section that at least one of the code:LocalSize execution mode or code:WorkgroupSize decoration is required for each compute shader entry point in a shader module (internal issue 279). * Add validity rules for formats in flink:vkCmdClearColorImage and flink:vkCmdClearDepthStencilImage (internal issue 283). * Clarify that slink:VkImageFormatProperties::pname:maxResourceSize is an upper bound, and that it may not be possible to create an image anywhere near that size (internal issue 284). Other Commits: * Fix various minor markup errors reported by validation scripts. * Change copyright from Khronos Free Use License to Apache 2.0 license on relevant script/XML/header files. This does not affect the specification source copyright.
63 lines
1.9 KiB
Plaintext
63 lines
1.9 KiB
Plaintext
vkCmdDrawIndirect(3)
|
|
====================
|
|
|
|
Name
|
|
----
|
|
vkCmdDrawIndirect - Issue an indirect draw into a command buffer.
|
|
|
|
C Specification
|
|
---------------
|
|
|
|
include::../protos/vkCmdDrawIndirect.txt[]
|
|
|
|
Parameters
|
|
----------
|
|
|
|
pname:commandBuffer::
|
|
Specifies the command buffer into which to insert the draw command.
|
|
|
|
pname:buffer::
|
|
Specifies a handle of a buffer object containing parameters forming individual draw commands.
|
|
|
|
pname:offset::
|
|
Specifies offset, in bytes, within the buffer object represented by pname:buffer at which the drawing command parameters begin.
|
|
|
|
pname:drawCount::
|
|
Specifies the number of indirect draws to consume from the specified
|
|
memory object.
|
|
|
|
pname:stride::
|
|
Specifies the distance, in bytes, between the start of each indirect draw in the memory object. This parameter
|
|
may be zero to indicate that the array of indirect draw commands is tightly packed.
|
|
|
|
Description
|
|
-----------
|
|
|
|
fname:vkCmdDrawIndirect issues an indirect draw into a command bufer. Each
|
|
indirect command consumes pname:drawCount structures, stored at pname:offset
|
|
bytes into the buffer object whose handle is specified in pname:buffer.
|
|
The beginning of each structure is pname:stride bytes from the previous.
|
|
The data structures have the a layout in memory which may be represented by
|
|
the slink:VkDrawIndirectCommand structure, the definition of which is:
|
|
|
|
include::../structs/VkDrawIndirectCommand.txt[]
|
|
|
|
If pname:stride is zero, the array of slink:VkDrawIndirectCommand structures is
|
|
assumed to be tightly packed.
|
|
|
|
include::../validity/protos/vkCmdDrawIndirect.txt[]
|
|
|
|
Notes
|
|
-----
|
|
|
|
Although fname:vkCmdDrawIndirect does not generate errors or return a value, enabled
|
|
validation layers may detect possible error conditions or potentially undefined
|
|
behavior and report this via some other means.
|
|
|
|
See Also
|
|
--------
|
|
|
|
flink:vkCmdDraw, flink:vkCmdDrawIndexed, flink:vkCmdDrawIndexedIndirect
|
|
|
|
include::footer.txt[]
|