Registered Extension Number

393

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

Contact

  • Mike Blumenkrantz zmike

Other Extension Metadata

Last Modified Date

2021-05-19

Interactions and External Dependencies
IP Status

No known IP claims.

Contributors
  • Mike Blumenkrantz, VALVE

  • Piers Daniell, NVIDIA

  • Faith Ekstrand, INTEL

  • Spencer Fricke, SAMSUNG

  • Ricardo Garcia, IGALIA

  • Jon Leech, KHRONOS

  • Stu Smith, AMD

Description

Processing multiple draw commands in sequence incurs measurable overhead within drivers due to repeated state checks and updates during dispatch. This extension enables passing the entire sequence of draws directly to the driver in order to avoid any such overhead, using an array of VkMultiDrawInfoEXT or VkMultiDrawIndexedInfoEXT structs with vkCmdDrawMultiEXT or vkCmdDrawMultiIndexedEXT, respectively. These functions could be used any time multiple draw commands are being recorded without any state changes between them in order to maximize performance.

New Commands

New Structures

New Enum Constants

  • VK_EXT_MULTI_DRAW_EXTENSION_NAME

  • VK_EXT_MULTI_DRAW_SPEC_VERSION

  • Extending VkStructureType:

    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT

    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT

New or Modified Built-In Variables

  • (modified)DrawIndex

Version History

  • Revision 1, 2021-01-20 (Mike Blumenkrantz)

    • Initial version

See Also

No cross-references are available

Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0