[{"data":1,"prerenderedAt":624},["ShallowReactive",2],{"0VKSMFjhti":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":623,"_id":4},"vkCmdNextSubpass2","Transition to the next subpass of a render pass","VK_VERSION_1_2","protos",[],{"type":10,"children":11,"toc":621},"root",[12,20,275,328,354,390,569,615],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","To transition to the next subpass in the render pass instance after\nrecording the commands for a subpass, call:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,136],{"type":13,"tag":25,"props":26,"children":32},"pre",{"className":27,"code":28,"filename":29,"language":30,"meta":31,"style":31},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdNextSubpass2KHR(\n VkCommandBuffer commandBuffer,\n const VkSubpassBeginInfo* pSubpassBeginInfo,\n const VkSubpassEndInfo* pSubpassEndInfo);\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,61,81,109],{"type":13,"tag":38,"props":39,"children":42},"span",{"class":40,"line":41},"line",1,[43,49,55],{"type":13,"tag":38,"props":44,"children":46},{"style":45},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[47],{"type":18,"value":48},"void",{"type":13,"tag":38,"props":50,"children":52},{"style":51},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[53],{"type":18,"value":54}," vkCmdNextSubpass2KHR",{"type":13,"tag":38,"props":56,"children":58},{"style":57},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[59],{"type":18,"value":60},"(\n",{"type":13,"tag":38,"props":62,"children":64},{"class":40,"line":63},2,[65,70,76],{"type":13,"tag":38,"props":66,"children":67},{"style":57},[68],{"type":18,"value":69}," VkCommandBuffer ",{"type":13,"tag":38,"props":71,"children":73},{"style":72},"--shiki-default:#953800;--shiki-dark:#FFA657",[74],{"type":18,"value":75},"commandBuffer",{"type":13,"tag":38,"props":77,"children":78},{"style":57},[79],{"type":18,"value":80},",\n",{"type":13,"tag":38,"props":82,"children":84},{"class":40,"line":83},3,[85,90,95,100,105],{"type":13,"tag":38,"props":86,"children":87},{"style":45},[88],{"type":18,"value":89}," const",{"type":13,"tag":38,"props":91,"children":92},{"style":57},[93],{"type":18,"value":94}," VkSubpassBeginInfo",{"type":13,"tag":38,"props":96,"children":97},{"style":45},[98],{"type":18,"value":99},"*",{"type":13,"tag":38,"props":101,"children":102},{"style":72},[103],{"type":18,"value":104}," pSubpassBeginInfo",{"type":13,"tag":38,"props":106,"children":107},{"style":57},[108],{"type":18,"value":80},{"type":13,"tag":38,"props":110,"children":112},{"class":40,"line":111},4,[113,117,122,126,131],{"type":13,"tag":38,"props":114,"children":115},{"style":45},[116],{"type":18,"value":89},{"type":13,"tag":38,"props":118,"children":119},{"style":57},[120],{"type":18,"value":121}," VkSubpassEndInfo",{"type":13,"tag":38,"props":123,"children":124},{"style":45},[125],{"type":18,"value":99},{"type":13,"tag":38,"props":127,"children":128},{"style":72},[129],{"type":18,"value":130}," pSubpassEndInfo",{"type":13,"tag":38,"props":132,"children":133},{"style":57},[134],{"type":18,"value":135},");\n",{"type":13,"tag":25,"props":137,"children":142},{"className":138,"code":139,"filename":140,"language":141,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_next_subpass2_khr(\n command_buffer: vk::CommandBuffer,\n p_subpass_begin_info: *const vk::SubpassBeginInfo,\n p_subpass_end_info: *const vk::SubpassEndInfo,\n);\n","Rust","rs",[143],{"type":13,"tag":34,"props":144,"children":145},{"__ignoreMap":31},[146,168,200,234,267],{"type":13,"tag":38,"props":147,"children":148},{"class":40,"line":41},[149,154,159,164],{"type":13,"tag":38,"props":150,"children":151},{"style":45},[152],{"type":18,"value":153},"pub",{"type":13,"tag":38,"props":155,"children":156},{"style":45},[157],{"type":18,"value":158}," fn",{"type":13,"tag":38,"props":160,"children":161},{"style":51},[162],{"type":18,"value":163}," cmd_next_subpass2_khr",{"type":13,"tag":38,"props":165,"children":166},{"style":57},[167],{"type":18,"value":60},{"type":13,"tag":38,"props":169,"children":170},{"class":40,"line":63},[171,176,181,186,191,196],{"type":13,"tag":38,"props":172,"children":173},{"style":57},[174],{"type":18,"value":175}," command_buffer",{"type":13,"tag":38,"props":177,"children":178},{"style":45},[179],{"type":18,"value":180},":",{"type":13,"tag":38,"props":182,"children":183},{"style":72},[184],{"type":18,"value":185}," vk",{"type":13,"tag":38,"props":187,"children":188},{"style":45},[189],{"type":18,"value":190},"::",{"type":13,"tag":38,"props":192,"children":193},{"style":72},[194],{"type":18,"value":195},"CommandBuffer",{"type":13,"tag":38,"props":197,"children":198},{"style":57},[199],{"type":18,"value":80},{"type":13,"tag":38,"props":201,"children":202},{"class":40,"line":83},[203,208,212,217,221,225,230],{"type":13,"tag":38,"props":204,"children":205},{"style":57},[206],{"type":18,"value":207}," p_subpass_begin_info",{"type":13,"tag":38,"props":209,"children":210},{"style":45},[211],{"type":18,"value":180},{"type":13,"tag":38,"props":213,"children":214},{"style":45},[215],{"type":18,"value":216}," *const",{"type":13,"tag":38,"props":218,"children":219},{"style":72},[220],{"type":18,"value":185},{"type":13,"tag":38,"props":222,"children":223},{"style":45},[224],{"type":18,"value":190},{"type":13,"tag":38,"props":226,"children":227},{"style":72},[228],{"type":18,"value":229},"SubpassBeginInfo",{"type":13,"tag":38,"props":231,"children":232},{"style":57},[233],{"type":18,"value":80},{"type":13,"tag":38,"props":235,"children":236},{"class":40,"line":111},[237,242,246,250,254,258,263],{"type":13,"tag":38,"props":238,"children":239},{"style":57},[240],{"type":18,"value":241}," p_subpass_end_info",{"type":13,"tag":38,"props":243,"children":244},{"style":45},[245],{"type":18,"value":180},{"type":13,"tag":38,"props":247,"children":248},{"style":45},[249],{"type":18,"value":216},{"type":13,"tag":38,"props":251,"children":252},{"style":72},[253],{"type":18,"value":185},{"type":13,"tag":38,"props":255,"children":256},{"style":45},[257],{"type":18,"value":190},{"type":13,"tag":38,"props":259,"children":260},{"style":72},[261],{"type":18,"value":262},"SubpassEndInfo",{"type":13,"tag":38,"props":264,"children":265},{"style":57},[266],{"type":18,"value":80},{"type":13,"tag":38,"props":268,"children":270},{"class":40,"line":269},5,[271],{"type":13,"tag":38,"props":272,"children":273},{"style":57},[274],{"type":18,"value":135},{"type":13,"tag":276,"props":277,"children":278},"ul",{},[279,290,310],{"type":13,"tag":280,"props":281,"children":282},"li",{},[283,288],{"type":13,"tag":34,"props":284,"children":286},{"className":285},[],[287],{"type":18,"value":75},{"type":18,"value":289}," is the command buffer in which to record the\ncommand.",{"type":13,"tag":280,"props":291,"children":292},{},[293,299,301,308],{"type":13,"tag":34,"props":294,"children":296},{"className":295},[],[297],{"type":18,"value":298},"pSubpassBeginInfo",{"type":18,"value":300}," is a pointer to a ",{"type":13,"tag":302,"props":303,"children":305},"a",{"href":304},"/man/VkSubpassBeginInfo",[306],{"type":18,"value":307},"VkSubpassBeginInfo",{"type":18,"value":309},"\nstructure containing information about the subpass which is about to\nbegin rendering.",{"type":13,"tag":280,"props":311,"children":312},{},[313,319,320,326],{"type":13,"tag":34,"props":314,"children":316},{"className":315},[],[317],{"type":18,"value":318},"pSubpassEndInfo",{"type":18,"value":300},{"type":13,"tag":302,"props":321,"children":323},{"href":322},"/man/VkSubpassEndInfo",[324],{"type":18,"value":325},"VkSubpassEndInfo",{"type":18,"value":327}," structure\ncontaining information about how the previous subpass will be ended.",{"type":13,"tag":14,"props":329,"children":330},{},[331,336,338,344,346,352],{"type":13,"tag":34,"props":332,"children":334},{"className":333},[],[335],{"type":18,"value":4},{"type":18,"value":337}," is semantically identical to ",{"type":13,"tag":302,"props":339,"children":341},{"href":340},"/man/vkCmdNextSubpass",[342],{"type":18,"value":343},"vkCmdNextSubpass",{"type":18,"value":345},",\nexcept that it is extensible, and that ",{"type":13,"tag":34,"props":347,"children":349},{"className":348},[],[350],{"type":18,"value":351},"contents",{"type":18,"value":353}," is provided as part of\nan extensible structure instead of as a flat parameter.",{"type":13,"tag":355,"props":356,"children":358},"validity-group",{"name":357},"Valid Usage",[359,376],{"type":13,"tag":360,"props":361,"children":363},"validity-field",{"name":362},"VUID-vkCmdNextSubpass2-None-03102",[364],{"type":13,"tag":14,"props":365,"children":366},{},[367,369,374],{"type":18,"value":368},"The current subpass index ",{"type":13,"tag":370,"props":371,"children":373},"normative",{"type":372},"must",[],{"type":18,"value":375}," be less than the number of subpasses in\nthe render pass minus one",{"type":13,"tag":360,"props":377,"children":379},{"name":378},"VUID-vkCmdNextSubpass2-None-02350",[380],{"type":13,"tag":14,"props":381,"children":382},{},[383,385,388],{"type":18,"value":384},"This command ",{"type":13,"tag":370,"props":386,"children":387},{"type":372},[],{"type":18,"value":389}," not be recorded when transform feedback is active",{"type":13,"tag":355,"props":391,"children":393},{"name":392},"Valid Usage (Implicit)",[394,421,445,467,491,520,533,546],{"type":13,"tag":360,"props":395,"children":397},{"name":396},"VUID-vkCmdNextSubpass2-commandBuffer-parameter",[398],{"type":13,"tag":14,"props":399,"children":400},{},[401,406,408,411,413,419],{"type":13,"tag":34,"props":402,"children":404},{"className":403},[],[405],{"type":18,"value":75},{"type":18,"value":407}," ",{"type":13,"tag":370,"props":409,"children":410},{"type":372},[],{"type":18,"value":412}," be a valid ",{"type":13,"tag":302,"props":414,"children":416},{"href":415},"/man/VkCommandBuffer",[417],{"type":18,"value":418},"VkCommandBuffer",{"type":18,"value":420}," handle",{"type":13,"tag":360,"props":422,"children":424},{"name":423},"VUID-vkCmdNextSubpass2-pSubpassBeginInfo-parameter",[425],{"type":13,"tag":14,"props":426,"children":427},{},[428,433,434,437,439,443],{"type":13,"tag":34,"props":429,"children":431},{"className":430},[],[432],{"type":18,"value":298},{"type":18,"value":407},{"type":13,"tag":370,"props":435,"children":436},{"type":372},[],{"type":18,"value":438}," be a valid pointer to a valid ",{"type":13,"tag":302,"props":440,"children":441},{"href":304},[442],{"type":18,"value":307},{"type":18,"value":444}," structure",{"type":13,"tag":360,"props":446,"children":448},{"name":447},"VUID-vkCmdNextSubpass2-pSubpassEndInfo-parameter",[449],{"type":13,"tag":14,"props":450,"children":451},{},[452,457,458,461,462,466],{"type":13,"tag":34,"props":453,"children":455},{"className":454},[],[456],{"type":18,"value":318},{"type":18,"value":407},{"type":13,"tag":370,"props":459,"children":460},{"type":372},[],{"type":18,"value":438},{"type":13,"tag":302,"props":463,"children":464},{"href":322},[465],{"type":18,"value":325},{"type":18,"value":444},{"type":13,"tag":360,"props":468,"children":470},{"name":469},"VUID-vkCmdNextSubpass2-commandBuffer-recording",[471],{"type":13,"tag":14,"props":472,"children":473},{},[474,479,480,483,485],{"type":13,"tag":34,"props":475,"children":477},{"className":476},[],[478],{"type":18,"value":75},{"type":18,"value":407},{"type":13,"tag":370,"props":481,"children":482},{"type":372},[],{"type":18,"value":484}," be in the ",{"type":13,"tag":302,"props":486,"children":488},{"href":487},"/chapters/commandbuffers#commandbuffers-lifecycle",[489],{"type":18,"value":490},"recording state",{"type":13,"tag":360,"props":492,"children":494},{"name":493},"VUID-vkCmdNextSubpass2-commandBuffer-cmdpool",[495],{"type":13,"tag":14,"props":496,"children":497},{},[498,500,506,508,513,515,518],{"type":18,"value":499},"The ",{"type":13,"tag":34,"props":501,"children":503},{"className":502},[],[504],{"type":18,"value":505},"VkCommandPool",{"type":18,"value":507}," that ",{"type":13,"tag":34,"props":509,"children":511},{"className":510},[],[512],{"type":18,"value":75},{"type":18,"value":514}," was allocated from ",{"type":13,"tag":370,"props":516,"children":517},{"type":372},[],{"type":18,"value":519}," support graphics operations",{"type":13,"tag":360,"props":521,"children":523},{"name":522},"VUID-vkCmdNextSubpass2-renderpass",[524],{"type":13,"tag":14,"props":525,"children":526},{},[527,528,531],{"type":18,"value":384},{"type":13,"tag":370,"props":529,"children":530},{"type":372},[],{"type":18,"value":532}," only be called inside of a render pass instance",{"type":13,"tag":360,"props":534,"children":536},{"name":535},"VUID-vkCmdNextSubpass2-videocoding",[537],{"type":13,"tag":14,"props":538,"children":539},{},[540,541,544],{"type":18,"value":384},{"type":13,"tag":370,"props":542,"children":543},{"type":372},[],{"type":18,"value":545}," only be called outside of a video coding scope",{"type":13,"tag":360,"props":547,"children":549},{"name":548},"VUID-vkCmdNextSubpass2-bufferlevel",[550],{"type":13,"tag":14,"props":551,"children":552},{},[553,558,559,562,564],{"type":13,"tag":34,"props":554,"children":556},{"className":555},[],[557],{"type":18,"value":75},{"type":18,"value":407},{"type":13,"tag":370,"props":560,"children":561},{"type":372},[],{"type":18,"value":563}," be a primary ",{"type":13,"tag":34,"props":565,"children":567},{"className":566},[],[568],{"type":18,"value":418},{"type":13,"tag":570,"props":571,"children":573},"validity-box",{"name":572},"Host Synchronization",[574],{"type":13,"tag":276,"props":575,"children":576},{},[577,593],{"type":13,"tag":280,"props":578,"children":579},{},[580,582,587,588,591],{"type":18,"value":581},"Host access to ",{"type":13,"tag":34,"props":583,"children":585},{"className":584},[],[586],{"type":18,"value":75},{"type":18,"value":407},{"type":13,"tag":370,"props":589,"children":590},{"type":372},[],{"type":18,"value":592}," be externally synchronized",{"type":13,"tag":280,"props":594,"children":595},{},[596,598,603,604,609,610,613],{"type":18,"value":597},"Host access to the ",{"type":13,"tag":34,"props":599,"children":601},{"className":600},[],[602],{"type":18,"value":505},{"type":18,"value":507},{"type":13,"tag":34,"props":605,"children":607},{"className":606},[],[608],{"type":18,"value":75},{"type":18,"value":514},{"type":13,"tag":370,"props":611,"children":612},{"type":372},[],{"type":18,"value":614}," be externally synchronized\n::",{"type":13,"tag":616,"props":617,"children":618},"style",{},[619],{"type":18,"value":620},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":31,"searchDepth":63,"depth":63,"links":622},[],"markdown",1725732606701]