1// Copyright 2023-2024 The Khronos Group, Inc 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_EXT_nested_command_buffer.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2023-09-18 11*Contributors*:: 12 - Daniel Story, Nintendo 13 - Peter Kohaut, NVIDIA 14 - Shahbaz Youssefi, Google 15 - Slawomir Grajewski, Intel 16 - Stu Smith, AMD 17 18=== Description 19 20With core Vulkan it is not legal to call flink:vkCmdExecuteCommands when 21recording a secondary command buffer. 22This extension relaxes that restriction, allowing secondary command buffers 23to execute other secondary command buffers. 24 25include::{generated}/interfaces/VK_EXT_nested_command_buffer.adoc[] 26 27=== Issues 28 291) The Command Buffer Levels property for the Vulkan commands comes from the 30`cmdbufferlevel` attribute in `vk.xml` for the command, and it is currently 31not possible to modify this attribute based on whether an extension is 32enabled. 33For this extension we want the `cmdbufferlevel` attribute for 34vkCmdExecuteCommands to be `primary,secondary` when this extension is 35enabled and `primary` otherwise. 36 37*RESOLVED*: The `cmdbufferlevel` attribute for flink:vkCmdExecuteCommands 38has been changed to `primary,secondary` and a new VUID added to prohibit 39recording this command in a secondary command buffer unless this extension 40is enabled. 41 42=== Version History 43 44 * Revision 1, 2023-09-18 (Piers Daniell) 45 ** Internal revisions 46