[{"data":1,"prerenderedAt":344},["ShallowReactive",2],{"msGQjsovag":3},{"title":4,"description":5,"type":6,"xrefs":7,"body":8,"_type":343,"_id":4},"PrimitiveIndicesNV","Indices of primitives in a mesh shader","builtins",[],{"type":9,"children":10,"toc":339},"root",[11,24,61],{"type":12,"tag":13,"props":14,"children":16},"element","h6",{"id":15},"primitiveindicesnv",[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,45,51,53,59],{"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}," decoration will make\nthat variable contain the output array of vertex index values.\nDepending on the output primitive type declared using the execution mode,\nthe indices are split into groups of one (",{"type":12,"tag":18,"props":38,"children":40},{"className":39},[],[41],{"type":23,"value":42},"OutputPoints",{"type":23,"value":44},"), two\n(",{"type":12,"tag":18,"props":46,"children":48},{"className":47},[],[49],{"type":23,"value":50},"OutputLinesNV",{"type":23,"value":52},"), or three (",{"type":12,"tag":18,"props":54,"children":56},{"className":55},[],[57],{"type":23,"value":58},"OutputTrianglesNV",{"type":23,"value":60},") indices and each\ngroup generates a primitive.",{"type":12,"tag":62,"props":63,"children":65},"validity-group",{"name":64},"Valid Usage",[66,111,151,170,208,254,296],{"type":12,"tag":67,"props":68,"children":70},"validity-field",{"name":69},"VUID-PrimitiveIndicesNV-PrimitiveIndicesNV-04338",[71],{"type":12,"tag":25,"props":72,"children":73},{},[74,76,81,83,88,90,96,98,104,105],{"type":23,"value":75},"The ",{"type":12,"tag":18,"props":77,"children":79},{"className":78},[],[80],{"type":23,"value":4},{"type":23,"value":82}," decoration ",{"type":12,"tag":84,"props":85,"children":87},"normative",{"type":86},"must",[],{"type":23,"value":89}," be used only within the\n",{"type":12,"tag":18,"props":91,"children":93},{"className":92},[],[94],{"type":23,"value":95},"MeshNV",{"type":23,"value":97}," ",{"type":12,"tag":18,"props":99,"children":101},{"className":100},[],[102],{"type":23,"value":103},"Execution",{"type":23,"value":97},{"type":12,"tag":18,"props":106,"children":108},{"className":107},[],[109],{"type":23,"value":110},"Model",{"type":12,"tag":67,"props":112,"children":114},{"name":113},"VUID-PrimitiveIndicesNV-PrimitiveIndicesNV-04339",[115],{"type":12,"tag":25,"props":116,"children":117},{},[118,120,125,126,129,131,137,138,144,145],{"type":23,"value":119},"The variable decorated with ",{"type":12,"tag":18,"props":121,"children":123},{"className":122},[],[124],{"type":23,"value":4},{"type":23,"value":97},{"type":12,"tag":84,"props":127,"children":128},{"type":86},[],{"type":23,"value":130}," be declared\nusing the ",{"type":12,"tag":18,"props":132,"children":134},{"className":133},[],[135],{"type":23,"value":136},"Output",{"type":23,"value":97},{"type":12,"tag":18,"props":139,"children":141},{"className":140},[],[142],{"type":23,"value":143},"Storage",{"type":23,"value":97},{"type":12,"tag":18,"props":146,"children":148},{"className":147},[],[149],{"type":23,"value":150},"Class",{"type":12,"tag":67,"props":152,"children":154},{"name":153},"VUID-PrimitiveIndicesNV-PrimitiveIndicesNV-04340",[155],{"type":12,"tag":25,"props":156,"children":157},{},[158,159,164,165,168],{"type":23,"value":119},{"type":12,"tag":18,"props":160,"children":162},{"className":161},[],[163],{"type":23,"value":4},{"type":23,"value":97},{"type":12,"tag":84,"props":166,"children":167},{"type":86},[],{"type":23,"value":169}," be declared as\nan array of scalar 32-bit integer values",{"type":12,"tag":67,"props":171,"children":173},{"name":172},"VUID-PrimitiveIndicesNV-PrimitiveIndicesNV-04341",[174],{"type":12,"tag":25,"props":175,"children":176},{},[177,179,184,187,189,195,196,201,202],{"type":23,"value":178},"All index values of the array decorated with ",{"type":12,"tag":18,"props":180,"children":182},{"className":181},[],[183],{"type":23,"value":4},{"type":12,"tag":84,"props":185,"children":186},{"type":86},[],{"type":23,"value":188}," be in the range [0, N-1], where N is the value\nspecified by the ",{"type":12,"tag":18,"props":190,"children":192},{"className":191},[],[193],{"type":23,"value":194},"OutputVertices",{"type":23,"value":97},{"type":12,"tag":18,"props":197,"children":199},{"className":198},[],[200],{"type":23,"value":103},{"type":23,"value":97},{"type":12,"tag":18,"props":203,"children":205},{"className":204},[],[206],{"type":23,"value":207},"Mode",{"type":12,"tag":67,"props":209,"children":211},{"name":210},"VUID-PrimitiveIndicesNV-OutputPoints-04342",[212],{"type":12,"tag":25,"props":213,"children":214},{},[215,217,222,223,228,230,235,237,242,243,246,248],{"type":23,"value":216},"If the ",{"type":12,"tag":18,"props":218,"children":220},{"className":219},[],[221],{"type":23,"value":103},{"type":23,"value":97},{"type":12,"tag":18,"props":224,"children":226},{"className":225},[],[227],{"type":23,"value":207},{"type":23,"value":229}," is ",{"type":12,"tag":18,"props":231,"children":233},{"className":232},[],[234],{"type":23,"value":42},{"type":23,"value":236},", then the array decorated\nwith ",{"type":12,"tag":18,"props":238,"children":240},{"className":239},[],[241],{"type":23,"value":4},{"type":23,"value":97},{"type":12,"tag":84,"props":244,"children":245},{"type":86},[],{"type":23,"value":247}," be the size of the value specified by\n",{"type":12,"tag":18,"props":249,"children":251},{"className":250},[],[252],{"type":23,"value":253},"OutputPrimitivesNV",{"type":12,"tag":67,"props":255,"children":257},{"name":256},"VUID-PrimitiveIndicesNV-OutputLinesNV-04343",[258],{"type":12,"tag":25,"props":259,"children":260},{},[261,262,267,268,273,274,279,280,285,286,289,291],{"type":23,"value":216},{"type":12,"tag":18,"props":263,"children":265},{"className":264},[],[266],{"type":23,"value":103},{"type":23,"value":97},{"type":12,"tag":18,"props":269,"children":271},{"className":270},[],[272],{"type":23,"value":207},{"type":23,"value":229},{"type":12,"tag":18,"props":275,"children":277},{"className":276},[],[278],{"type":23,"value":50},{"type":23,"value":236},{"type":12,"tag":18,"props":281,"children":283},{"className":282},[],[284],{"type":23,"value":4},{"type":23,"value":97},{"type":12,"tag":84,"props":287,"children":288},{"type":86},[],{"type":23,"value":290}," be the size of two times the value\nspecified by ",{"type":12,"tag":18,"props":292,"children":294},{"className":293},[],[295],{"type":23,"value":253},{"type":12,"tag":67,"props":297,"children":299},{"name":298},"VUID-PrimitiveIndicesNV-OutputTrianglesNV-04344",[300],{"type":12,"tag":25,"props":301,"children":302},{},[303,304,309,310,315,316,321,323,328,329,332,334],{"type":23,"value":216},{"type":12,"tag":18,"props":305,"children":307},{"className":306},[],[308],{"type":23,"value":103},{"type":23,"value":97},{"type":12,"tag":18,"props":311,"children":313},{"className":312},[],[314],{"type":23,"value":207},{"type":23,"value":229},{"type":12,"tag":18,"props":317,"children":319},{"className":318},[],[320],{"type":23,"value":58},{"type":23,"value":322},", then the array\ndecorated with ",{"type":12,"tag":18,"props":324,"children":326},{"className":325},[],[327],{"type":23,"value":4},{"type":23,"value":97},{"type":12,"tag":84,"props":330,"children":331},{"type":86},[],{"type":23,"value":333}," be the size of three times\nthe value specified by ",{"type":12,"tag":18,"props":335,"children":337},{"className":336},[],[338],{"type":23,"value":253},{"title":340,"searchDepth":341,"depth":341,"links":342},"",2,[],"markdown",1725732533304]