[{"data":1,"prerenderedAt":211},["ShallowReactive",2],{"oJHpaM0o7m":3},{"title":4,"description":5,"type":6,"xrefs":7,"body":8,"_type":210,"_id":4},"SubgroupLocalInvocationId","ID of the invocation within a subgroup","builtins",[],{"type":9,"children":10,"toc":206},"root",[11,24,45,78,140],{"type":12,"tag":13,"props":14,"children":16},"element","h6",{"id":15},"subgrouplocalinvocationid",[17],{"type":12,"tag":18,"props":19,"children":21},"code",{"className":20},[],[22],{"type":23,"value":4},"text",{"type":12,"tag":25,"props":26,"children":27},"p",{},[28,30,35,37,43],{"type":23,"value":29},"Decorating a variable with the ",{"type":12,"tag":18,"props":31,"children":33},{"className":32},[],[34],{"type":23,"value":4},{"type":23,"value":36}," builtin\ndecoration will make that variable contain the index of the invocation\nwithin the subgroup.\nThis variable is in range [0,",{"type":12,"tag":18,"props":38,"children":40},{"className":39},[],[41],{"type":23,"value":42},"SubgroupSize",{"type":23,"value":44},"-1].",{"type":12,"tag":25,"props":46,"children":47},{},[48,50,56,58,63,65,70,72,77],{"type":23,"value":49},"If ",{"type":12,"tag":18,"props":51,"children":53},{"className":52},[],[54],{"type":23,"value":55},"VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT",{"type":23,"value":57}," is\nspecified,\nfull subgroups are enabled for that pipeline stage.\nWhen full subgroups are enabled, subgroups ",{"type":12,"tag":59,"props":60,"children":62},"normative",{"type":61},"must",[],{"type":23,"value":64}," be launched with all\ninvocations active, i.e., there is an active invocation with\n",{"type":12,"tag":18,"props":66,"children":68},{"className":67},[],[69],{"type":23,"value":4},{"type":23,"value":71}," for each value in range\n[0,",{"type":12,"tag":18,"props":73,"children":75},{"className":74},[],[76],{"type":23,"value":42},{"type":23,"value":44},{"type":12,"tag":79,"props":80,"children":81},"note",{},[82,110,135],{"type":12,"tag":25,"props":83,"children":84},{},[85,87,92,94,100,102,108],{"type":23,"value":86},"There is no direct relationship between ",{"type":12,"tag":18,"props":88,"children":90},{"className":89},[],[91],{"type":23,"value":4},{"type":23,"value":93}," and\n",{"type":12,"tag":18,"props":95,"children":97},{"className":96},[],[98],{"type":23,"value":99},"LocalInvocationId",{"type":23,"value":101}," or ",{"type":12,"tag":18,"props":103,"children":105},{"className":104},[],[106],{"type":23,"value":107},"LocalInvocationIndex",{"type":23,"value":109},".\nIf the pipeline\nor shader object\nwas created with full subgroups applications can compute their own local\ninvocation index to serve the same purpose:",{"type":12,"tag":25,"props":111,"children":112},{},[113,115,120,122,128,130],{"type":23,"value":114},"index = ",{"type":12,"tag":18,"props":116,"children":118},{"className":117},[],[119],{"type":23,"value":4},{"type":23,"value":121}," + ",{"type":12,"tag":18,"props":123,"children":125},{"className":124},[],[126],{"type":23,"value":127},"SubgroupId",{"type":23,"value":129}," ×\n",{"type":12,"tag":18,"props":131,"children":133},{"className":132},[],[134],{"type":23,"value":42},{"type":12,"tag":25,"props":136,"children":137},{},[138],{"type":23,"value":139},"If full subgroups are not enabled, some subgroups may be dispatched with\ninactive invocations that do not correspond to a local workgroup invocation,\nmaking the value of index unreliable.",{"type":12,"tag":141,"props":142,"children":144},"validity-group",{"name":143},"Valid Usage",[145,187],{"type":12,"tag":146,"props":147,"children":149},"validity-field",{"name":148},"VUID-SubgroupLocalInvocationId-SubgroupLocalInvocationId-04380",[150],{"type":12,"tag":25,"props":151,"children":152},{},[153,155,160,162,165,167,173,174,180,181],{"type":23,"value":154},"The variable decorated with ",{"type":12,"tag":18,"props":156,"children":158},{"className":157},[],[159],{"type":23,"value":4},{"type":23,"value":161}," ",{"type":12,"tag":59,"props":163,"children":164},{"type":61},[],{"type":23,"value":166}," be\ndeclared using the ",{"type":12,"tag":18,"props":168,"children":170},{"className":169},[],[171],{"type":23,"value":172},"Input",{"type":23,"value":161},{"type":12,"tag":18,"props":175,"children":177},{"className":176},[],[178],{"type":23,"value":179},"Storage",{"type":23,"value":161},{"type":12,"tag":18,"props":182,"children":184},{"className":183},[],[185],{"type":23,"value":186},"Class",{"type":12,"tag":146,"props":188,"children":190},{"name":189},"VUID-SubgroupLocalInvocationId-SubgroupLocalInvocationId-04381",[191],{"type":12,"tag":25,"props":192,"children":193},{},[194,195,200,201,204],{"type":23,"value":154},{"type":12,"tag":18,"props":196,"children":198},{"className":197},[],[199],{"type":23,"value":4},{"type":23,"value":161},{"type":12,"tag":59,"props":202,"children":203},{"type":61},[],{"type":23,"value":205}," be\ndeclared as a scalar 32-bit integer value",{"title":207,"searchDepth":208,"depth":208,"links":209},"",2,[],"markdown",1729612427616]