[{"data":1,"prerenderedAt":729},["ShallowReactive",2],{"TKSy7TKlnC":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":728,"_id":4},"vkUpdateIndirectExecutionSetShaderEXT","Update the contents of an indirect execution set","VK_EXT_device_generated_commands","protos",[],{"type":10,"children":11,"toc":726},"root",[12,20,321,384,564,696,720],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","Shader object elements in an Indirect Execution Set can be updated by\ncalling:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,146],{"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 vkUpdateIndirectExecutionSetShaderEXT(\n VkDevice device,\n VkIndirectExecutionSetEXT indirectExecutionSet,\n uint32_t executionSetWriteCount,\n const VkWriteIndirectExecutionSetShaderEXT* pExecutionSetWrites);\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,61,81,99,117],{"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}," vkUpdateIndirectExecutionSetShaderEXT",{"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}," VkDevice ",{"type":13,"tag":38,"props":71,"children":73},{"style":72},"--shiki-default:#953800;--shiki-dark:#FFA657",[74],{"type":18,"value":75},"device",{"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],{"type":13,"tag":38,"props":86,"children":87},{"style":57},[88],{"type":18,"value":89}," VkIndirectExecutionSetEXT ",{"type":13,"tag":38,"props":91,"children":92},{"style":72},[93],{"type":18,"value":94},"indirectExecutionSet",{"type":13,"tag":38,"props":96,"children":97},{"style":57},[98],{"type":18,"value":80},{"type":13,"tag":38,"props":100,"children":102},{"class":40,"line":101},4,[103,108,113],{"type":13,"tag":38,"props":104,"children":105},{"style":45},[106],{"type":18,"value":107}," uint32_t",{"type":13,"tag":38,"props":109,"children":110},{"style":72},[111],{"type":18,"value":112}," executionSetWriteCount",{"type":13,"tag":38,"props":114,"children":115},{"style":57},[116],{"type":18,"value":80},{"type":13,"tag":38,"props":118,"children":120},{"class":40,"line":119},5,[121,126,131,136,141],{"type":13,"tag":38,"props":122,"children":123},{"style":45},[124],{"type":18,"value":125}," const",{"type":13,"tag":38,"props":127,"children":128},{"style":57},[129],{"type":18,"value":130}," VkWriteIndirectExecutionSetShaderEXT",{"type":13,"tag":38,"props":132,"children":133},{"style":45},[134],{"type":18,"value":135},"*",{"type":13,"tag":38,"props":137,"children":138},{"style":72},[139],{"type":18,"value":140}," pExecutionSetWrites",{"type":13,"tag":38,"props":142,"children":143},{"style":57},[144],{"type":18,"value":145},");\n",{"type":13,"tag":25,"props":147,"children":152},{"className":148,"code":149,"filename":150,"language":151,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn update_indirect_execution_set_shader_ext(\n device: crate :: vk :: vk::Device,\n indirect_execution_set: vk::IndirectExecutionSetEXT,\n execution_set_write_count: u32,\n p_execution_set_writes: *const vk::WriteIndirectExecutionSetShaderEXT,\n);\n","Rust","rs",[153],{"type":13,"tag":34,"props":154,"children":155},{"__ignoreMap":31},[156,178,229,258,279,313],{"type":13,"tag":38,"props":157,"children":158},{"class":40,"line":41},[159,164,169,174],{"type":13,"tag":38,"props":160,"children":161},{"style":45},[162],{"type":18,"value":163},"pub",{"type":13,"tag":38,"props":165,"children":166},{"style":45},[167],{"type":18,"value":168}," fn",{"type":13,"tag":38,"props":170,"children":171},{"style":51},[172],{"type":18,"value":173}," update_indirect_execution_set_shader_ext",{"type":13,"tag":38,"props":175,"children":176},{"style":57},[177],{"type":18,"value":60},{"type":13,"tag":38,"props":179,"children":180},{"class":40,"line":63},[181,186,191,196,201,206,211,216,220,225],{"type":13,"tag":38,"props":182,"children":183},{"style":57},[184],{"type":18,"value":185}," device",{"type":13,"tag":38,"props":187,"children":188},{"style":45},[189],{"type":18,"value":190},":",{"type":13,"tag":38,"props":192,"children":193},{"style":45},[194],{"type":18,"value":195}," crate",{"type":13,"tag":38,"props":197,"children":198},{"style":45},[199],{"type":18,"value":200}," ::",{"type":13,"tag":38,"props":202,"children":203},{"style":57},[204],{"type":18,"value":205}," vk ",{"type":13,"tag":38,"props":207,"children":208},{"style":45},[209],{"type":18,"value":210},"::",{"type":13,"tag":38,"props":212,"children":213},{"style":72},[214],{"type":18,"value":215}," vk",{"type":13,"tag":38,"props":217,"children":218},{"style":45},[219],{"type":18,"value":210},{"type":13,"tag":38,"props":221,"children":222},{"style":72},[223],{"type":18,"value":224},"Device",{"type":13,"tag":38,"props":226,"children":227},{"style":57},[228],{"type":18,"value":80},{"type":13,"tag":38,"props":230,"children":231},{"class":40,"line":83},[232,237,241,245,249,254],{"type":13,"tag":38,"props":233,"children":234},{"style":57},[235],{"type":18,"value":236}," indirect_execution_set",{"type":13,"tag":38,"props":238,"children":239},{"style":45},[240],{"type":18,"value":190},{"type":13,"tag":38,"props":242,"children":243},{"style":72},[244],{"type":18,"value":215},{"type":13,"tag":38,"props":246,"children":247},{"style":45},[248],{"type":18,"value":210},{"type":13,"tag":38,"props":250,"children":251},{"style":72},[252],{"type":18,"value":253},"IndirectExecutionSetEXT",{"type":13,"tag":38,"props":255,"children":256},{"style":57},[257],{"type":18,"value":80},{"type":13,"tag":38,"props":259,"children":260},{"class":40,"line":101},[261,266,270,275],{"type":13,"tag":38,"props":262,"children":263},{"style":57},[264],{"type":18,"value":265}," execution_set_write_count",{"type":13,"tag":38,"props":267,"children":268},{"style":45},[269],{"type":18,"value":190},{"type":13,"tag":38,"props":271,"children":272},{"style":72},[273],{"type":18,"value":274}," u32",{"type":13,"tag":38,"props":276,"children":277},{"style":57},[278],{"type":18,"value":80},{"type":13,"tag":38,"props":280,"children":281},{"class":40,"line":119},[282,287,291,296,300,304,309],{"type":13,"tag":38,"props":283,"children":284},{"style":57},[285],{"type":18,"value":286}," p_execution_set_writes",{"type":13,"tag":38,"props":288,"children":289},{"style":45},[290],{"type":18,"value":190},{"type":13,"tag":38,"props":292,"children":293},{"style":45},[294],{"type":18,"value":295}," *const",{"type":13,"tag":38,"props":297,"children":298},{"style":72},[299],{"type":18,"value":215},{"type":13,"tag":38,"props":301,"children":302},{"style":45},[303],{"type":18,"value":210},{"type":13,"tag":38,"props":305,"children":306},{"style":72},[307],{"type":18,"value":308},"WriteIndirectExecutionSetShaderEXT",{"type":13,"tag":38,"props":310,"children":311},{"style":57},[312],{"type":18,"value":80},{"type":13,"tag":38,"props":314,"children":316},{"class":40,"line":315},6,[317],{"type":13,"tag":38,"props":318,"children":319},{"style":57},[320],{"type":18,"value":145},{"type":13,"tag":322,"props":323,"children":324},"ul",{},[325,336,346,365],{"type":13,"tag":326,"props":327,"children":328},"li",{},[329,334],{"type":13,"tag":34,"props":330,"children":332},{"className":331},[],[333],{"type":18,"value":75},{"type":18,"value":335}," is the logical device that owns the indirect execution set.",{"type":13,"tag":326,"props":337,"children":338},{},[339,344],{"type":13,"tag":34,"props":340,"children":342},{"className":341},[],[343],{"type":18,"value":94},{"type":18,"value":345}," is the indirect execution set being updated.",{"type":13,"tag":326,"props":347,"children":348},{},[349,355,357,363],{"type":13,"tag":34,"props":350,"children":352},{"className":351},[],[353],{"type":18,"value":354},"executionSetWriteCount",{"type":18,"value":356}," is the number of elements in the\n",{"type":13,"tag":34,"props":358,"children":360},{"className":359},[],[361],{"type":18,"value":362},"pExecutionSetWrites",{"type":18,"value":364}," array.",{"type":13,"tag":326,"props":366,"children":367},{},[368,373,375,382],{"type":13,"tag":34,"props":369,"children":371},{"className":370},[],[372],{"type":18,"value":362},{"type":18,"value":374}," is a pointer to an array of\n",{"type":13,"tag":376,"props":377,"children":379},"a",{"href":378},"/man/VkWriteIndirectExecutionSetShaderEXT",[380],{"type":18,"value":381},"VkWriteIndirectExecutionSetShaderEXT",{"type":18,"value":383}," structures describing the\nelements to update.",{"type":13,"tag":385,"props":386,"children":388},"validity-group",{"name":387},"Valid Usage",[389,417,445,459,487,509,528,546],{"type":13,"tag":390,"props":391,"children":393},"validity-field",{"name":392},"VUID-vkUpdateIndirectExecutionSetShaderEXT-indirectExecutionSet-11041",[394],{"type":13,"tag":14,"props":395,"children":396},{},[397,402,404,409,411],{"type":13,"tag":34,"props":398,"children":400},{"className":399},[],[401],{"type":18,"value":94},{"type":18,"value":403}," ",{"type":13,"tag":405,"props":406,"children":408},"normative",{"type":407},"must",[],{"type":18,"value":410}," have been created with type\n",{"type":13,"tag":34,"props":412,"children":414},{"className":413},[],[415],{"type":18,"value":416},"VK_INDIRECT_EXECUTION_SET_INFO_TYPE_SHADER_OBJECTS_EXT",{"type":13,"tag":390,"props":418,"children":420},{"name":419},"VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-11043",[421],{"type":13,"tag":14,"props":422,"children":423},{},[424,426,431,433,438,439],{"type":18,"value":425},"Each element in the ",{"type":13,"tag":34,"props":427,"children":429},{"className":428},[],[430],{"type":18,"value":362},{"type":18,"value":432}," array must have a unique\n",{"type":13,"tag":34,"props":434,"children":436},{"className":435},[],[437],{"type":18,"value":381},{"type":18,"value":210},{"type":13,"tag":34,"props":440,"children":442},{"className":441},[],[443],{"type":18,"value":444},"index",{"type":13,"tag":390,"props":446,"children":448},{"name":447},"VUID-vkUpdateIndirectExecutionSetShaderEXT-None-11044",[449],{"type":13,"tag":14,"props":450,"children":451},{},[452,454,457],{"type":18,"value":453},"Each member of the Indirect Execution Set referenced by the update\ncommand ",{"type":13,"tag":405,"props":455,"children":456},{"type":407},[],{"type":18,"value":458}," not be in use by the device",{"type":13,"tag":390,"props":460,"children":462},{"name":461},"VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-11140",[463],{"type":13,"tag":14,"props":464,"children":465},{},[466,468,473,474,477,479,485],{"type":18,"value":467},"The descriptor layout of each shader in ",{"type":13,"tag":34,"props":469,"children":471},{"className":470},[],[472],{"type":18,"value":362},{"type":18,"value":403},{"type":13,"tag":405,"props":475,"children":476},{"type":407},[],{"type":18,"value":478},"\nbe ",{"type":13,"tag":376,"props":480,"children":482},{"href":481},"/chapters/descriptorsets#descriptorsets-compatibility",[483],{"type":18,"value":484},"compatible",{"type":18,"value":486}," with the initial layout\ninfo used to create the Indirect Execution Set",{"type":13,"tag":390,"props":488,"children":490},{"name":489},"VUID-vkUpdateIndirectExecutionSetShaderEXT-None-11148",[491],{"type":13,"tag":14,"props":492,"children":493},{},[494,496,499,501,507],{"type":18,"value":495},"Each fragment shader element in the Indirect Execution Set ",{"type":13,"tag":405,"props":497,"children":498},{"type":407},[],{"type":18,"value":500}," have\nidentically defined ",{"type":13,"tag":376,"props":502,"children":504},{"href":503},"/chapters/interfaces#interfaces-fragmentoutput",[505],{"type":18,"value":506},"fragment outputs\ninterface",{"type":18,"value":508}," to the initial shader state used to create the Indirect\nExecution Set",{"type":13,"tag":390,"props":510,"children":512},{"name":511},"VUID-vkUpdateIndirectExecutionSetShaderEXT-FragDepth-11054",[513],{"type":13,"tag":14,"props":514,"children":515},{},[516,517,520,522],{"type":18,"value":495},{"type":13,"tag":405,"props":518,"children":519},{"type":407},[],{"type":18,"value":521}," match\nthe initial shader state used to create the Indirect Execution Set in\nits use of ",{"type":13,"tag":34,"props":523,"children":525},{"className":524},[],[526],{"type":18,"value":527},"FragDepth",{"type":13,"tag":390,"props":529,"children":531},{"name":530},"VUID-vkUpdateIndirectExecutionSetShaderEXT-SampleMask-11050",[532],{"type":13,"tag":14,"props":533,"children":534},{},[535,536,539,540],{"type":18,"value":495},{"type":13,"tag":405,"props":537,"children":538},{"type":407},[],{"type":18,"value":521},{"type":13,"tag":34,"props":541,"children":543},{"className":542},[],[544],{"type":18,"value":545},"SampleMask",{"type":13,"tag":390,"props":547,"children":549},{"name":548},"VUID-vkUpdateIndirectExecutionSetShaderEXT-StencilExportEXT-11003",[550],{"type":13,"tag":14,"props":551,"children":552},{},[553,554,557,558],{"type":18,"value":495},{"type":13,"tag":405,"props":555,"children":556},{"type":407},[],{"type":18,"value":521},{"type":13,"tag":34,"props":559,"children":561},{"className":560},[],[562],{"type":18,"value":563},"StencilExportEXT",{"type":13,"tag":385,"props":565,"children":567},{"name":566},"Valid Usage (Implicit)",[568,594,618,649,673],{"type":13,"tag":390,"props":569,"children":571},{"name":570},"VUID-vkUpdateIndirectExecutionSetShaderEXT-device-parameter",[572],{"type":13,"tag":14,"props":573,"children":574},{},[575,580,581,584,586,592],{"type":13,"tag":34,"props":576,"children":578},{"className":577},[],[579],{"type":18,"value":75},{"type":18,"value":403},{"type":13,"tag":405,"props":582,"children":583},{"type":407},[],{"type":18,"value":585}," be a valid ",{"type":13,"tag":376,"props":587,"children":589},{"href":588},"/man/VkDevice",[590],{"type":18,"value":591},"VkDevice",{"type":18,"value":593}," handle",{"type":13,"tag":390,"props":595,"children":597},{"name":596},"VUID-vkUpdateIndirectExecutionSetShaderEXT-indirectExecutionSet-parameter",[598],{"type":13,"tag":14,"props":599,"children":600},{},[601,606,607,610,611,617],{"type":13,"tag":34,"props":602,"children":604},{"className":603},[],[605],{"type":18,"value":94},{"type":18,"value":403},{"type":13,"tag":405,"props":608,"children":609},{"type":407},[],{"type":18,"value":585},{"type":13,"tag":376,"props":612,"children":614},{"href":613},"/man/VkIndirectExecutionSetEXT",[615],{"type":18,"value":616},"VkIndirectExecutionSetEXT",{"type":18,"value":593},{"type":13,"tag":390,"props":619,"children":621},{"name":620},"VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-parameter",[622],{"type":13,"tag":14,"props":623,"children":624},{},[625,630,631,634,636,641,643,647],{"type":13,"tag":34,"props":626,"children":628},{"className":627},[],[629],{"type":18,"value":362},{"type":18,"value":403},{"type":13,"tag":405,"props":632,"children":633},{"type":407},[],{"type":18,"value":635}," be a valid pointer to an array of ",{"type":13,"tag":34,"props":637,"children":639},{"className":638},[],[640],{"type":18,"value":354},{"type":18,"value":642}," valid ",{"type":13,"tag":376,"props":644,"children":645},{"href":378},[646],{"type":18,"value":381},{"type":18,"value":648}," structures",{"type":13,"tag":390,"props":650,"children":652},{"name":651},"VUID-vkUpdateIndirectExecutionSetShaderEXT-executionSetWriteCount-arraylength",[653],{"type":13,"tag":14,"props":654,"children":655},{},[656,661,662,665,667],{"type":13,"tag":34,"props":657,"children":659},{"className":658},[],[660],{"type":18,"value":354},{"type":18,"value":403},{"type":13,"tag":405,"props":663,"children":664},{"type":407},[],{"type":18,"value":666}," be greater than ",{"type":13,"tag":34,"props":668,"children":670},{"className":669},[],[671],{"type":18,"value":672},"0",{"type":13,"tag":390,"props":674,"children":676},{"name":675},"VUID-vkUpdateIndirectExecutionSetShaderEXT-indirectExecutionSet-parent",[677],{"type":13,"tag":14,"props":678,"children":679},{},[680,685,686,689,691],{"type":13,"tag":34,"props":681,"children":683},{"className":682},[],[684],{"type":18,"value":94},{"type":18,"value":403},{"type":13,"tag":405,"props":687,"children":688},{"type":407},[],{"type":18,"value":690}," have been created, allocated, or retrieved from ",{"type":13,"tag":34,"props":692,"children":694},{"className":693},[],[695],{"type":18,"value":75},{"type":13,"tag":697,"props":698,"children":700},"validity-box",{"name":699},"Host Synchronization",[701],{"type":13,"tag":322,"props":702,"children":703},{},[704],{"type":13,"tag":326,"props":705,"children":706},{},[707,709,714,715,718],{"type":18,"value":708},"Host access to ",{"type":13,"tag":34,"props":710,"children":712},{"className":711},[],[713],{"type":18,"value":94},{"type":18,"value":403},{"type":13,"tag":405,"props":716,"children":717},{"type":407},[],{"type":18,"value":719}," be externally synchronized\n::",{"type":13,"tag":721,"props":722,"children":723},"style",{},[724],{"type":18,"value":725},"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":727},[],"markdown",1729612521414]