[{"data":1,"prerenderedAt":1659},["ShallowReactive",2],{"UaDnFxrqXG":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":1658,"_id":4},"VkIndirectCommandsLayoutCreateInfoNV","Structure specifying the parameters of a newly created indirect commands layout object","VK_NV_device_generated_commands","structs",[],{"type":10,"children":11,"toc":1656},"root",[12,28,442,584,589,895,923,963,1448,1650],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26],{"type":18,"value":19},"text","The ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," structure is defined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,190],{"type":13,"tag":33,"props":34,"children":40},"pre",{"className":35,"code":36,"filename":37,"language":38,"meta":39,"style":39},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkIndirectCommandsLayoutCreateInfoNV {\n VkStructureType sType;\n const void* pNext;\n VkIndirectCommandsLayoutUsageFlagsNV flags;\n VkPipelineBindPoint pipelineBindPoint;\n uint32_t tokenCount;\n const VkIndirectCommandsLayoutTokenNV* pTokens;\n uint32_t streamCount;\n const uint32_t* pStreamStrides;\n} VkIndirectCommandsLayoutCreateInfoNV;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,95,104,113,127,150,163,181],{"type":13,"tag":45,"props":46,"children":49},"span",{"class":47,"line":48},"line",1,[50,56,61],{"type":13,"tag":45,"props":51,"children":53},{"style":52},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[54],{"type":18,"value":55},"typedef",{"type":13,"tag":45,"props":57,"children":58},{"style":52},[59],{"type":18,"value":60}," struct",{"type":13,"tag":45,"props":62,"children":64},{"style":63},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[65],{"type":18,"value":66}," VkIndirectCommandsLayoutCreateInfoNV {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71],{"type":13,"tag":45,"props":72,"children":73},{"style":63},[74],{"type":18,"value":75}," VkStructureType sType;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80,85,90],{"type":13,"tag":45,"props":81,"children":82},{"style":52},[83],{"type":18,"value":84}," const",{"type":13,"tag":45,"props":86,"children":87},{"style":52},[88],{"type":18,"value":89}," void*",{"type":13,"tag":45,"props":91,"children":92},{"style":63},[93],{"type":18,"value":94}," pNext;\n",{"type":13,"tag":45,"props":96,"children":98},{"class":47,"line":97},4,[99],{"type":13,"tag":45,"props":100,"children":101},{"style":63},[102],{"type":18,"value":103}," VkIndirectCommandsLayoutUsageFlagsNV flags;\n",{"type":13,"tag":45,"props":105,"children":107},{"class":47,"line":106},5,[108],{"type":13,"tag":45,"props":109,"children":110},{"style":63},[111],{"type":18,"value":112}," VkPipelineBindPoint pipelineBindPoint;\n",{"type":13,"tag":45,"props":114,"children":116},{"class":47,"line":115},6,[117,122],{"type":13,"tag":45,"props":118,"children":119},{"style":52},[120],{"type":18,"value":121}," uint32_t",{"type":13,"tag":45,"props":123,"children":124},{"style":63},[125],{"type":18,"value":126}," tokenCount;\n",{"type":13,"tag":45,"props":128,"children":130},{"class":47,"line":129},7,[131,135,140,145],{"type":13,"tag":45,"props":132,"children":133},{"style":52},[134],{"type":18,"value":84},{"type":13,"tag":45,"props":136,"children":137},{"style":63},[138],{"type":18,"value":139}," VkIndirectCommandsLayoutTokenNV",{"type":13,"tag":45,"props":141,"children":142},{"style":52},[143],{"type":18,"value":144},"*",{"type":13,"tag":45,"props":146,"children":147},{"style":63},[148],{"type":18,"value":149}," pTokens;\n",{"type":13,"tag":45,"props":151,"children":153},{"class":47,"line":152},8,[154,158],{"type":13,"tag":45,"props":155,"children":156},{"style":52},[157],{"type":18,"value":121},{"type":13,"tag":45,"props":159,"children":160},{"style":63},[161],{"type":18,"value":162}," streamCount;\n",{"type":13,"tag":45,"props":164,"children":166},{"class":47,"line":165},9,[167,171,176],{"type":13,"tag":45,"props":168,"children":169},{"style":52},[170],{"type":18,"value":84},{"type":13,"tag":45,"props":172,"children":173},{"style":52},[174],{"type":18,"value":175}," uint32_t*",{"type":13,"tag":45,"props":177,"children":178},{"style":63},[179],{"type":18,"value":180}," pStreamStrides;\n",{"type":13,"tag":45,"props":182,"children":184},{"class":47,"line":183},10,[185],{"type":13,"tag":45,"props":186,"children":187},{"style":63},[188],{"type":18,"value":189},"} VkIndirectCommandsLayoutCreateInfoNV;\n",{"type":13,"tag":33,"props":191,"children":196},{"className":192,"code":193,"filename":194,"language":195,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct IndirectCommandsLayoutCreateInfoNV {\n s_type: vk::StructureType,\n p_next: *const c_void,\n flags: vk::IndirectCommandsLayoutUsageFlagsNV,\n pipeline_bind_point: vk::PipelineBindPoint,\n token_count: u32,\n p_tokens: *const vk::IndirectCommandsLayoutTokenNV,\n stream_count: u32,\n p_stream_strides: *const u32,\n}\n","Rust","rs",[197],{"type":13,"tag":21,"props":198,"children":199},{"__ignoreMap":39},[200,223,256,278,307,336,357,390,410,434],{"type":13,"tag":45,"props":201,"children":202},{"class":47,"line":48},[203,208,212,218],{"type":13,"tag":45,"props":204,"children":205},{"style":52},[206],{"type":18,"value":207},"pub",{"type":13,"tag":45,"props":209,"children":210},{"style":52},[211],{"type":18,"value":60},{"type":13,"tag":45,"props":213,"children":215},{"style":214},"--shiki-default:#953800;--shiki-dark:#FFA657",[216],{"type":18,"value":217}," IndirectCommandsLayoutCreateInfoNV",{"type":13,"tag":45,"props":219,"children":220},{"style":63},[221],{"type":18,"value":222}," {\n",{"type":13,"tag":45,"props":224,"children":225},{"class":47,"line":69},[226,231,236,241,246,251],{"type":13,"tag":45,"props":227,"children":228},{"style":63},[229],{"type":18,"value":230}," s_type",{"type":13,"tag":45,"props":232,"children":233},{"style":52},[234],{"type":18,"value":235},":",{"type":13,"tag":45,"props":237,"children":238},{"style":214},[239],{"type":18,"value":240}," vk",{"type":13,"tag":45,"props":242,"children":243},{"style":52},[244],{"type":18,"value":245},"::",{"type":13,"tag":45,"props":247,"children":248},{"style":214},[249],{"type":18,"value":250},"StructureType",{"type":13,"tag":45,"props":252,"children":253},{"style":63},[254],{"type":18,"value":255},",\n",{"type":13,"tag":45,"props":257,"children":258},{"class":47,"line":78},[259,264,268,273],{"type":13,"tag":45,"props":260,"children":261},{"style":63},[262],{"type":18,"value":263}," p_next",{"type":13,"tag":45,"props":265,"children":266},{"style":52},[267],{"type":18,"value":235},{"type":13,"tag":45,"props":269,"children":270},{"style":52},[271],{"type":18,"value":272}," *const",{"type":13,"tag":45,"props":274,"children":275},{"style":63},[276],{"type":18,"value":277}," c_void,\n",{"type":13,"tag":45,"props":279,"children":280},{"class":47,"line":97},[281,286,290,294,298,303],{"type":13,"tag":45,"props":282,"children":283},{"style":63},[284],{"type":18,"value":285}," flags",{"type":13,"tag":45,"props":287,"children":288},{"style":52},[289],{"type":18,"value":235},{"type":13,"tag":45,"props":291,"children":292},{"style":214},[293],{"type":18,"value":240},{"type":13,"tag":45,"props":295,"children":296},{"style":52},[297],{"type":18,"value":245},{"type":13,"tag":45,"props":299,"children":300},{"style":214},[301],{"type":18,"value":302},"IndirectCommandsLayoutUsageFlagsNV",{"type":13,"tag":45,"props":304,"children":305},{"style":63},[306],{"type":18,"value":255},{"type":13,"tag":45,"props":308,"children":309},{"class":47,"line":106},[310,315,319,323,327,332],{"type":13,"tag":45,"props":311,"children":312},{"style":63},[313],{"type":18,"value":314}," pipeline_bind_point",{"type":13,"tag":45,"props":316,"children":317},{"style":52},[318],{"type":18,"value":235},{"type":13,"tag":45,"props":320,"children":321},{"style":214},[322],{"type":18,"value":240},{"type":13,"tag":45,"props":324,"children":325},{"style":52},[326],{"type":18,"value":245},{"type":13,"tag":45,"props":328,"children":329},{"style":214},[330],{"type":18,"value":331},"PipelineBindPoint",{"type":13,"tag":45,"props":333,"children":334},{"style":63},[335],{"type":18,"value":255},{"type":13,"tag":45,"props":337,"children":338},{"class":47,"line":115},[339,344,348,353],{"type":13,"tag":45,"props":340,"children":341},{"style":63},[342],{"type":18,"value":343}," token_count",{"type":13,"tag":45,"props":345,"children":346},{"style":52},[347],{"type":18,"value":235},{"type":13,"tag":45,"props":349,"children":350},{"style":214},[351],{"type":18,"value":352}," u32",{"type":13,"tag":45,"props":354,"children":355},{"style":63},[356],{"type":18,"value":255},{"type":13,"tag":45,"props":358,"children":359},{"class":47,"line":129},[360,365,369,373,377,381,386],{"type":13,"tag":45,"props":361,"children":362},{"style":63},[363],{"type":18,"value":364}," p_tokens",{"type":13,"tag":45,"props":366,"children":367},{"style":52},[368],{"type":18,"value":235},{"type":13,"tag":45,"props":370,"children":371},{"style":52},[372],{"type":18,"value":272},{"type":13,"tag":45,"props":374,"children":375},{"style":214},[376],{"type":18,"value":240},{"type":13,"tag":45,"props":378,"children":379},{"style":52},[380],{"type":18,"value":245},{"type":13,"tag":45,"props":382,"children":383},{"style":214},[384],{"type":18,"value":385},"IndirectCommandsLayoutTokenNV",{"type":13,"tag":45,"props":387,"children":388},{"style":63},[389],{"type":18,"value":255},{"type":13,"tag":45,"props":391,"children":392},{"class":47,"line":152},[393,398,402,406],{"type":13,"tag":45,"props":394,"children":395},{"style":63},[396],{"type":18,"value":397}," stream_count",{"type":13,"tag":45,"props":399,"children":400},{"style":52},[401],{"type":18,"value":235},{"type":13,"tag":45,"props":403,"children":404},{"style":214},[405],{"type":18,"value":352},{"type":13,"tag":45,"props":407,"children":408},{"style":63},[409],{"type":18,"value":255},{"type":13,"tag":45,"props":411,"children":412},{"class":47,"line":165},[413,418,422,426,430],{"type":13,"tag":45,"props":414,"children":415},{"style":63},[416],{"type":18,"value":417}," p_stream_strides",{"type":13,"tag":45,"props":419,"children":420},{"style":52},[421],{"type":18,"value":235},{"type":13,"tag":45,"props":423,"children":424},{"style":52},[425],{"type":18,"value":272},{"type":13,"tag":45,"props":427,"children":428},{"style":214},[429],{"type":18,"value":352},{"type":13,"tag":45,"props":431,"children":432},{"style":63},[433],{"type":18,"value":255},{"type":13,"tag":45,"props":435,"children":436},{"class":47,"line":183},[437],{"type":13,"tag":45,"props":438,"children":439},{"style":63},[440],{"type":18,"value":441},"}\n",{"type":13,"tag":443,"props":444,"children":445},"ul",{},[446,467,486,505,524,535,562,573],{"type":13,"tag":447,"props":448,"children":449},"li",{},[450,456,458,465],{"type":13,"tag":21,"props":451,"children":453},{"className":452},[],[454],{"type":18,"value":455},"sType",{"type":18,"value":457}," is a ",{"type":13,"tag":459,"props":460,"children":462},"a",{"href":461},"/man/VkStructureType",[463],{"type":18,"value":464},"VkStructureType",{"type":18,"value":466}," value identifying this structure.",{"type":13,"tag":447,"props":468,"children":469},{},[470,476,478,484],{"type":13,"tag":21,"props":471,"children":473},{"className":472},[],[474],{"type":18,"value":475},"pNext",{"type":18,"value":477}," is ",{"type":13,"tag":21,"props":479,"children":481},{"className":480},[],[482],{"type":18,"value":483},"NULL",{"type":18,"value":485}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":447,"props":487,"children":488},{},[489,495,497,503],{"type":13,"tag":21,"props":490,"children":492},{"className":491},[],[493],{"type":18,"value":494},"pipelineBindPoint",{"type":18,"value":496}," is the ",{"type":13,"tag":459,"props":498,"children":500},{"href":499},"/man/VkPipelineBindPoint",[501],{"type":18,"value":502},"VkPipelineBindPoint",{"type":18,"value":504}," that this\nlayout targets.",{"type":13,"tag":447,"props":506,"children":507},{},[508,514,516,522],{"type":13,"tag":21,"props":509,"children":511},{"className":510},[],[512],{"type":18,"value":513},"flags",{"type":18,"value":515}," is a bitmask of\n",{"type":13,"tag":459,"props":517,"children":519},{"href":518},"/man/VkIndirectCommandsLayoutUsageFlagBitsNV",[520],{"type":18,"value":521},"VkIndirectCommandsLayoutUsageFlagBitsNV",{"type":18,"value":523}," specifying usage hints of\nthis layout.",{"type":13,"tag":447,"props":525,"children":526},{},[527,533],{"type":13,"tag":21,"props":528,"children":530},{"className":529},[],[531],{"type":18,"value":532},"tokenCount",{"type":18,"value":534}," is the length of the individual command sequence.",{"type":13,"tag":447,"props":536,"children":537},{},[538,544,546,552,554,560],{"type":13,"tag":21,"props":539,"children":541},{"className":540},[],[542],{"type":18,"value":543},"pTokens",{"type":18,"value":545}," is an array describing each command token in detail.\nSee ",{"type":13,"tag":459,"props":547,"children":549},{"href":548},"/man/VkIndirectCommandsTokenTypeNV",[550],{"type":18,"value":551},"VkIndirectCommandsTokenTypeNV",{"type":18,"value":553}," and\n",{"type":13,"tag":459,"props":555,"children":557},{"href":556},"/man/VkIndirectCommandsLayoutTokenNV",[558],{"type":18,"value":559},"VkIndirectCommandsLayoutTokenNV",{"type":18,"value":561}," below for details.",{"type":13,"tag":447,"props":563,"children":564},{},[565,571],{"type":13,"tag":21,"props":566,"children":568},{"className":567},[],[569],{"type":18,"value":570},"streamCount",{"type":18,"value":572}," is the number of streams used to provide the token\ninputs.",{"type":13,"tag":447,"props":574,"children":575},{},[576,582],{"type":13,"tag":21,"props":577,"children":579},{"className":578},[],[580],{"type":18,"value":581},"pStreamStrides",{"type":18,"value":583}," is an array defining the byte stride for each input\nstream.",{"type":13,"tag":14,"props":585,"children":586},{},[587],{"type":18,"value":588},"The following code illustrates some of the flags:",{"type":13,"tag":33,"props":590,"children":592},{"className":35,"code":591,"language":38,"meta":39,"style":39},"void cmdProcessAllSequences(cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sequencesCount, indexbuffer, indexbufferOffset)\n{\n for (s = 0; s \u003C sequencesCount; s++)\n {\n sUsed = s;\n\n if (indirectCommandsLayout.flags & VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV) {\n sUsed = indexbuffer.load_uint32( sUsed * sizeof(uint32_t) + indexbufferOffset);\n }\n\n if (indirectCommandsLayout.flags & VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV) {\n sUsed = incoherent_implementation_dependent_permutation[ sUsed ];\n }\n\n cmdProcessSequence( cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sUsed );\n }\n}\n",[593],{"type":13,"tag":21,"props":594,"children":595},{"__ignoreMap":39},[596,615,623,672,680,697,706,729,790,798,805,826,848,856,864,878,887],{"type":13,"tag":45,"props":597,"children":598},{"class":47,"line":48},[599,604,610],{"type":13,"tag":45,"props":600,"children":601},{"style":52},[602],{"type":18,"value":603},"void",{"type":13,"tag":45,"props":605,"children":607},{"style":606},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[608],{"type":18,"value":609}," cmdProcessAllSequences",{"type":13,"tag":45,"props":611,"children":612},{"style":63},[613],{"type":18,"value":614},"(cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sequencesCount, indexbuffer, indexbufferOffset)\n",{"type":13,"tag":45,"props":616,"children":617},{"class":47,"line":69},[618],{"type":13,"tag":45,"props":619,"children":620},{"style":63},[621],{"type":18,"value":622},"{\n",{"type":13,"tag":45,"props":624,"children":625},{"class":47,"line":78},[626,631,636,641,647,652,657,662,667],{"type":13,"tag":45,"props":627,"children":628},{"style":52},[629],{"type":18,"value":630}," for",{"type":13,"tag":45,"props":632,"children":633},{"style":63},[634],{"type":18,"value":635}," (s ",{"type":13,"tag":45,"props":637,"children":638},{"style":52},[639],{"type":18,"value":640},"=",{"type":13,"tag":45,"props":642,"children":644},{"style":643},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[645],{"type":18,"value":646}," 0",{"type":13,"tag":45,"props":648,"children":649},{"style":63},[650],{"type":18,"value":651},"; s ",{"type":13,"tag":45,"props":653,"children":654},{"style":52},[655],{"type":18,"value":656},"\u003C",{"type":13,"tag":45,"props":658,"children":659},{"style":63},[660],{"type":18,"value":661}," sequencesCount; s",{"type":13,"tag":45,"props":663,"children":664},{"style":52},[665],{"type":18,"value":666},"++",{"type":13,"tag":45,"props":668,"children":669},{"style":63},[670],{"type":18,"value":671},")\n",{"type":13,"tag":45,"props":673,"children":674},{"class":47,"line":97},[675],{"type":13,"tag":45,"props":676,"children":677},{"style":63},[678],{"type":18,"value":679}," {\n",{"type":13,"tag":45,"props":681,"children":682},{"class":47,"line":106},[683,688,692],{"type":13,"tag":45,"props":684,"children":685},{"style":63},[686],{"type":18,"value":687}," sUsed ",{"type":13,"tag":45,"props":689,"children":690},{"style":52},[691],{"type":18,"value":640},{"type":13,"tag":45,"props":693,"children":694},{"style":63},[695],{"type":18,"value":696}," s;\n",{"type":13,"tag":45,"props":698,"children":699},{"class":47,"line":115},[700],{"type":13,"tag":45,"props":701,"children":703},{"emptyLinePlaceholder":702},true,[704],{"type":18,"value":705},"\n",{"type":13,"tag":45,"props":707,"children":708},{"class":47,"line":129},[709,714,719,724],{"type":13,"tag":45,"props":710,"children":711},{"style":52},[712],{"type":18,"value":713}," if",{"type":13,"tag":45,"props":715,"children":716},{"style":63},[717],{"type":18,"value":718}," (indirectCommandsLayout.flags ",{"type":13,"tag":45,"props":720,"children":721},{"style":52},[722],{"type":18,"value":723},"&",{"type":13,"tag":45,"props":725,"children":726},{"style":63},[727],{"type":18,"value":728}," VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV) {\n",{"type":13,"tag":45,"props":730,"children":731},{"class":47,"line":152},[732,737,741,746,751,756,760,765,770,775,780,785],{"type":13,"tag":45,"props":733,"children":734},{"style":63},[735],{"type":18,"value":736}," sUsed ",{"type":13,"tag":45,"props":738,"children":739},{"style":52},[740],{"type":18,"value":640},{"type":13,"tag":45,"props":742,"children":743},{"style":63},[744],{"type":18,"value":745}," indexbuffer.",{"type":13,"tag":45,"props":747,"children":748},{"style":606},[749],{"type":18,"value":750},"load_uint32",{"type":13,"tag":45,"props":752,"children":753},{"style":63},[754],{"type":18,"value":755},"( sUsed ",{"type":13,"tag":45,"props":757,"children":758},{"style":52},[759],{"type":18,"value":144},{"type":13,"tag":45,"props":761,"children":762},{"style":52},[763],{"type":18,"value":764}," sizeof",{"type":13,"tag":45,"props":766,"children":767},{"style":63},[768],{"type":18,"value":769},"(",{"type":13,"tag":45,"props":771,"children":772},{"style":52},[773],{"type":18,"value":774},"uint32_t",{"type":13,"tag":45,"props":776,"children":777},{"style":63},[778],{"type":18,"value":779},") ",{"type":13,"tag":45,"props":781,"children":782},{"style":52},[783],{"type":18,"value":784},"+",{"type":13,"tag":45,"props":786,"children":787},{"style":63},[788],{"type":18,"value":789}," indexbufferOffset);\n",{"type":13,"tag":45,"props":791,"children":792},{"class":47,"line":165},[793],{"type":13,"tag":45,"props":794,"children":795},{"style":63},[796],{"type":18,"value":797}," }\n",{"type":13,"tag":45,"props":799,"children":800},{"class":47,"line":183},[801],{"type":13,"tag":45,"props":802,"children":803},{"emptyLinePlaceholder":702},[804],{"type":18,"value":705},{"type":13,"tag":45,"props":806,"children":808},{"class":47,"line":807},11,[809,813,817,821],{"type":13,"tag":45,"props":810,"children":811},{"style":52},[812],{"type":18,"value":713},{"type":13,"tag":45,"props":814,"children":815},{"style":63},[816],{"type":18,"value":718},{"type":13,"tag":45,"props":818,"children":819},{"style":52},[820],{"type":18,"value":723},{"type":13,"tag":45,"props":822,"children":823},{"style":63},[824],{"type":18,"value":825}," VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV) {\n",{"type":13,"tag":45,"props":827,"children":829},{"class":47,"line":828},12,[830,834,838,843],{"type":13,"tag":45,"props":831,"children":832},{"style":63},[833],{"type":18,"value":736},{"type":13,"tag":45,"props":835,"children":836},{"style":52},[837],{"type":18,"value":640},{"type":13,"tag":45,"props":839,"children":840},{"style":214},[841],{"type":18,"value":842}," incoherent_implementation_dependent_permutation",{"type":13,"tag":45,"props":844,"children":845},{"style":63},[846],{"type":18,"value":847},"[ sUsed ];\n",{"type":13,"tag":45,"props":849,"children":851},{"class":47,"line":850},13,[852],{"type":13,"tag":45,"props":853,"children":854},{"style":63},[855],{"type":18,"value":797},{"type":13,"tag":45,"props":857,"children":859},{"class":47,"line":858},14,[860],{"type":13,"tag":45,"props":861,"children":862},{"emptyLinePlaceholder":702},[863],{"type":18,"value":705},{"type":13,"tag":45,"props":865,"children":867},{"class":47,"line":866},15,[868,873],{"type":13,"tag":45,"props":869,"children":870},{"style":606},[871],{"type":18,"value":872}," cmdProcessSequence",{"type":13,"tag":45,"props":874,"children":875},{"style":63},[876],{"type":18,"value":877},"( cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sUsed );\n",{"type":13,"tag":45,"props":879,"children":881},{"class":47,"line":880},16,[882],{"type":13,"tag":45,"props":883,"children":884},{"style":63},[885],{"type":18,"value":886}," }\n",{"type":13,"tag":45,"props":888,"children":890},{"class":47,"line":889},17,[891],{"type":13,"tag":45,"props":892,"children":893},{"style":63},[894],{"type":18,"value":441},{"type":13,"tag":14,"props":896,"children":897},{},[898,900,906,908,914,915,921],{"type":18,"value":899},"When tokens are consumed, an offset is computed based on token offset and\nstream stride.\nThe resulting offset is required to be aligned.\nThe alignment for a specific token is equal to the scalar alignment of the\ndata type as defined in ",{"type":13,"tag":459,"props":901,"children":903},{"href":902},"/chapters/interfaces#interfaces-alignment-requirements",[904],{"type":18,"value":905},"Alignment\nRequirements",{"type":18,"value":907},", or\n",{"type":13,"tag":21,"props":909,"children":911},{"className":910},[],[912],{"type":18,"value":913},"VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV",{"type":18,"value":245},{"type":13,"tag":21,"props":916,"children":918},{"className":917},[],[919],{"type":18,"value":920},"minIndirectCommandsBufferOffsetAlignment",{"type":18,"value":922},",\nwhichever is lower.",{"type":13,"tag":924,"props":925,"children":926},"note",{},[927],{"type":13,"tag":14,"props":928,"children":929},{},[930,932,937,939,945,947,953,955,961],{"type":18,"value":931},"A ",{"type":13,"tag":21,"props":933,"children":935},{"className":934},[],[936],{"type":18,"value":920},{"type":18,"value":938}," of 4 allows\n",{"type":13,"tag":459,"props":940,"children":942},{"href":941},"/man/VkDeviceAddress",[943],{"type":18,"value":944},"VkDeviceAddress",{"type":18,"value":946}," to be packed as ",{"type":13,"tag":21,"props":948,"children":950},{"className":949},[],[951],{"type":18,"value":952},"uvec2",{"type":18,"value":954}," with scalar layout\ninstead of ",{"type":13,"tag":21,"props":956,"children":958},{"className":957},[],[959],{"type":18,"value":960},"uint64_t",{"type":18,"value":962}," with 8 byte alignment.\nThis enables direct compatibility with D3D12 command signature layouts.",{"type":13,"tag":964,"props":965,"children":967},"validity-group",{"name":966},"Valid Usage",[968,1005,1043,1077,1108,1135,1192,1217,1253,1298,1343,1393],{"type":13,"tag":969,"props":970,"children":972},"validity-field",{"name":971},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pipelineBindPoint-02930",[973],{"type":13,"tag":14,"props":974,"children":975},{},[976,977,982,984,989,991,997,999],{"type":18,"value":19},{"type":13,"tag":21,"props":978,"children":980},{"className":979},[],[981],{"type":18,"value":494},{"type":18,"value":983}," ",{"type":13,"tag":985,"props":986,"children":988},"normative",{"type":987},"must",[],{"type":18,"value":990}," be\n",{"type":13,"tag":21,"props":992,"children":994},{"className":993},[],[995],{"type":18,"value":996},"VK_PIPELINE_BIND_POINT_GRAPHICS",{"type":18,"value":998},"\nor ",{"type":13,"tag":21,"props":1000,"children":1002},{"className":1001},[],[1003],{"type":18,"value":1004},"VK_PIPELINE_BIND_POINT_COMPUTE",{"type":13,"tag":969,"props":1006,"children":1008},{"name":1007},"VUID-VkIndirectCommandsLayoutCreateInfoNV-tokenCount-02931",[1009],{"type":13,"tag":14,"props":1010,"children":1011},{},[1012,1017,1018,1021,1023,1029,1031,1036,1037],{"type":13,"tag":21,"props":1013,"children":1015},{"className":1014},[],[1016],{"type":18,"value":532},{"type":18,"value":983},{"type":13,"tag":985,"props":1019,"children":1020},{"type":987},[],{"type":18,"value":1022}," be greater than ",{"type":13,"tag":21,"props":1024,"children":1026},{"className":1025},[],[1027],{"type":18,"value":1028},"0",{"type":18,"value":1030}," and less than or equal to\n",{"type":13,"tag":21,"props":1032,"children":1034},{"className":1033},[],[1035],{"type":18,"value":913},{"type":18,"value":245},{"type":13,"tag":21,"props":1038,"children":1040},{"className":1039},[],[1041],{"type":18,"value":1042},"maxIndirectCommandsTokenCount",{"type":13,"tag":969,"props":1044,"children":1046},{"name":1045},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-02932",[1047],{"type":13,"tag":14,"props":1048,"children":1049},{},[1050,1052,1057,1059,1065,1067,1070,1072,1075],{"type":18,"value":1051},"If ",{"type":13,"tag":21,"props":1053,"children":1055},{"className":1054},[],[1056],{"type":18,"value":543},{"type":18,"value":1058}," contains an entry of\n",{"type":13,"tag":21,"props":1060,"children":1062},{"className":1061},[],[1063],{"type":18,"value":1064},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV",{"type":18,"value":1066}," it ",{"type":13,"tag":985,"props":1068,"children":1069},{"type":987},[],{"type":18,"value":1071}," be the\nfirst element of the array and there ",{"type":13,"tag":985,"props":1073,"children":1074},{"type":987},[],{"type":18,"value":1076}," be only a single element of\nsuch token type",{"type":13,"tag":969,"props":1078,"children":1080},{"name":1079},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-09585",[1081],{"type":13,"tag":14,"props":1082,"children":1083},{},[1084,1085,1090,1091,1097,1098,1101,1103,1106],{"type":18,"value":1051},{"type":13,"tag":21,"props":1086,"children":1088},{"className":1087},[],[1089],{"type":18,"value":543},{"type":18,"value":1058},{"type":13,"tag":21,"props":1092,"children":1094},{"className":1093},[],[1095],{"type":18,"value":1096},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NV",{"type":18,"value":1066},{"type":13,"tag":985,"props":1099,"children":1100},{"type":987},[],{"type":18,"value":1102}," be the first\nelement of the array and there ",{"type":13,"tag":985,"props":1104,"children":1105},{"type":987},[],{"type":18,"value":1107}," be only a single element of such\ntoken type",{"type":13,"tag":969,"props":1109,"children":1111},{"name":1110},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-02933",[1112],{"type":13,"tag":14,"props":1113,"children":1114},{},[1115,1116,1121,1122,1128,1130,1133],{"type":18,"value":1051},{"type":13,"tag":21,"props":1117,"children":1119},{"className":1118},[],[1120],{"type":18,"value":543},{"type":18,"value":1058},{"type":13,"tag":21,"props":1123,"children":1125},{"className":1124},[],[1126],{"type":18,"value":1127},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV",{"type":18,"value":1129}," there ",{"type":13,"tag":985,"props":1131,"children":1132},{"type":987},[],{"type":18,"value":1134}," be only\na single element of such token type",{"type":13,"tag":969,"props":1136,"children":1138},{"name":1137},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-02934",[1139],{"type":13,"tag":14,"props":1140,"children":1141},{},[1142,1144,1149,1150,1153,1155,1161,1162,1168,1169,1175,1176,1182,1184,1190],{"type":18,"value":1143},"All state tokens in ",{"type":13,"tag":21,"props":1145,"children":1147},{"className":1146},[],[1148],{"type":18,"value":543},{"type":18,"value":983},{"type":13,"tag":985,"props":1151,"children":1152},{"type":987},[],{"type":18,"value":1154}," occur before any action command\ntokens (",{"type":13,"tag":21,"props":1156,"children":1158},{"className":1157},[],[1159],{"type":18,"value":1160},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV",{"type":18,"value":255},{"type":13,"tag":21,"props":1163,"children":1165},{"className":1164},[],[1166],{"type":18,"value":1167},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV",{"type":18,"value":255},{"type":13,"tag":21,"props":1170,"children":1172},{"className":1171},[],[1173],{"type":18,"value":1174},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV",{"type":18,"value":255},{"type":13,"tag":21,"props":1177,"children":1179},{"className":1178},[],[1180],{"type":18,"value":1181},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV",{"type":18,"value":1183},"\n, ",{"type":13,"tag":21,"props":1185,"children":1187},{"className":1186},[],[1188],{"type":18,"value":1189},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NV",{"type":18,"value":1191},"\n)",{"type":13,"tag":969,"props":1193,"children":1195},{"name":1194},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-02935",[1196],{"type":13,"tag":14,"props":1197,"children":1198},{},[1199,1201,1206,1207,1210,1212],{"type":18,"value":1200},"The content of ",{"type":13,"tag":21,"props":1202,"children":1204},{"className":1203},[],[1205],{"type":18,"value":543},{"type":18,"value":983},{"type":13,"tag":985,"props":1208,"children":1209},{"type":987},[],{"type":18,"value":1211}," include one single action command\ntoken that is compatible with the ",{"type":13,"tag":21,"props":1213,"children":1215},{"className":1214},[],[1216],{"type":18,"value":494},{"type":13,"tag":969,"props":1218,"children":1220},{"name":1219},"VUID-VkIndirectCommandsLayoutCreateInfoNV-streamCount-02936",[1221],{"type":13,"tag":14,"props":1222,"children":1223},{},[1224,1229,1230,1233,1234,1239,1241,1246,1247],{"type":13,"tag":21,"props":1225,"children":1227},{"className":1226},[],[1228],{"type":18,"value":570},{"type":18,"value":983},{"type":13,"tag":985,"props":1231,"children":1232},{"type":987},[],{"type":18,"value":1022},{"type":13,"tag":21,"props":1235,"children":1237},{"className":1236},[],[1238],{"type":18,"value":1028},{"type":18,"value":1240}," and less or equal to\n",{"type":13,"tag":21,"props":1242,"children":1244},{"className":1243},[],[1245],{"type":18,"value":913},{"type":18,"value":245},{"type":13,"tag":21,"props":1248,"children":1250},{"className":1249},[],[1251],{"type":18,"value":1252},"maxIndirectCommandsStreamCount",{"type":13,"tag":969,"props":1254,"children":1256},{"name":1255},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pStreamStrides-02937",[1257],{"type":13,"tag":14,"props":1258,"children":1259},{},[1260,1262,1267,1268,1271,1272,1277,1279,1284,1285,1291,1293,1296],{"type":18,"value":1261},"each element of ",{"type":13,"tag":21,"props":1263,"children":1265},{"className":1264},[],[1266],{"type":18,"value":581},{"type":18,"value":983},{"type":13,"tag":985,"props":1269,"children":1270},{"type":987},[],{"type":18,"value":1022},{"type":13,"tag":21,"props":1273,"children":1275},{"className":1274},[],[1276],{"type":18,"value":1028},{"type":18,"value":1278}," and less\nthan or equal to\n",{"type":13,"tag":21,"props":1280,"children":1282},{"className":1281},[],[1283],{"type":18,"value":913},{"type":18,"value":245},{"type":13,"tag":21,"props":1286,"children":1288},{"className":1287},[],[1289],{"type":18,"value":1290},"maxIndirectCommandsStreamStride",{"type":18,"value":1292},".\nFurthermore the alignment of each token input ",{"type":13,"tag":985,"props":1294,"children":1295},{"type":987},[],{"type":18,"value":1297}," be ensured",{"type":13,"tag":969,"props":1299,"children":1301},{"name":1300},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pipelineBindPoint-09088",[1302],{"type":13,"tag":14,"props":1303,"children":1304},{},[1305,1306,1311,1312,1317,1319,1336,1338,1341],{"type":18,"value":1051},{"type":13,"tag":21,"props":1307,"children":1309},{"className":1308},[],[1310],{"type":18,"value":494},{"type":18,"value":477},{"type":13,"tag":21,"props":1313,"children":1315},{"className":1314},[],[1316],{"type":18,"value":1004},{"type":18,"value":1318}," then\nthe ",{"type":13,"tag":459,"props":1320,"children":1322},{"href":1321},"/man/VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV#features-deviceGeneratedCompute",[1323,1329,1330],{"type":13,"tag":21,"props":1324,"children":1326},{"className":1325},[],[1327],{"type":18,"value":1328},"VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV",{"type":18,"value":245},{"type":13,"tag":21,"props":1331,"children":1333},{"className":1332},[],[1334],{"type":18,"value":1335},"deviceGeneratedCompute",{"type":18,"value":1337},"\nfeature ",{"type":13,"tag":985,"props":1339,"children":1340},{"type":987},[],{"type":18,"value":1342}," be enabled",{"type":13,"tag":969,"props":1344,"children":1346},{"name":1345},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pipelineBindPoint-09089",[1347],{"type":13,"tag":14,"props":1348,"children":1349},{},[1350,1351,1356,1357,1362,1364,1369,1370,1373,1375,1380,1381,1386,1387],{"type":18,"value":1051},{"type":13,"tag":21,"props":1352,"children":1354},{"className":1353},[],[1355],{"type":18,"value":494},{"type":18,"value":477},{"type":13,"tag":21,"props":1358,"children":1360},{"className":1359},[],[1361],{"type":18,"value":1004},{"type":18,"value":1363}," then\nthe state tokens in ",{"type":13,"tag":21,"props":1365,"children":1367},{"className":1366},[],[1368],{"type":18,"value":543},{"type":18,"value":983},{"type":13,"tag":985,"props":1371,"children":1372},{"type":987},[],{"type":18,"value":1374}," only include\n",{"type":13,"tag":21,"props":1376,"children":1378},{"className":1377},[],[1379],{"type":18,"value":1189},{"type":18,"value":255},{"type":13,"tag":21,"props":1382,"children":1384},{"className":1383},[],[1385],{"type":18,"value":1096},{"type":18,"value":907},{"type":13,"tag":21,"props":1388,"children":1390},{"className":1389},[],[1391],{"type":18,"value":1392},"VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV",{"type":13,"tag":969,"props":1394,"children":1396},{"name":1395},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pipelineBindPoint-09090",[1397],{"type":13,"tag":14,"props":1398,"children":1399},{},[1400,1401,1406,1407,1412,1413,1418,1420,1425,1427,1443,1444,1447],{"type":18,"value":1051},{"type":13,"tag":21,"props":1402,"children":1404},{"className":1403},[],[1405],{"type":18,"value":494},{"type":18,"value":477},{"type":13,"tag":21,"props":1408,"children":1410},{"className":1409},[],[1411],{"type":18,"value":1004},{"type":18,"value":553},{"type":13,"tag":21,"props":1414,"children":1416},{"className":1415},[],[1417],{"type":18,"value":543},{"type":18,"value":1419}," includes\n",{"type":13,"tag":21,"props":1421,"children":1423},{"className":1422},[],[1424],{"type":18,"value":1096},{"type":18,"value":1426},", then the\n",{"type":13,"tag":459,"props":1428,"children":1430},{"href":1429},"/man/VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV#features-deviceGeneratedComputePipelines",[1431,1436,1437],{"type":13,"tag":21,"props":1432,"children":1434},{"className":1433},[],[1435],{"type":18,"value":1328},{"type":18,"value":245},{"type":13,"tag":21,"props":1438,"children":1440},{"className":1439},[],[1441],{"type":18,"value":1442},"deviceGeneratedComputePipelines",{"type":18,"value":1337},{"type":13,"tag":985,"props":1445,"children":1446},{"type":987},[],{"type":18,"value":1342},{"type":13,"tag":964,"props":1449,"children":1451},{"name":1450},"Valid Usage (Implicit)",[1452,1476,1498,1522,1546,1577,1606,1628],{"type":13,"tag":969,"props":1453,"children":1455},{"name":1454},"VUID-VkIndirectCommandsLayoutCreateInfoNV-sType-sType",[1456],{"type":13,"tag":14,"props":1457,"children":1458},{},[1459,1464,1465,1468,1470],{"type":13,"tag":21,"props":1460,"children":1462},{"className":1461},[],[1463],{"type":18,"value":455},{"type":18,"value":983},{"type":13,"tag":985,"props":1466,"children":1467},{"type":987},[],{"type":18,"value":1469}," be ",{"type":13,"tag":21,"props":1471,"children":1473},{"className":1472},[],[1474],{"type":18,"value":1475},"VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV",{"type":13,"tag":969,"props":1477,"children":1479},{"name":1478},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pNext-pNext",[1480],{"type":13,"tag":14,"props":1481,"children":1482},{},[1483,1488,1489,1492,1493],{"type":13,"tag":21,"props":1484,"children":1486},{"className":1485},[],[1487],{"type":18,"value":475},{"type":18,"value":983},{"type":13,"tag":985,"props":1490,"children":1491},{"type":987},[],{"type":18,"value":1469},{"type":13,"tag":21,"props":1494,"children":1496},{"className":1495},[],[1497],{"type":18,"value":483},{"type":13,"tag":969,"props":1499,"children":1501},{"name":1500},"VUID-VkIndirectCommandsLayoutCreateInfoNV-flags-parameter",[1502],{"type":13,"tag":14,"props":1503,"children":1504},{},[1505,1510,1511,1514,1516,1520],{"type":13,"tag":21,"props":1506,"children":1508},{"className":1507},[],[1509],{"type":18,"value":513},{"type":18,"value":983},{"type":13,"tag":985,"props":1512,"children":1513},{"type":987},[],{"type":18,"value":1515}," be a valid combination of ",{"type":13,"tag":459,"props":1517,"children":1518},{"href":518},[1519],{"type":18,"value":521},{"type":18,"value":1521}," values",{"type":13,"tag":969,"props":1523,"children":1525},{"name":1524},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pipelineBindPoint-parameter",[1526],{"type":13,"tag":14,"props":1527,"children":1528},{},[1529,1534,1535,1538,1540,1544],{"type":13,"tag":21,"props":1530,"children":1532},{"className":1531},[],[1533],{"type":18,"value":494},{"type":18,"value":983},{"type":13,"tag":985,"props":1536,"children":1537},{"type":987},[],{"type":18,"value":1539}," be a valid ",{"type":13,"tag":459,"props":1541,"children":1542},{"href":499},[1543],{"type":18,"value":502},{"type":18,"value":1545}," value",{"type":13,"tag":969,"props":1547,"children":1549},{"name":1548},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pTokens-parameter",[1550],{"type":13,"tag":14,"props":1551,"children":1552},{},[1553,1558,1559,1562,1564,1569,1571,1575],{"type":13,"tag":21,"props":1554,"children":1556},{"className":1555},[],[1557],{"type":18,"value":543},{"type":18,"value":983},{"type":13,"tag":985,"props":1560,"children":1561},{"type":987},[],{"type":18,"value":1563}," be a valid pointer to an array of ",{"type":13,"tag":21,"props":1565,"children":1567},{"className":1566},[],[1568],{"type":18,"value":532},{"type":18,"value":1570}," valid ",{"type":13,"tag":459,"props":1572,"children":1573},{"href":556},[1574],{"type":18,"value":559},{"type":18,"value":1576}," structures",{"type":13,"tag":969,"props":1578,"children":1580},{"name":1579},"VUID-VkIndirectCommandsLayoutCreateInfoNV-pStreamStrides-parameter",[1581],{"type":13,"tag":14,"props":1582,"children":1583},{},[1584,1589,1590,1593,1594,1599,1600,1605],{"type":13,"tag":21,"props":1585,"children":1587},{"className":1586},[],[1588],{"type":18,"value":581},{"type":18,"value":983},{"type":13,"tag":985,"props":1591,"children":1592},{"type":987},[],{"type":18,"value":1563},{"type":13,"tag":21,"props":1595,"children":1597},{"className":1596},[],[1598],{"type":18,"value":570},{"type":18,"value":983},{"type":13,"tag":21,"props":1601,"children":1603},{"className":1602},[],[1604],{"type":18,"value":774},{"type":18,"value":1521},{"type":13,"tag":969,"props":1607,"children":1609},{"name":1608},"VUID-VkIndirectCommandsLayoutCreateInfoNV-tokenCount-arraylength",[1610],{"type":13,"tag":14,"props":1611,"children":1612},{},[1613,1618,1619,1622,1623],{"type":13,"tag":21,"props":1614,"children":1616},{"className":1615},[],[1617],{"type":18,"value":532},{"type":18,"value":983},{"type":13,"tag":985,"props":1620,"children":1621},{"type":987},[],{"type":18,"value":1022},{"type":13,"tag":21,"props":1624,"children":1626},{"className":1625},[],[1627],{"type":18,"value":1028},{"type":13,"tag":969,"props":1629,"children":1631},{"name":1630},"VUID-VkIndirectCommandsLayoutCreateInfoNV-streamCount-arraylength",[1632],{"type":13,"tag":14,"props":1633,"children":1634},{},[1635,1640,1641,1644,1645],{"type":13,"tag":21,"props":1636,"children":1638},{"className":1637},[],[1639],{"type":18,"value":570},{"type":18,"value":983},{"type":13,"tag":985,"props":1642,"children":1643},{"type":987},[],{"type":18,"value":1022},{"type":13,"tag":21,"props":1646,"children":1648},{"className":1647},[],[1649],{"type":18,"value":1028},{"type":13,"tag":1651,"props":1652,"children":1653},"style",{},[1654],{"type":18,"value":1655},"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":39,"searchDepth":69,"depth":69,"links":1657},[],"markdown",1729612454702]