[{"data":1,"prerenderedAt":471},["ShallowReactive",2],{"hpLwZccJkf":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":470,"_id":4},"vkCmdSetPrimitiveRestartEnable","Set primitive assembly restart state dynamically for a command buffer","VK_VERSION_1_3","protos",[],{"type":10,"children":11,"toc":468},"root",[12,29,210,247,296,318,416,462],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,27],{"type":18,"value":19},"text","To ",{"type":13,"tag":21,"props":22,"children":24},"a",{"href":23},"/chapters/pipelines#pipelines-dynamic-state",[25],{"type":18,"value":26},"dynamically control",{"type":18,"value":28}," whether a special vertex\nindex value is treated as restarting the assembly of primitives, call:",{"type":13,"tag":30,"props":31,"children":32},"code-group",{},[33,109],{"type":13,"tag":34,"props":35,"children":41},"pre",{"className":36,"code":37,"filename":38,"language":39,"meta":40,"style":40},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdSetPrimitiveRestartEnableEXT(\n VkCommandBuffer commandBuffer,\n VkBool32 primitiveRestartEnable);\n","C","c","",[42],{"type":13,"tag":43,"props":44,"children":45},"code",{"__ignoreMap":40},[46,70,90],{"type":13,"tag":47,"props":48,"children":51},"span",{"class":49,"line":50},"line",1,[52,58,64],{"type":13,"tag":47,"props":53,"children":55},{"style":54},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[56],{"type":18,"value":57},"void",{"type":13,"tag":47,"props":59,"children":61},{"style":60},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[62],{"type":18,"value":63}," vkCmdSetPrimitiveRestartEnableEXT",{"type":13,"tag":47,"props":65,"children":67},{"style":66},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[68],{"type":18,"value":69},"(\n",{"type":13,"tag":47,"props":71,"children":73},{"class":49,"line":72},2,[74,79,85],{"type":13,"tag":47,"props":75,"children":76},{"style":66},[77],{"type":18,"value":78}," VkCommandBuffer ",{"type":13,"tag":47,"props":80,"children":82},{"style":81},"--shiki-default:#953800;--shiki-dark:#FFA657",[83],{"type":18,"value":84},"commandBuffer",{"type":13,"tag":47,"props":86,"children":87},{"style":66},[88],{"type":18,"value":89},",\n",{"type":13,"tag":47,"props":91,"children":93},{"class":49,"line":92},3,[94,99,104],{"type":13,"tag":47,"props":95,"children":96},{"style":66},[97],{"type":18,"value":98}," VkBool32 ",{"type":13,"tag":47,"props":100,"children":101},{"style":81},[102],{"type":18,"value":103},"primitiveRestartEnable",{"type":13,"tag":47,"props":105,"children":106},{"style":66},[107],{"type":18,"value":108},");\n",{"type":13,"tag":34,"props":110,"children":115},{"className":111,"code":112,"filename":113,"language":114,"meta":40,"style":40},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_set_primitive_restart_enable_ext(\n command_buffer: vk::CommandBuffer,\n primitive_restart_enable: vk::Bool32,\n);\n","Rust","rs",[116],{"type":13,"tag":43,"props":117,"children":118},{"__ignoreMap":40},[119,141,173,202],{"type":13,"tag":47,"props":120,"children":121},{"class":49,"line":50},[122,127,132,137],{"type":13,"tag":47,"props":123,"children":124},{"style":54},[125],{"type":18,"value":126},"pub",{"type":13,"tag":47,"props":128,"children":129},{"style":54},[130],{"type":18,"value":131}," fn",{"type":13,"tag":47,"props":133,"children":134},{"style":60},[135],{"type":18,"value":136}," cmd_set_primitive_restart_enable_ext",{"type":13,"tag":47,"props":138,"children":139},{"style":66},[140],{"type":18,"value":69},{"type":13,"tag":47,"props":142,"children":143},{"class":49,"line":72},[144,149,154,159,164,169],{"type":13,"tag":47,"props":145,"children":146},{"style":66},[147],{"type":18,"value":148}," command_buffer",{"type":13,"tag":47,"props":150,"children":151},{"style":54},[152],{"type":18,"value":153},":",{"type":13,"tag":47,"props":155,"children":156},{"style":81},[157],{"type":18,"value":158}," vk",{"type":13,"tag":47,"props":160,"children":161},{"style":54},[162],{"type":18,"value":163},"::",{"type":13,"tag":47,"props":165,"children":166},{"style":81},[167],{"type":18,"value":168},"CommandBuffer",{"type":13,"tag":47,"props":170,"children":171},{"style":66},[172],{"type":18,"value":89},{"type":13,"tag":47,"props":174,"children":175},{"class":49,"line":92},[176,181,185,189,193,198],{"type":13,"tag":47,"props":177,"children":178},{"style":66},[179],{"type":18,"value":180}," primitive_restart_enable",{"type":13,"tag":47,"props":182,"children":183},{"style":54},[184],{"type":18,"value":153},{"type":13,"tag":47,"props":186,"children":187},{"style":81},[188],{"type":18,"value":158},{"type":13,"tag":47,"props":190,"children":191},{"style":54},[192],{"type":18,"value":163},{"type":13,"tag":47,"props":194,"children":195},{"style":81},[196],{"type":18,"value":197},"Bool32",{"type":13,"tag":47,"props":199,"children":200},{"style":66},[201],{"type":18,"value":89},{"type":13,"tag":47,"props":203,"children":205},{"class":49,"line":204},4,[206],{"type":13,"tag":47,"props":207,"children":208},{"style":66},[209],{"type":18,"value":108},{"type":13,"tag":211,"props":212,"children":213},"ul",{},[214,225],{"type":13,"tag":215,"props":216,"children":217},"li",{},[218,223],{"type":13,"tag":43,"props":219,"children":221},{"className":220},[],[222],{"type":18,"value":84},{"type":18,"value":224}," is the command buffer into which the command will be\nrecorded.",{"type":13,"tag":215,"props":226,"children":227},{},[228,233,235,241,242],{"type":13,"tag":43,"props":229,"children":231},{"className":230},[],[232],{"type":18,"value":103},{"type":18,"value":234}," controls whether a special vertex index\nvalue is treated as restarting the assembly of primitives.\nIt behaves in the same way as\n",{"type":13,"tag":43,"props":236,"children":238},{"className":237},[],[239],{"type":18,"value":240},"VkPipelineInputAssemblyStateCreateInfo",{"type":18,"value":163},{"type":13,"tag":43,"props":243,"children":245},{"className":244},[],[246],{"type":18,"value":103},{"type":13,"tag":14,"props":248,"children":249},{},[250,252,258,260,266,268,274,275,281,283,288,289,294],{"type":18,"value":251},"This command sets the primitive restart enable for subsequent drawing\ncommands\nwhen drawing using ",{"type":13,"tag":21,"props":253,"children":255},{"href":254},"/chapters/shaders#shaders-objects",[256],{"type":18,"value":257},"shader objects",{"type":18,"value":259},", or\nwhen the graphics pipeline is created with\n",{"type":13,"tag":43,"props":261,"children":263},{"className":262},[],[264],{"type":18,"value":265},"VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE",{"type":18,"value":267}," set in\n",{"type":13,"tag":21,"props":269,"children":271},{"href":270},"/man/VkPipelineDynamicStateCreateInfo",[272],{"type":18,"value":273},"VkPipelineDynamicStateCreateInfo",{"type":18,"value":163},{"type":13,"tag":43,"props":276,"children":278},{"className":277},[],[279],{"type":18,"value":280},"pDynamicStates",{"type":18,"value":282},".\nOtherwise, this state is specified by the\n",{"type":13,"tag":21,"props":284,"children":286},{"href":285},"/man/VkPipelineInputAssemblyStateCreateInfo",[287],{"type":18,"value":240},{"type":18,"value":163},{"type":13,"tag":43,"props":290,"children":292},{"className":291},[],[293],{"type":18,"value":103},{"type":18,"value":295},"\nvalue used to create the currently active pipeline.",{"type":13,"tag":297,"props":298,"children":300},"validity-group",{"name":299},"Valid Usage",[301],{"type":13,"tag":302,"props":303,"children":305},"validity-field",{"name":304},"VUID-vkCmdSetPrimitiveRestartEnable-None-08970",[306],{"type":13,"tag":14,"props":307,"children":308},{},[309,311,316],{"type":18,"value":310},"At least one of the following ",{"type":13,"tag":312,"props":313,"children":315},"normative",{"type":314},"must",[],{"type":18,"value":317}," be true:",{"type":13,"tag":297,"props":319,"children":321},{"name":320},"Valid Usage (Implicit)",[322,349,373,402],{"type":13,"tag":302,"props":323,"children":325},{"name":324},"VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-parameter",[326],{"type":13,"tag":14,"props":327,"children":328},{},[329,334,336,339,341,347],{"type":13,"tag":43,"props":330,"children":332},{"className":331},[],[333],{"type":18,"value":84},{"type":18,"value":335}," ",{"type":13,"tag":312,"props":337,"children":338},{"type":314},[],{"type":18,"value":340}," be a valid ",{"type":13,"tag":21,"props":342,"children":344},{"href":343},"/man/VkCommandBuffer",[345],{"type":18,"value":346},"VkCommandBuffer",{"type":18,"value":348}," handle",{"type":13,"tag":302,"props":350,"children":352},{"name":351},"VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-recording",[353],{"type":13,"tag":14,"props":354,"children":355},{},[356,361,362,365,367],{"type":13,"tag":43,"props":357,"children":359},{"className":358},[],[360],{"type":18,"value":84},{"type":18,"value":335},{"type":13,"tag":312,"props":363,"children":364},{"type":314},[],{"type":18,"value":366}," be in the ",{"type":13,"tag":21,"props":368,"children":370},{"href":369},"/chapters/commandbuffers#commandbuffers-lifecycle",[371],{"type":18,"value":372},"recording state",{"type":13,"tag":302,"props":374,"children":376},{"name":375},"VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-cmdpool",[377],{"type":13,"tag":14,"props":378,"children":379},{},[380,382,388,390,395,397,400],{"type":18,"value":381},"The ",{"type":13,"tag":43,"props":383,"children":385},{"className":384},[],[386],{"type":18,"value":387},"VkCommandPool",{"type":18,"value":389}," that ",{"type":13,"tag":43,"props":391,"children":393},{"className":392},[],[394],{"type":18,"value":84},{"type":18,"value":396}," was allocated from ",{"type":13,"tag":312,"props":398,"children":399},{"type":314},[],{"type":18,"value":401}," support graphics operations",{"type":13,"tag":302,"props":403,"children":405},{"name":404},"VUID-vkCmdSetPrimitiveRestartEnable-videocoding",[406],{"type":13,"tag":14,"props":407,"children":408},{},[409,411,414],{"type":18,"value":410},"This command ",{"type":13,"tag":312,"props":412,"children":413},{"type":314},[],{"type":18,"value":415}," only be called outside of a video coding scope",{"type":13,"tag":417,"props":418,"children":420},"validity-box",{"name":419},"Host Synchronization",[421],{"type":13,"tag":211,"props":422,"children":423},{},[424,440],{"type":13,"tag":215,"props":425,"children":426},{},[427,429,434,435,438],{"type":18,"value":428},"Host access to ",{"type":13,"tag":43,"props":430,"children":432},{"className":431},[],[433],{"type":18,"value":84},{"type":18,"value":335},{"type":13,"tag":312,"props":436,"children":437},{"type":314},[],{"type":18,"value":439}," be externally synchronized",{"type":13,"tag":215,"props":441,"children":442},{},[443,445,450,451,456,457,460],{"type":18,"value":444},"Host access to the ",{"type":13,"tag":43,"props":446,"children":448},{"className":447},[],[449],{"type":18,"value":387},{"type":18,"value":389},{"type":13,"tag":43,"props":452,"children":454},{"className":453},[],[455],{"type":18,"value":84},{"type":18,"value":396},{"type":13,"tag":312,"props":458,"children":459},{"type":314},[],{"type":18,"value":461}," be externally synchronized\n::",{"type":13,"tag":463,"props":464,"children":465},"style",{},[466],{"type":18,"value":467},"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":40,"searchDepth":72,"depth":72,"links":469},[],"markdown",1725732609583]