1// Copyright 2021 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_EXT_multi_draw.txt[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2021-05-19 11*IP Status*:: 12 No known IP claims. 13*Contributors*:: 14 - Mike Blumenkrantz, VALVE 15 - Piers Daniell, NVIDIA 16 - Jason Ekstrand, INTEL 17 - Spencer Fricke, SAMSUNG 18 - Ricardo Garcia, IGALIA 19 - Jon Leech, KHRONOS 20 - Stu Smith, AMD 21 22=== Description 23 24Processing multiple draw commands in sequence incurs measurable overhead 25within drivers due to repeated state checks and updates during dispatch. 26This extension enables passing the entire sequence of draws directly to the 27driver in order to avoid any such overhead, using an array of 28slink:VkMultiDrawInfoEXT or slink:VkMultiDrawIndexedInfoEXT structs with 29fname:vkCmdDrawMultiEXT or fname:vkCmdDrawMultiIndexedEXT, respectively. 30These functions could be used any time multiple draw commands are being 31recorded without any state changes between them in order to maximize 32performance. 33 34include::{generated}/interfaces/VK_EXT_multi_draw.txt[] 35 36=== New or Modified Built-In Variables 37 38 * (modified)code:DrawIndex 39 40=== Version History 41 42 * Revision 1, 2021-01-20 (Mike Blumenkrantz) 43 - Initial version 44