[{"data":1,"prerenderedAt":760},["ShallowReactive",2],{"VE8x4W14mB":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":759,"_id":4},"vkCmdSetCoarseSampleOrderNV","Set order of coverage samples for coarse fragments dynamically for a command buffer","VK_NV_shading_rate_image",[8,9],"primary","secondary","both",[12],"graphics",[14],"state","protos",[],{"type":18,"children":19,"toc":757},"root",[20,37,319,374,409,453,537,705,751],{"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 order of coverage\nsamples in fragments larger than one pixel, call:",{"type":21,"tag":38,"props":39,"children":40},"code-group",{},[41,163],{"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 vkCmdSetCoarseSampleOrderNV(\n VkCommandBuffer commandBuffer,\n VkCoarseSampleOrderTypeNV sampleOrderType,\n uint32_t customSampleOrderCount,\n const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);\n","C","c","",[50],{"type":21,"tag":51,"props":52,"children":53},"code",{"__ignoreMap":48},[54,78,98,116,134],{"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}," vkCmdSetCoarseSampleOrderNV",{"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":74},[105],{"type":26,"value":106}," VkCoarseSampleOrderTypeNV ",{"type":21,"tag":55,"props":108,"children":109},{"style":89},[110],{"type":26,"value":111},"sampleOrderType",{"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,125,130],{"type":21,"tag":55,"props":121,"children":122},{"style":62},[123],{"type":26,"value":124}," uint32_t",{"type":21,"tag":55,"props":126,"children":127},{"style":89},[128],{"type":26,"value":129}," customSampleOrderCount",{"type":21,"tag":55,"props":131,"children":132},{"style":74},[133],{"type":26,"value":97},{"type":21,"tag":55,"props":135,"children":137},{"class":57,"line":136},5,[138,143,148,153,158],{"type":21,"tag":55,"props":139,"children":140},{"style":62},[141],{"type":26,"value":142}," const",{"type":21,"tag":55,"props":144,"children":145},{"style":74},[146],{"type":26,"value":147}," VkCoarseSampleOrderCustomNV",{"type":21,"tag":55,"props":149,"children":150},{"style":62},[151],{"type":26,"value":152},"*",{"type":21,"tag":55,"props":154,"children":155},{"style":89},[156],{"type":26,"value":157}," pCustomSampleOrders",{"type":21,"tag":55,"props":159,"children":160},{"style":74},[161],{"type":26,"value":162},");\n",{"type":21,"tag":42,"props":164,"children":169},{"className":165,"code":166,"filename":167,"language":168,"meta":48,"style":48},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_set_coarse_sample_order_nv(\n command_buffer: vk::CommandBuffer,\n sample_order_type: vk::CoarseSampleOrderTypeNV,\n custom_sample_order_count: u32,\n p_custom_sample_orders: *const vk::CoarseSampleOrderCustomNV,\n);\n","Rust","rs",[170],{"type":21,"tag":51,"props":171,"children":172},{"__ignoreMap":48},[173,195,227,256,277,311],{"type":21,"tag":55,"props":174,"children":175},{"class":57,"line":58},[176,181,186,191],{"type":21,"tag":55,"props":177,"children":178},{"style":62},[179],{"type":26,"value":180},"pub",{"type":21,"tag":55,"props":182,"children":183},{"style":62},[184],{"type":26,"value":185}," fn",{"type":21,"tag":55,"props":187,"children":188},{"style":68},[189],{"type":26,"value":190}," cmd_set_coarse_sample_order_nv",{"type":21,"tag":55,"props":192,"children":193},{"style":74},[194],{"type":26,"value":77},{"type":21,"tag":55,"props":196,"children":197},{"class":57,"line":80},[198,203,208,213,218,223],{"type":21,"tag":55,"props":199,"children":200},{"style":74},[201],{"type":26,"value":202}," command_buffer",{"type":21,"tag":55,"props":204,"children":205},{"style":62},[206],{"type":26,"value":207},":",{"type":21,"tag":55,"props":209,"children":210},{"style":89},[211],{"type":26,"value":212}," vk",{"type":21,"tag":55,"props":214,"children":215},{"style":62},[216],{"type":26,"value":217},"::",{"type":21,"tag":55,"props":219,"children":220},{"style":89},[221],{"type":26,"value":222},"CommandBuffer",{"type":21,"tag":55,"props":224,"children":225},{"style":74},[226],{"type":26,"value":97},{"type":21,"tag":55,"props":228,"children":229},{"class":57,"line":100},[230,235,239,243,247,252],{"type":21,"tag":55,"props":231,"children":232},{"style":74},[233],{"type":26,"value":234}," sample_order_type",{"type":21,"tag":55,"props":236,"children":237},{"style":62},[238],{"type":26,"value":207},{"type":21,"tag":55,"props":240,"children":241},{"style":89},[242],{"type":26,"value":212},{"type":21,"tag":55,"props":244,"children":245},{"style":62},[246],{"type":26,"value":217},{"type":21,"tag":55,"props":248,"children":249},{"style":89},[250],{"type":26,"value":251},"CoarseSampleOrderTypeNV",{"type":21,"tag":55,"props":253,"children":254},{"style":74},[255],{"type":26,"value":97},{"type":21,"tag":55,"props":257,"children":258},{"class":57,"line":118},[259,264,268,273],{"type":21,"tag":55,"props":260,"children":261},{"style":74},[262],{"type":26,"value":263}," custom_sample_order_count",{"type":21,"tag":55,"props":265,"children":266},{"style":62},[267],{"type":26,"value":207},{"type":21,"tag":55,"props":269,"children":270},{"style":89},[271],{"type":26,"value":272}," u32",{"type":21,"tag":55,"props":274,"children":275},{"style":74},[276],{"type":26,"value":97},{"type":21,"tag":55,"props":278,"children":279},{"class":57,"line":136},[280,285,289,294,298,302,307],{"type":21,"tag":55,"props":281,"children":282},{"style":74},[283],{"type":26,"value":284}," p_custom_sample_orders",{"type":21,"tag":55,"props":286,"children":287},{"style":62},[288],{"type":26,"value":207},{"type":21,"tag":55,"props":290,"children":291},{"style":62},[292],{"type":26,"value":293}," *const",{"type":21,"tag":55,"props":295,"children":296},{"style":89},[297],{"type":26,"value":212},{"type":21,"tag":55,"props":299,"children":300},{"style":62},[301],{"type":26,"value":217},{"type":21,"tag":55,"props":303,"children":304},{"style":89},[305],{"type":26,"value":306},"CoarseSampleOrderCustomNV",{"type":21,"tag":55,"props":308,"children":309},{"style":74},[310],{"type":26,"value":97},{"type":21,"tag":55,"props":312,"children":314},{"class":57,"line":313},6,[315],{"type":21,"tag":55,"props":316,"children":317},{"style":74},[318],{"type":26,"value":162},{"type":21,"tag":320,"props":321,"children":322},"ul",{},[323,334,344,355],{"type":21,"tag":324,"props":325,"children":326},"li",{},[327,332],{"type":21,"tag":51,"props":328,"children":330},{"className":329},[],[331],{"type":26,"value":92},{"type":26,"value":333}," is the command buffer into which the command will be\nrecorded.",{"type":21,"tag":324,"props":335,"children":336},{},[337,342],{"type":21,"tag":51,"props":338,"children":340},{"className":339},[],[341],{"type":26,"value":111},{"type":26,"value":343}," specifies the mechanism used to order coverage\nsamples in fragments larger than one pixel.",{"type":21,"tag":324,"props":345,"children":346},{},[347,353],{"type":21,"tag":51,"props":348,"children":350},{"className":349},[],[351],{"type":26,"value":352},"customSampleOrderCount",{"type":26,"value":354}," specifies the number of custom sample\norderings to use when ordering coverage samples.",{"type":21,"tag":324,"props":356,"children":357},{},[358,364,366,372],{"type":21,"tag":51,"props":359,"children":361},{"className":360},[],[362],{"type":26,"value":363},"pCustomSampleOrders",{"type":26,"value":365}," is a pointer to an array of\n",{"type":21,"tag":29,"props":367,"children":369},{"href":368},"/man/VkCoarseSampleOrderCustomNV",[370],{"type":26,"value":371},"VkCoarseSampleOrderCustomNV",{"type":26,"value":373}," structures, each structure specifying\nthe coverage sample order for a single combination of fragment area and\ncoverage sample count.",{"type":21,"tag":22,"props":375,"children":376},{},[377,379,384,386,392,394,399,401,407],{"type":26,"value":378},"If ",{"type":21,"tag":51,"props":380,"children":382},{"className":381},[],[383],{"type":26,"value":111},{"type":26,"value":385}," is ",{"type":21,"tag":51,"props":387,"children":389},{"className":388},[],[390],{"type":26,"value":391},"VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV",{"type":26,"value":393},", the\ncoverage sample order used for any combination of fragment area and coverage\nsample count not enumerated in ",{"type":21,"tag":51,"props":395,"children":397},{"className":396},[],[398],{"type":26,"value":363},{"type":26,"value":400}," will be identical\nto that used for ",{"type":21,"tag":51,"props":402,"children":404},{"className":403},[],[405],{"type":26,"value":406},"VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV",{"type":26,"value":408},".",{"type":21,"tag":22,"props":410,"children":411},{},[412,414,420,422,428,430,436,437,443,445,451],{"type":26,"value":413},"This command sets the order of coverage samples for subsequent drawing\ncommands\nwhen drawing using ",{"type":21,"tag":29,"props":415,"children":417},{"href":416},"/chapters/shaders#shaders-objects",[418],{"type":26,"value":419},"shader objects",{"type":26,"value":421},", or\nwhen the graphics pipeline is created with\n",{"type":21,"tag":51,"props":423,"children":425},{"className":424},[],[426],{"type":26,"value":427},"VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV",{"type":26,"value":429}," set in\n",{"type":21,"tag":29,"props":431,"children":433},{"href":432},"/man/VkPipelineDynamicStateCreateInfo",[434],{"type":26,"value":435},"VkPipelineDynamicStateCreateInfo",{"type":26,"value":217},{"type":21,"tag":51,"props":438,"children":440},{"className":439},[],[441],{"type":26,"value":442},"pDynamicStates",{"type":26,"value":444},".\nOtherwise, this state is specified by the\n",{"type":21,"tag":29,"props":446,"children":448},{"href":447},"/man/VkPipelineViewportCoarseSampleOrderStateCreateInfoNV",[449],{"type":26,"value":450},"VkPipelineViewportCoarseSampleOrderStateCreateInfoNV",{"type":26,"value":452}," values used to\ncreate the currently active pipeline.",{"type":21,"tag":454,"props":455,"children":457},"validity-group",{"name":456},"Valid Usage",[458,501],{"type":21,"tag":459,"props":460,"children":462},"validity-field",{"name":461},"VUID-vkCmdSetCoarseSampleOrderNV-sampleOrderType-02081",[463],{"type":21,"tag":22,"props":464,"children":465},{},[466,467,472,474,479,480,486,488,493,495],{"type":26,"value":378},{"type":21,"tag":51,"props":468,"children":470},{"className":469},[],[471],{"type":26,"value":111},{"type":26,"value":473}," is not\n",{"type":21,"tag":51,"props":475,"children":477},{"className":476},[],[478],{"type":26,"value":391},{"type":26,"value":97},{"type":21,"tag":51,"props":481,"children":483},{"className":482},[],[484],{"type":26,"value":485},"customSamplerOrderCount",{"type":26,"value":487}," ",{"type":21,"tag":489,"props":490,"children":492},"normative",{"type":491},"must",[],{"type":26,"value":494}," be ",{"type":21,"tag":51,"props":496,"children":498},{"className":497},[],[499],{"type":26,"value":500},"0",{"type":21,"tag":459,"props":502,"children":504},{"name":503},"VUID-vkCmdSetCoarseSampleOrderNV-pCustomSampleOrders-02235",[505],{"type":21,"tag":22,"props":506,"children":507},{},[508,510,515,516,519,521,527,529,535],{"type":26,"value":509},"The array ",{"type":21,"tag":51,"props":511,"children":513},{"className":512},[],[514],{"type":26,"value":363},{"type":26,"value":487},{"type":21,"tag":489,"props":517,"children":518},{"type":491},[],{"type":26,"value":520}," not contain two structures\nwith matching values for both the ",{"type":21,"tag":51,"props":522,"children":524},{"className":523},[],[525],{"type":26,"value":526},"shadingRate",{"type":26,"value":528}," and\n",{"type":21,"tag":51,"props":530,"children":532},{"className":531},[],[533],{"type":26,"value":534},"sampleCount",{"type":26,"value":536}," members",{"type":21,"tag":454,"props":538,"children":540},{"name":539},"Valid Usage (Implicit)",[541,567,592,638,662,691],{"type":21,"tag":459,"props":542,"children":544},{"name":543},"VUID-vkCmdSetCoarseSampleOrderNV-commandBuffer-parameter",[545],{"type":21,"tag":22,"props":546,"children":547},{},[548,553,554,557,559,565],{"type":21,"tag":51,"props":549,"children":551},{"className":550},[],[552],{"type":26,"value":92},{"type":26,"value":487},{"type":21,"tag":489,"props":555,"children":556},{"type":491},[],{"type":26,"value":558}," be a valid ",{"type":21,"tag":29,"props":560,"children":562},{"href":561},"/man/VkCommandBuffer",[563],{"type":26,"value":564},"VkCommandBuffer",{"type":26,"value":566}," handle",{"type":21,"tag":459,"props":568,"children":570},{"name":569},"VUID-vkCmdSetCoarseSampleOrderNV-sampleOrderType-parameter",[571],{"type":21,"tag":22,"props":572,"children":573},{},[574,579,580,583,584,590],{"type":21,"tag":51,"props":575,"children":577},{"className":576},[],[578],{"type":26,"value":111},{"type":26,"value":487},{"type":21,"tag":489,"props":581,"children":582},{"type":491},[],{"type":26,"value":558},{"type":21,"tag":29,"props":585,"children":587},{"href":586},"/man/VkCoarseSampleOrderTypeNV",[588],{"type":26,"value":589},"VkCoarseSampleOrderTypeNV",{"type":26,"value":591}," value",{"type":21,"tag":459,"props":593,"children":595},{"name":594},"VUID-vkCmdSetCoarseSampleOrderNV-pCustomSampleOrders-parameter",[596],{"type":21,"tag":22,"props":597,"children":598},{},[599,600,605,607,612,614,619,620,623,625,630,632,636],{"type":26,"value":378},{"type":21,"tag":51,"props":601,"children":603},{"className":602},[],[604],{"type":26,"value":352},{"type":26,"value":606}," is not ",{"type":21,"tag":51,"props":608,"children":610},{"className":609},[],[611],{"type":26,"value":500},{"type":26,"value":613},", ",{"type":21,"tag":51,"props":615,"children":617},{"className":616},[],[618],{"type":26,"value":363},{"type":26,"value":487},{"type":21,"tag":489,"props":621,"children":622},{"type":491},[],{"type":26,"value":624}," be a valid pointer to an array of ",{"type":21,"tag":51,"props":626,"children":628},{"className":627},[],[629],{"type":26,"value":352},{"type":26,"value":631}," valid ",{"type":21,"tag":29,"props":633,"children":634},{"href":368},[635],{"type":26,"value":371},{"type":26,"value":637}," structures",{"type":21,"tag":459,"props":639,"children":641},{"name":640},"VUID-vkCmdSetCoarseSampleOrderNV-commandBuffer-recording",[642],{"type":21,"tag":22,"props":643,"children":644},{},[645,650,651,654,656],{"type":21,"tag":51,"props":646,"children":648},{"className":647},[],[649],{"type":26,"value":92},{"type":26,"value":487},{"type":21,"tag":489,"props":652,"children":653},{"type":491},[],{"type":26,"value":655}," be in the ",{"type":21,"tag":29,"props":657,"children":659},{"href":658},"/chapters/commandbuffers#commandbuffers-lifecycle",[660],{"type":26,"value":661},"recording state",{"type":21,"tag":459,"props":663,"children":665},{"name":664},"VUID-vkCmdSetCoarseSampleOrderNV-commandBuffer-cmdpool",[666],{"type":21,"tag":22,"props":667,"children":668},{},[669,671,677,679,684,686,689],{"type":26,"value":670},"The ",{"type":21,"tag":51,"props":672,"children":674},{"className":673},[],[675],{"type":26,"value":676},"VkCommandPool",{"type":26,"value":678}," that ",{"type":21,"tag":51,"props":680,"children":682},{"className":681},[],[683],{"type":26,"value":92},{"type":26,"value":685}," was allocated from ",{"type":21,"tag":489,"props":687,"children":688},{"type":491},[],{"type":26,"value":690}," support graphics operations",{"type":21,"tag":459,"props":692,"children":694},{"name":693},"VUID-vkCmdSetCoarseSampleOrderNV-videocoding",[695],{"type":21,"tag":22,"props":696,"children":697},{},[698,700,703],{"type":26,"value":699},"This command ",{"type":21,"tag":489,"props":701,"children":702},{"type":491},[],{"type":26,"value":704}," only be called outside of a video coding scope",{"type":21,"tag":706,"props":707,"children":709},"validity-box",{"name":708},"Host Synchronization",[710],{"type":21,"tag":320,"props":711,"children":712},{},[713,729],{"type":21,"tag":324,"props":714,"children":715},{},[716,718,723,724,727],{"type":26,"value":717},"Host access to ",{"type":21,"tag":51,"props":719,"children":721},{"className":720},[],[722],{"type":26,"value":92},{"type":26,"value":487},{"type":21,"tag":489,"props":725,"children":726},{"type":491},[],{"type":26,"value":728}," be externally synchronized",{"type":21,"tag":324,"props":730,"children":731},{},[732,734,739,740,745,746,749],{"type":26,"value":733},"Host access to the ",{"type":21,"tag":51,"props":735,"children":737},{"className":736},[],[738],{"type":26,"value":676},{"type":26,"value":678},{"type":21,"tag":51,"props":741,"children":743},{"className":742},[],[744],{"type":26,"value":92},{"type":26,"value":685},{"type":21,"tag":489,"props":747,"children":748},{"type":491},[],{"type":26,"value":750}," be externally synchronized\n::",{"type":21,"tag":752,"props":753,"children":754},"style",{},[755],{"type":26,"value":756},"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":758},[],"markdown",1725732607795]