[{"data":1,"prerenderedAt":847},["ShallowReactive",2],{"EQb0xc4g1y":3},{"title":4,"description":5,"parent":6,"cmd_buf_level":7,"render_pass_scope":10,"supported_queue_types":11,"tasks":14,"type":16,"xrefs":17,"body":18,"_type":846,"_id":4},"vkCmdBindDescriptorBuffersEXT","Binding descriptor buffers to a command buffer","VK_EXT_descriptor_buffer",[8,9],"primary","secondary","both",[12,13],"graphics","compute",[15],"state","protos",[],{"type":19,"children":20,"toc":844},"root",[21,29,264,317,357,642,792,838],{"type":22,"tag":23,"props":24,"children":25},"element","p",{},[26],{"type":27,"value":28},"text","To bind descriptor buffers to a command buffer, call:",{"type":22,"tag":30,"props":31,"children":32},"code-group",{},[33,137],{"type":22,"tag":34,"props":35,"children":41},"pre",{"className":36,"code":37,"filename":38,"language":39,"meta":40,"style":40},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdBindDescriptorBuffersEXT(\n VkCommandBuffer commandBuffer,\n uint32_t bufferCount,\n const VkDescriptorBufferBindingInfoEXT* pBindingInfos);\n","C","c","",[42],{"type":22,"tag":43,"props":44,"children":45},"code",{"__ignoreMap":40},[46,70,90,108],{"type":22,"tag":47,"props":48,"children":51},"span",{"class":49,"line":50},"line",1,[52,58,64],{"type":22,"tag":47,"props":53,"children":55},{"style":54},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[56],{"type":27,"value":57},"void",{"type":22,"tag":47,"props":59,"children":61},{"style":60},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[62],{"type":27,"value":63}," vkCmdBindDescriptorBuffersEXT",{"type":22,"tag":47,"props":65,"children":67},{"style":66},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[68],{"type":27,"value":69},"(\n",{"type":22,"tag":47,"props":71,"children":73},{"class":49,"line":72},2,[74,79,85],{"type":22,"tag":47,"props":75,"children":76},{"style":66},[77],{"type":27,"value":78}," VkCommandBuffer ",{"type":22,"tag":47,"props":80,"children":82},{"style":81},"--shiki-default:#953800;--shiki-dark:#FFA657",[83],{"type":27,"value":84},"commandBuffer",{"type":22,"tag":47,"props":86,"children":87},{"style":66},[88],{"type":27,"value":89},",\n",{"type":22,"tag":47,"props":91,"children":93},{"class":49,"line":92},3,[94,99,104],{"type":22,"tag":47,"props":95,"children":96},{"style":54},[97],{"type":27,"value":98}," uint32_t",{"type":22,"tag":47,"props":100,"children":101},{"style":81},[102],{"type":27,"value":103}," bufferCount",{"type":22,"tag":47,"props":105,"children":106},{"style":66},[107],{"type":27,"value":89},{"type":22,"tag":47,"props":109,"children":111},{"class":49,"line":110},4,[112,117,122,127,132],{"type":22,"tag":47,"props":113,"children":114},{"style":54},[115],{"type":27,"value":116}," const",{"type":22,"tag":47,"props":118,"children":119},{"style":66},[120],{"type":27,"value":121}," VkDescriptorBufferBindingInfoEXT",{"type":22,"tag":47,"props":123,"children":124},{"style":54},[125],{"type":27,"value":126},"*",{"type":22,"tag":47,"props":128,"children":129},{"style":81},[130],{"type":27,"value":131}," pBindingInfos",{"type":22,"tag":47,"props":133,"children":134},{"style":66},[135],{"type":27,"value":136},");\n",{"type":22,"tag":34,"props":138,"children":143},{"className":139,"code":140,"filename":141,"language":142,"meta":40,"style":40},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_bind_descriptor_buffers_ext(\n command_buffer: vk::CommandBuffer,\n buffer_count: u32,\n p_binding_infos: *const vk::DescriptorBufferBindingInfoEXT,\n);\n","Rust","rs",[144],{"type":22,"tag":43,"props":145,"children":146},{"__ignoreMap":40},[147,169,201,222,256],{"type":22,"tag":47,"props":148,"children":149},{"class":49,"line":50},[150,155,160,165],{"type":22,"tag":47,"props":151,"children":152},{"style":54},[153],{"type":27,"value":154},"pub",{"type":22,"tag":47,"props":156,"children":157},{"style":54},[158],{"type":27,"value":159}," fn",{"type":22,"tag":47,"props":161,"children":162},{"style":60},[163],{"type":27,"value":164}," cmd_bind_descriptor_buffers_ext",{"type":22,"tag":47,"props":166,"children":167},{"style":66},[168],{"type":27,"value":69},{"type":22,"tag":47,"props":170,"children":171},{"class":49,"line":72},[172,177,182,187,192,197],{"type":22,"tag":47,"props":173,"children":174},{"style":66},[175],{"type":27,"value":176}," command_buffer",{"type":22,"tag":47,"props":178,"children":179},{"style":54},[180],{"type":27,"value":181},":",{"type":22,"tag":47,"props":183,"children":184},{"style":81},[185],{"type":27,"value":186}," vk",{"type":22,"tag":47,"props":188,"children":189},{"style":54},[190],{"type":27,"value":191},"::",{"type":22,"tag":47,"props":193,"children":194},{"style":81},[195],{"type":27,"value":196},"CommandBuffer",{"type":22,"tag":47,"props":198,"children":199},{"style":66},[200],{"type":27,"value":89},{"type":22,"tag":47,"props":202,"children":203},{"class":49,"line":92},[204,209,213,218],{"type":22,"tag":47,"props":205,"children":206},{"style":66},[207],{"type":27,"value":208}," buffer_count",{"type":22,"tag":47,"props":210,"children":211},{"style":54},[212],{"type":27,"value":181},{"type":22,"tag":47,"props":214,"children":215},{"style":81},[216],{"type":27,"value":217}," u32",{"type":22,"tag":47,"props":219,"children":220},{"style":66},[221],{"type":27,"value":89},{"type":22,"tag":47,"props":223,"children":224},{"class":49,"line":110},[225,230,234,239,243,247,252],{"type":22,"tag":47,"props":226,"children":227},{"style":66},[228],{"type":27,"value":229}," p_binding_infos",{"type":22,"tag":47,"props":231,"children":232},{"style":54},[233],{"type":27,"value":181},{"type":22,"tag":47,"props":235,"children":236},{"style":54},[237],{"type":27,"value":238}," *const",{"type":22,"tag":47,"props":240,"children":241},{"style":81},[242],{"type":27,"value":186},{"type":22,"tag":47,"props":244,"children":245},{"style":54},[246],{"type":27,"value":191},{"type":22,"tag":47,"props":248,"children":249},{"style":81},[250],{"type":27,"value":251},"DescriptorBufferBindingInfoEXT",{"type":22,"tag":47,"props":253,"children":254},{"style":66},[255],{"type":27,"value":89},{"type":22,"tag":47,"props":257,"children":259},{"class":49,"line":258},5,[260],{"type":22,"tag":47,"props":261,"children":262},{"style":66},[263],{"type":27,"value":136},{"type":22,"tag":265,"props":266,"children":267},"ul",{},[268,279,298],{"type":22,"tag":269,"props":270,"children":271},"li",{},[272,277],{"type":22,"tag":43,"props":273,"children":275},{"className":274},[],[276],{"type":27,"value":84},{"type":27,"value":278}," is the command buffer that the descriptor buffers\nwill be bound to.",{"type":22,"tag":269,"props":280,"children":281},{},[282,288,290,296],{"type":22,"tag":43,"props":283,"children":285},{"className":284},[],[286],{"type":27,"value":287},"bufferCount",{"type":27,"value":289}," is the number of elements in the ",{"type":22,"tag":43,"props":291,"children":293},{"className":292},[],[294],{"type":27,"value":295},"pBindingInfos",{"type":27,"value":297},"\narray.",{"type":22,"tag":269,"props":299,"children":300},{},[301,306,308,315],{"type":22,"tag":43,"props":302,"children":304},{"className":303},[],[305],{"type":27,"value":295},{"type":27,"value":307}," is a pointer to an array of\n",{"type":22,"tag":309,"props":310,"children":312},"a",{"href":311},"/man/VkDescriptorBufferBindingInfoEXT",[313],{"type":27,"value":314},"VkDescriptorBufferBindingInfoEXT",{"type":27,"value":316}," structures.",{"type":22,"tag":23,"props":318,"children":319},{},[320,325,327,333,335,341,343,348,350,355],{"type":22,"tag":43,"props":321,"children":323},{"className":322},[],[324],{"type":27,"value":4},{"type":27,"value":326}," causes any offsets previously set by\n",{"type":22,"tag":309,"props":328,"children":330},{"href":329},"/man/vkCmdSetDescriptorBufferOffsetsEXT",[331],{"type":27,"value":332},"vkCmdSetDescriptorBufferOffsetsEXT",{"type":27,"value":334}," that use the bindings numbered\n[",{"type":22,"tag":43,"props":336,"children":338},{"className":337},[],[339],{"type":27,"value":340},"0",{"type":27,"value":342},"..\n",{"type":22,"tag":43,"props":344,"children":346},{"className":345},[],[347],{"type":27,"value":287},{"type":27,"value":349},"-1] to be no longer valid for subsequent bound pipeline\ncommands.\nAny previously bound buffers at binding points greater than or equal to\n",{"type":22,"tag":43,"props":351,"children":353},{"className":352},[],[354],{"type":27,"value":287},{"type":27,"value":356}," are unbound.",{"type":22,"tag":358,"props":359,"children":361},"validity-group",{"name":360},"Valid Usage",[362,391,420,445,474,504,541,576,608],{"type":22,"tag":363,"props":364,"children":366},"validity-field",{"name":365},"VUID-vkCmdBindDescriptorBuffersEXT-None-08047",[367],{"type":22,"tag":23,"props":368,"children":369},{},[370,372,382,384,389],{"type":27,"value":371},"The ",{"type":22,"tag":309,"props":373,"children":375},{"href":374},"/man/VkPhysicalDeviceDescriptorBufferFeaturesEXT#features-descriptorBuffer",[376],{"type":22,"tag":43,"props":377,"children":379},{"className":378},[],[380],{"type":27,"value":381},"descriptorBuffer",{"type":27,"value":383}," feature ",{"type":22,"tag":385,"props":386,"children":388},"normative",{"type":387},"must",[],{"type":27,"value":390},"\nbe enabled",{"type":22,"tag":363,"props":392,"children":394},{"name":393},"VUID-vkCmdBindDescriptorBuffersEXT-maxSamplerDescriptorBufferBindings-08048",[395],{"type":22,"tag":23,"props":396,"children":397},{},[398,400,403,405,411,412,418],{"type":27,"value":399},"There ",{"type":22,"tag":385,"props":401,"children":402},{"type":387},[],{"type":27,"value":404}," be no more than\n",{"type":22,"tag":309,"props":406,"children":408},{"href":407},"/man/VkPhysicalDeviceDescriptorBufferPropertiesEXT",[409],{"type":27,"value":410},"VkPhysicalDeviceDescriptorBufferPropertiesEXT",{"type":27,"value":191},{"type":22,"tag":43,"props":413,"children":415},{"className":414},[],[416],{"type":27,"value":417},"maxSamplerDescriptorBufferBindings",{"type":27,"value":419},"\ndescriptor buffers containing sampler descriptor data bound",{"type":22,"tag":363,"props":421,"children":423},{"name":422},"VUID-vkCmdBindDescriptorBuffersEXT-maxResourceDescriptorBufferBindings-08049",[424],{"type":22,"tag":23,"props":425,"children":426},{},[427,428,431,432,436,437,443],{"type":27,"value":399},{"type":22,"tag":385,"props":429,"children":430},{"type":387},[],{"type":27,"value":404},{"type":22,"tag":309,"props":433,"children":434},{"href":407},[435],{"type":27,"value":410},{"type":27,"value":191},{"type":22,"tag":43,"props":438,"children":440},{"className":439},[],[441],{"type":27,"value":442},"maxResourceDescriptorBufferBindings",{"type":27,"value":444},"\ndescriptor buffers containing resource descriptor data bound",{"type":22,"tag":363,"props":446,"children":448},{"name":447},"VUID-vkCmdBindDescriptorBuffersEXT-None-08050",[449],{"type":22,"tag":23,"props":450,"children":451},{},[452,453,456,458,464,466,472],{"type":27,"value":399},{"type":22,"tag":385,"props":454,"children":455},{"type":387},[],{"type":27,"value":457}," be no more than ",{"type":22,"tag":43,"props":459,"children":461},{"className":460},[],[462],{"type":27,"value":463},"1",{"type":27,"value":465}," descriptor buffer bound that was created\nwith the\n",{"type":22,"tag":43,"props":467,"children":469},{"className":468},[],[470],{"type":27,"value":471},"VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT",{"type":27,"value":473}," bit set",{"type":22,"tag":363,"props":475,"children":477},{"name":476},"VUID-vkCmdBindDescriptorBuffersEXT-bufferCount-08051",[478],{"type":22,"tag":23,"props":479,"children":480},{},[481,486,488,491,493,497,498],{"type":22,"tag":43,"props":482,"children":484},{"className":483},[],[485],{"type":27,"value":287},{"type":27,"value":487}," ",{"type":22,"tag":385,"props":489,"children":490},{"type":387},[],{"type":27,"value":492}," be less than or equal to\n",{"type":22,"tag":309,"props":494,"children":495},{"href":407},[496],{"type":27,"value":410},{"type":27,"value":191},{"type":22,"tag":43,"props":499,"children":501},{"className":500},[],[502],{"type":27,"value":503},"maxDescriptorBufferBindings",{"type":22,"tag":363,"props":505,"children":507},{"name":506},"VUID-vkCmdBindDescriptorBuffersEXT-pBindingInfos-08052",[508],{"type":22,"tag":23,"props":509,"children":510},{},[511,513,518,520,526,528,531,533,539],{"type":27,"value":512},"For any element of ",{"type":22,"tag":43,"props":514,"children":516},{"className":515},[],[517],{"type":27,"value":295},{"type":27,"value":519},", if the buffer from which\n",{"type":22,"tag":43,"props":521,"children":523},{"className":522},[],[524],{"type":27,"value":525},"address",{"type":27,"value":527}," was queried is non-sparse then it ",{"type":22,"tag":385,"props":529,"children":530},{"type":387},[],{"type":27,"value":532}," be bound\ncompletely and contiguously to a single ",{"type":22,"tag":309,"props":534,"children":536},{"href":535},"/man/VkDeviceMemory",[537],{"type":27,"value":538},"VkDeviceMemory",{"type":27,"value":540}," object",{"type":22,"tag":363,"props":542,"children":544},{"name":543},"VUID-vkCmdBindDescriptorBuffersEXT-pBindingInfos-08053",[545],{"type":22,"tag":23,"props":546,"children":547},{},[548,549,554,556,561,563,566,568,574],{"type":27,"value":512},{"type":22,"tag":43,"props":550,"children":552},{"className":551},[],[553],{"type":27,"value":295},{"type":27,"value":555},", the buffer from which\n",{"type":22,"tag":43,"props":557,"children":559},{"className":558},[],[560],{"type":27,"value":525},{"type":27,"value":562}," was queried ",{"type":22,"tag":385,"props":564,"children":565},{"type":387},[],{"type":27,"value":567}," have been created with the\n",{"type":22,"tag":43,"props":569,"children":571},{"className":570},[],[572],{"type":27,"value":573},"VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT",{"type":27,"value":575}," bit set if it\ncontains sampler descriptor data",{"type":22,"tag":363,"props":577,"children":579},{"name":578},"VUID-vkCmdBindDescriptorBuffersEXT-pBindingInfos-08054",[580],{"type":22,"tag":23,"props":581,"children":582},{},[583,584,589,590,595,596,599,600,606],{"type":27,"value":512},{"type":22,"tag":43,"props":585,"children":587},{"className":586},[],[588],{"type":27,"value":295},{"type":27,"value":555},{"type":22,"tag":43,"props":591,"children":593},{"className":592},[],[594],{"type":27,"value":525},{"type":27,"value":562},{"type":22,"tag":385,"props":597,"children":598},{"type":387},[],{"type":27,"value":567},{"type":22,"tag":43,"props":601,"children":603},{"className":602},[],[604],{"type":27,"value":605},"VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT",{"type":27,"value":607}," bit set if it\ncontains resource descriptor data",{"type":22,"tag":363,"props":609,"children":611},{"name":610},"VUID-vkCmdBindDescriptorBuffersEXT-pBindingInfos-08055",[612],{"type":22,"tag":23,"props":613,"children":614},{},[615,616,621,623,629,630,633,635,640],{"type":27,"value":512},{"type":22,"tag":43,"props":617,"children":619},{"className":618},[],[620],{"type":27,"value":295},{"type":27,"value":622},", ",{"type":22,"tag":43,"props":624,"children":626},{"className":625},[],[627],{"type":27,"value":628},"usage",{"type":27,"value":487},{"type":22,"tag":385,"props":631,"children":632},{"type":387},[],{"type":27,"value":634}," match the\nbuffer from which ",{"type":22,"tag":43,"props":636,"children":638},{"className":637},[],[639],{"type":27,"value":525},{"type":27,"value":641}," was queried",{"type":22,"tag":358,"props":643,"children":645},{"name":644},"Valid Usage (Implicit)",[646,672,703,727,755,769],{"type":22,"tag":363,"props":647,"children":649},{"name":648},"VUID-vkCmdBindDescriptorBuffersEXT-commandBuffer-parameter",[650],{"type":22,"tag":23,"props":651,"children":652},{},[653,658,659,662,664,670],{"type":22,"tag":43,"props":654,"children":656},{"className":655},[],[657],{"type":27,"value":84},{"type":27,"value":487},{"type":22,"tag":385,"props":660,"children":661},{"type":387},[],{"type":27,"value":663}," be a valid ",{"type":22,"tag":309,"props":665,"children":667},{"href":666},"/man/VkCommandBuffer",[668],{"type":27,"value":669},"VkCommandBuffer",{"type":27,"value":671}," handle",{"type":22,"tag":363,"props":673,"children":675},{"name":674},"VUID-vkCmdBindDescriptorBuffersEXT-pBindingInfos-parameter",[676],{"type":22,"tag":23,"props":677,"children":678},{},[679,684,685,688,690,695,697,701],{"type":22,"tag":43,"props":680,"children":682},{"className":681},[],[683],{"type":27,"value":295},{"type":27,"value":487},{"type":22,"tag":385,"props":686,"children":687},{"type":387},[],{"type":27,"value":689}," be a valid pointer to an array of ",{"type":22,"tag":43,"props":691,"children":693},{"className":692},[],[694],{"type":27,"value":287},{"type":27,"value":696}," valid ",{"type":22,"tag":309,"props":698,"children":699},{"href":311},[700],{"type":27,"value":314},{"type":27,"value":702}," structures",{"type":22,"tag":363,"props":704,"children":706},{"name":705},"VUID-vkCmdBindDescriptorBuffersEXT-commandBuffer-recording",[707],{"type":22,"tag":23,"props":708,"children":709},{},[710,715,716,719,721],{"type":22,"tag":43,"props":711,"children":713},{"className":712},[],[714],{"type":27,"value":84},{"type":27,"value":487},{"type":22,"tag":385,"props":717,"children":718},{"type":387},[],{"type":27,"value":720}," be in the ",{"type":22,"tag":309,"props":722,"children":724},{"href":723},"/chapters/commandbuffers#commandbuffers-lifecycle",[725],{"type":27,"value":726},"recording state",{"type":22,"tag":363,"props":728,"children":730},{"name":729},"VUID-vkCmdBindDescriptorBuffersEXT-commandBuffer-cmdpool",[731],{"type":22,"tag":23,"props":732,"children":733},{},[734,735,741,743,748,750,753],{"type":27,"value":371},{"type":22,"tag":43,"props":736,"children":738},{"className":737},[],[739],{"type":27,"value":740},"VkCommandPool",{"type":27,"value":742}," that ",{"type":22,"tag":43,"props":744,"children":746},{"className":745},[],[747],{"type":27,"value":84},{"type":27,"value":749}," was allocated from ",{"type":22,"tag":385,"props":751,"children":752},{"type":387},[],{"type":27,"value":754}," support graphics, or compute operations",{"type":22,"tag":363,"props":756,"children":758},{"name":757},"VUID-vkCmdBindDescriptorBuffersEXT-videocoding",[759],{"type":22,"tag":23,"props":760,"children":761},{},[762,764,767],{"type":27,"value":763},"This command ",{"type":22,"tag":385,"props":765,"children":766},{"type":387},[],{"type":27,"value":768}," only be called outside of a video coding scope",{"type":22,"tag":363,"props":770,"children":772},{"name":771},"VUID-vkCmdBindDescriptorBuffersEXT-bufferCount-arraylength",[773],{"type":22,"tag":23,"props":774,"children":775},{},[776,781,782,785,787],{"type":22,"tag":43,"props":777,"children":779},{"className":778},[],[780],{"type":27,"value":287},{"type":27,"value":487},{"type":22,"tag":385,"props":783,"children":784},{"type":387},[],{"type":27,"value":786}," be greater than ",{"type":22,"tag":43,"props":788,"children":790},{"className":789},[],[791],{"type":27,"value":340},{"type":22,"tag":793,"props":794,"children":796},"validity-box",{"name":795},"Host Synchronization",[797],{"type":22,"tag":265,"props":798,"children":799},{},[800,816],{"type":22,"tag":269,"props":801,"children":802},{},[803,805,810,811,814],{"type":27,"value":804},"Host access to ",{"type":22,"tag":43,"props":806,"children":808},{"className":807},[],[809],{"type":27,"value":84},{"type":27,"value":487},{"type":22,"tag":385,"props":812,"children":813},{"type":387},[],{"type":27,"value":815}," be externally synchronized",{"type":22,"tag":269,"props":817,"children":818},{},[819,821,826,827,832,833,836],{"type":27,"value":820},"Host access to the ",{"type":22,"tag":43,"props":822,"children":824},{"className":823},[],[825],{"type":27,"value":740},{"type":27,"value":742},{"type":22,"tag":43,"props":828,"children":830},{"className":829},[],[831],{"type":27,"value":84},{"type":27,"value":749},{"type":22,"tag":385,"props":834,"children":835},{"type":387},[],{"type":27,"value":837}," be externally synchronized\n::",{"type":22,"tag":839,"props":840,"children":841},"style",{},[842],{"type":27,"value":843},"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":40,"searchDepth":72,"depth":72,"links":845},[],"markdown",1729612491671]