[{"data":1,"prerenderedAt":657},["ShallowReactive",2],{"gfSoeG6451":3},{"title":4,"description":5,"parent":6,"cmd_buf_level":7,"render_pass_scope":10,"supported_queue_types":11,"tasks":13,"type":15,"xrefs":16,"body":17,"_type":656,"_id":4},"vkCmdSetViewportSwizzleNV","Specify the viewport swizzle state dynamically for a command buffer","VK_EXT_extended_dynamic_state3, VK_EXT_shader_object",[8,9],"primary","secondary","both",[12],"graphics",[14],"state","protos",[],{"type":18,"children":19,"toc":654},"root",[20,37,309,365,427,449,602,648],{"type":21,"tag":22,"props":23,"children":24},"element","p",{},[25,28,35],{"type":26,"value":27},"text","To ",{"type":21,"tag":29,"props":30,"children":32},"a",{"href":31},"/chapters/pipelines#pipelines-dynamic-state",[33],{"type":26,"value":34},"dynamically set",{"type":26,"value":36}," the viewport swizzle state,\ncall:",{"type":21,"tag":38,"props":39,"children":40},"code-group",{},[41,162],{"type":21,"tag":42,"props":43,"children":49},"pre",{"className":44,"code":45,"filename":46,"language":47,"meta":48,"style":48},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdSetViewportSwizzleNV(\n VkCommandBuffer commandBuffer,\n uint32_t firstViewport,\n uint32_t viewportCount,\n const VkViewportSwizzleNV* pViewportSwizzles);\n","C","c","",[50],{"type":21,"tag":51,"props":52,"children":53},"code",{"__ignoreMap":48},[54,78,98,116,133],{"type":21,"tag":55,"props":56,"children":59},"span",{"class":57,"line":58},"line",1,[60,66,72],{"type":21,"tag":55,"props":61,"children":63},{"style":62},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[64],{"type":26,"value":65},"void",{"type":21,"tag":55,"props":67,"children":69},{"style":68},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[70],{"type":26,"value":71}," vkCmdSetViewportSwizzleNV",{"type":21,"tag":55,"props":73,"children":75},{"style":74},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[76],{"type":26,"value":77},"(\n",{"type":21,"tag":55,"props":79,"children":81},{"class":57,"line":80},2,[82,87,93],{"type":21,"tag":55,"props":83,"children":84},{"style":74},[85],{"type":26,"value":86}," VkCommandBuffer ",{"type":21,"tag":55,"props":88,"children":90},{"style":89},"--shiki-default:#953800;--shiki-dark:#FFA657",[91],{"type":26,"value":92},"commandBuffer",{"type":21,"tag":55,"props":94,"children":95},{"style":74},[96],{"type":26,"value":97},",\n",{"type":21,"tag":55,"props":99,"children":101},{"class":57,"line":100},3,[102,107,112],{"type":21,"tag":55,"props":103,"children":104},{"style":62},[105],{"type":26,"value":106}," uint32_t",{"type":21,"tag":55,"props":108,"children":109},{"style":89},[110],{"type":26,"value":111}," firstViewport",{"type":21,"tag":55,"props":113,"children":114},{"style":74},[115],{"type":26,"value":97},{"type":21,"tag":55,"props":117,"children":119},{"class":57,"line":118},4,[120,124,129],{"type":21,"tag":55,"props":121,"children":122},{"style":62},[123],{"type":26,"value":106},{"type":21,"tag":55,"props":125,"children":126},{"style":89},[127],{"type":26,"value":128}," viewportCount",{"type":21,"tag":55,"props":130,"children":131},{"style":74},[132],{"type":26,"value":97},{"type":21,"tag":55,"props":134,"children":136},{"class":57,"line":135},5,[137,142,147,152,157],{"type":21,"tag":55,"props":138,"children":139},{"style":62},[140],{"type":26,"value":141}," const",{"type":21,"tag":55,"props":143,"children":144},{"style":74},[145],{"type":26,"value":146}," VkViewportSwizzleNV",{"type":21,"tag":55,"props":148,"children":149},{"style":62},[150],{"type":26,"value":151},"*",{"type":21,"tag":55,"props":153,"children":154},{"style":89},[155],{"type":26,"value":156}," pViewportSwizzles",{"type":21,"tag":55,"props":158,"children":159},{"style":74},[160],{"type":26,"value":161},");\n",{"type":21,"tag":42,"props":163,"children":168},{"className":164,"code":165,"filename":166,"language":167,"meta":48,"style":48},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_set_viewport_swizzle_nv(\n command_buffer: vk::CommandBuffer,\n first_viewport: u32,\n viewport_count: u32,\n p_viewport_swizzles: *const vk::ViewportSwizzleNV,\n);\n","Rust","rs",[169],{"type":21,"tag":51,"props":170,"children":171},{"__ignoreMap":48},[172,194,226,247,267,301],{"type":21,"tag":55,"props":173,"children":174},{"class":57,"line":58},[175,180,185,190],{"type":21,"tag":55,"props":176,"children":177},{"style":62},[178],{"type":26,"value":179},"pub",{"type":21,"tag":55,"props":181,"children":182},{"style":62},[183],{"type":26,"value":184}," fn",{"type":21,"tag":55,"props":186,"children":187},{"style":68},[188],{"type":26,"value":189}," cmd_set_viewport_swizzle_nv",{"type":21,"tag":55,"props":191,"children":192},{"style":74},[193],{"type":26,"value":77},{"type":21,"tag":55,"props":195,"children":196},{"class":57,"line":80},[197,202,207,212,217,222],{"type":21,"tag":55,"props":198,"children":199},{"style":74},[200],{"type":26,"value":201}," command_buffer",{"type":21,"tag":55,"props":203,"children":204},{"style":62},[205],{"type":26,"value":206},":",{"type":21,"tag":55,"props":208,"children":209},{"style":89},[210],{"type":26,"value":211}," vk",{"type":21,"tag":55,"props":213,"children":214},{"style":62},[215],{"type":26,"value":216},"::",{"type":21,"tag":55,"props":218,"children":219},{"style":89},[220],{"type":26,"value":221},"CommandBuffer",{"type":21,"tag":55,"props":223,"children":224},{"style":74},[225],{"type":26,"value":97},{"type":21,"tag":55,"props":227,"children":228},{"class":57,"line":100},[229,234,238,243],{"type":21,"tag":55,"props":230,"children":231},{"style":74},[232],{"type":26,"value":233}," first_viewport",{"type":21,"tag":55,"props":235,"children":236},{"style":62},[237],{"type":26,"value":206},{"type":21,"tag":55,"props":239,"children":240},{"style":89},[241],{"type":26,"value":242}," u32",{"type":21,"tag":55,"props":244,"children":245},{"style":74},[246],{"type":26,"value":97},{"type":21,"tag":55,"props":248,"children":249},{"class":57,"line":118},[250,255,259,263],{"type":21,"tag":55,"props":251,"children":252},{"style":74},[253],{"type":26,"value":254}," viewport_count",{"type":21,"tag":55,"props":256,"children":257},{"style":62},[258],{"type":26,"value":206},{"type":21,"tag":55,"props":260,"children":261},{"style":89},[262],{"type":26,"value":242},{"type":21,"tag":55,"props":264,"children":265},{"style":74},[266],{"type":26,"value":97},{"type":21,"tag":55,"props":268,"children":269},{"class":57,"line":135},[270,275,279,284,288,292,297],{"type":21,"tag":55,"props":271,"children":272},{"style":74},[273],{"type":26,"value":274}," p_viewport_swizzles",{"type":21,"tag":55,"props":276,"children":277},{"style":62},[278],{"type":26,"value":206},{"type":21,"tag":55,"props":280,"children":281},{"style":62},[282],{"type":26,"value":283}," *const",{"type":21,"tag":55,"props":285,"children":286},{"style":89},[287],{"type":26,"value":211},{"type":21,"tag":55,"props":289,"children":290},{"style":62},[291],{"type":26,"value":216},{"type":21,"tag":55,"props":293,"children":294},{"style":89},[295],{"type":26,"value":296},"ViewportSwizzleNV",{"type":21,"tag":55,"props":298,"children":299},{"style":74},[300],{"type":26,"value":97},{"type":21,"tag":55,"props":302,"children":304},{"class":57,"line":303},6,[305],{"type":21,"tag":55,"props":306,"children":307},{"style":74},[308],{"type":26,"value":161},{"type":21,"tag":310,"props":311,"children":312},"ul",{},[313,324,335,346],{"type":21,"tag":314,"props":315,"children":316},"li",{},[317,322],{"type":21,"tag":51,"props":318,"children":320},{"className":319},[],[321],{"type":26,"value":92},{"type":26,"value":323}," is the command buffer into which the command will be\nrecorded.",{"type":21,"tag":314,"props":325,"children":326},{},[327,333],{"type":21,"tag":51,"props":328,"children":330},{"className":329},[],[331],{"type":26,"value":332},"firstViewport",{"type":26,"value":334}," is the index of the first viewport whose parameters\nare updated by the command.",{"type":21,"tag":314,"props":336,"children":337},{},[338,344],{"type":21,"tag":51,"props":339,"children":341},{"className":340},[],[342],{"type":26,"value":343},"viewportCount",{"type":26,"value":345}," is the number of viewports whose parameters are\nupdated by the command.",{"type":21,"tag":314,"props":347,"children":348},{},[349,355,357,363],{"type":21,"tag":51,"props":350,"children":352},{"className":351},[],[353],{"type":26,"value":354},"pViewportSwizzles",{"type":26,"value":356}," is a pointer to an array of\n",{"type":21,"tag":29,"props":358,"children":360},{"href":359},"/man/VkViewportSwizzleNV",[361],{"type":26,"value":362},"VkViewportSwizzleNV",{"type":26,"value":364}," structures specifying viewport swizzles.",{"type":21,"tag":22,"props":366,"children":367},{},[368,370,376,378,384,386,392,393,399,401,407,408,413,415,419,420,425],{"type":26,"value":369},"This command sets the viewport swizzle state for subsequent drawing commands\nwhen drawing using ",{"type":21,"tag":29,"props":371,"children":373},{"href":372},"/chapters/shaders#shaders-objects",[374],{"type":26,"value":375},"shader objects",{"type":26,"value":377},", or\nwhen the graphics pipeline is created with\n",{"type":21,"tag":51,"props":379,"children":381},{"className":380},[],[382],{"type":26,"value":383},"VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV",{"type":26,"value":385}," set in\n",{"type":21,"tag":29,"props":387,"children":389},{"href":388},"/man/VkPipelineDynamicStateCreateInfo",[390],{"type":26,"value":391},"VkPipelineDynamicStateCreateInfo",{"type":26,"value":216},{"type":21,"tag":51,"props":394,"children":396},{"className":395},[],[397],{"type":26,"value":398},"pDynamicStates",{"type":26,"value":400},".\nOtherwise, this state is specified by the\n",{"type":21,"tag":29,"props":402,"children":404},{"href":403},"/man/VkPipelineViewportSwizzleStateCreateInfoNV",[405],{"type":26,"value":406},"VkPipelineViewportSwizzleStateCreateInfoNV",{"type":26,"value":216},{"type":21,"tag":51,"props":409,"children":411},{"className":410},[],[412],{"type":26,"value":343},{"type":26,"value":414},", and\n",{"type":21,"tag":29,"props":416,"children":417},{"href":403},[418],{"type":26,"value":406},{"type":26,"value":216},{"type":21,"tag":51,"props":421,"children":423},{"className":422},[],[424],{"type":26,"value":354},{"type":26,"value":426},"\nvalues used to create the currently active pipeline.",{"type":21,"tag":428,"props":429,"children":431},"validity-group",{"name":430},"Valid Usage",[432],{"type":21,"tag":433,"props":434,"children":436},"validity-field",{"name":435},"VUID-vkCmdSetViewportSwizzleNV-None-09423",[437],{"type":21,"tag":22,"props":438,"children":439},{},[440,442,447],{"type":26,"value":441},"At least one of the following ",{"type":21,"tag":443,"props":444,"children":446},"normative",{"type":445},"must",[],{"type":26,"value":448}," be true:",{"type":21,"tag":428,"props":450,"children":452},{"name":451},"Valid Usage (Implicit)",[453,480,511,535,564,578],{"type":21,"tag":433,"props":454,"children":456},{"name":455},"VUID-vkCmdSetViewportSwizzleNV-commandBuffer-parameter",[457],{"type":21,"tag":22,"props":458,"children":459},{},[460,465,467,470,472,478],{"type":21,"tag":51,"props":461,"children":463},{"className":462},[],[464],{"type":26,"value":92},{"type":26,"value":466}," ",{"type":21,"tag":443,"props":468,"children":469},{"type":445},[],{"type":26,"value":471}," be a valid ",{"type":21,"tag":29,"props":473,"children":475},{"href":474},"/man/VkCommandBuffer",[476],{"type":26,"value":477},"VkCommandBuffer",{"type":26,"value":479}," handle",{"type":21,"tag":433,"props":481,"children":483},{"name":482},"VUID-vkCmdSetViewportSwizzleNV-pViewportSwizzles-parameter",[484],{"type":21,"tag":22,"props":485,"children":486},{},[487,492,493,496,498,503,505,509],{"type":21,"tag":51,"props":488,"children":490},{"className":489},[],[491],{"type":26,"value":354},{"type":26,"value":466},{"type":21,"tag":443,"props":494,"children":495},{"type":445},[],{"type":26,"value":497}," be a valid pointer to an array of ",{"type":21,"tag":51,"props":499,"children":501},{"className":500},[],[502],{"type":26,"value":343},{"type":26,"value":504}," valid ",{"type":21,"tag":29,"props":506,"children":507},{"href":359},[508],{"type":26,"value":362},{"type":26,"value":510}," structures",{"type":21,"tag":433,"props":512,"children":514},{"name":513},"VUID-vkCmdSetViewportSwizzleNV-commandBuffer-recording",[515],{"type":21,"tag":22,"props":516,"children":517},{},[518,523,524,527,529],{"type":21,"tag":51,"props":519,"children":521},{"className":520},[],[522],{"type":26,"value":92},{"type":26,"value":466},{"type":21,"tag":443,"props":525,"children":526},{"type":445},[],{"type":26,"value":528}," be in the ",{"type":21,"tag":29,"props":530,"children":532},{"href":531},"/chapters/commandbuffers#commandbuffers-lifecycle",[533],{"type":26,"value":534},"recording state",{"type":21,"tag":433,"props":536,"children":538},{"name":537},"VUID-vkCmdSetViewportSwizzleNV-commandBuffer-cmdpool",[539],{"type":21,"tag":22,"props":540,"children":541},{},[542,544,550,552,557,559,562],{"type":26,"value":543},"The ",{"type":21,"tag":51,"props":545,"children":547},{"className":546},[],[548],{"type":26,"value":549},"VkCommandPool",{"type":26,"value":551}," that ",{"type":21,"tag":51,"props":553,"children":555},{"className":554},[],[556],{"type":26,"value":92},{"type":26,"value":558}," was allocated from ",{"type":21,"tag":443,"props":560,"children":561},{"type":445},[],{"type":26,"value":563}," support graphics operations",{"type":21,"tag":433,"props":565,"children":567},{"name":566},"VUID-vkCmdSetViewportSwizzleNV-videocoding",[568],{"type":21,"tag":22,"props":569,"children":570},{},[571,573,576],{"type":26,"value":572},"This command ",{"type":21,"tag":443,"props":574,"children":575},{"type":445},[],{"type":26,"value":577}," only be called outside of a video coding scope",{"type":21,"tag":433,"props":579,"children":581},{"name":580},"VUID-vkCmdSetViewportSwizzleNV-viewportCount-arraylength",[582],{"type":21,"tag":22,"props":583,"children":584},{},[585,590,591,594,596],{"type":21,"tag":51,"props":586,"children":588},{"className":587},[],[589],{"type":26,"value":343},{"type":26,"value":466},{"type":21,"tag":443,"props":592,"children":593},{"type":445},[],{"type":26,"value":595}," be greater than ",{"type":21,"tag":51,"props":597,"children":599},{"className":598},[],[600],{"type":26,"value":601},"0",{"type":21,"tag":603,"props":604,"children":606},"validity-box",{"name":605},"Host Synchronization",[607],{"type":21,"tag":310,"props":608,"children":609},{},[610,626],{"type":21,"tag":314,"props":611,"children":612},{},[613,615,620,621,624],{"type":26,"value":614},"Host access to ",{"type":21,"tag":51,"props":616,"children":618},{"className":617},[],[619],{"type":26,"value":92},{"type":26,"value":466},{"type":21,"tag":443,"props":622,"children":623},{"type":445},[],{"type":26,"value":625}," be externally synchronized",{"type":21,"tag":314,"props":627,"children":628},{},[629,631,636,637,642,643,646],{"type":26,"value":630},"Host access to the ",{"type":21,"tag":51,"props":632,"children":634},{"className":633},[],[635],{"type":26,"value":549},{"type":26,"value":551},{"type":21,"tag":51,"props":638,"children":640},{"className":639},[],[641],{"type":26,"value":92},{"type":26,"value":558},{"type":21,"tag":443,"props":644,"children":645},{"type":445},[],{"type":26,"value":647}," be externally synchronized\n::",{"type":21,"tag":649,"props":650,"children":651},"style",{},[652],{"type":26,"value":653},"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":48,"searchDepth":80,"depth":80,"links":655},[],"markdown",1725732610473]