[{"data":1,"prerenderedAt":1519},["ShallowReactive",2],{"$fUDRBqI26UUFH7zaaFiV7b_AwDr1BkZYIHHxNoTU-1NQ":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":1518,"_id":4},"VkDescriptorSetLayoutBinding","Structure specifying a descriptor set layout binding","VK_VERSION_1_0","structs",[],{"type":10,"children":11,"toc":1516},"root",[12,28,349,624,684,698,1482,1510],{"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,145],{"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 VkDescriptorSetLayoutBinding {\n uint32_t binding;\n VkDescriptorType descriptorType;\n uint32_t descriptorCount;\n VkShaderStageFlags stageFlags;\n const VkSampler* pImmutableSamplers;\n} VkDescriptorSetLayoutBinding;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,81,90,103,112,136],{"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}," VkDescriptorSetLayoutBinding {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71,76],{"type":13,"tag":45,"props":72,"children":73},{"style":52},[74],{"type":18,"value":75}," uint32_t",{"type":13,"tag":45,"props":77,"children":78},{"style":63},[79],{"type":18,"value":80}," binding;\n",{"type":13,"tag":45,"props":82,"children":84},{"class":47,"line":83},3,[85],{"type":13,"tag":45,"props":86,"children":87},{"style":63},[88],{"type":18,"value":89}," VkDescriptorType descriptorType;\n",{"type":13,"tag":45,"props":91,"children":93},{"class":47,"line":92},4,[94,98],{"type":13,"tag":45,"props":95,"children":96},{"style":52},[97],{"type":18,"value":75},{"type":13,"tag":45,"props":99,"children":100},{"style":63},[101],{"type":18,"value":102}," descriptorCount;\n",{"type":13,"tag":45,"props":104,"children":106},{"class":47,"line":105},5,[107],{"type":13,"tag":45,"props":108,"children":109},{"style":63},[110],{"type":18,"value":111}," VkShaderStageFlags stageFlags;\n",{"type":13,"tag":45,"props":113,"children":115},{"class":47,"line":114},6,[116,121,126,131],{"type":13,"tag":45,"props":117,"children":118},{"style":52},[119],{"type":18,"value":120}," const",{"type":13,"tag":45,"props":122,"children":123},{"style":63},[124],{"type":18,"value":125}," VkSampler",{"type":13,"tag":45,"props":127,"children":128},{"style":52},[129],{"type":18,"value":130},"*",{"type":13,"tag":45,"props":132,"children":133},{"style":63},[134],{"type":18,"value":135}," pImmutableSamplers;\n",{"type":13,"tag":45,"props":137,"children":139},{"class":47,"line":138},7,[140],{"type":13,"tag":45,"props":141,"children":142},{"style":63},[143],{"type":18,"value":144},"} VkDescriptorSetLayoutBinding;\n",{"type":13,"tag":33,"props":146,"children":151},{"className":147,"code":148,"filename":149,"language":150,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct DescriptorSetLayoutBinding {\n binding: u32, // Binding number for this entry\n descriptor_type: vk::DescriptorType, // Type of the descriptors in this binding\n descriptor_count: u32, // Number of descriptors in this binding\n stage_flags: vk::ShaderStageFlags, // Shader stages this binding is visible to\n p_immutable_samplers: *const vk::Sampler, // Immutable samplers (used if descriptor type is SAMPLER or COMBINED_IMAGE_SAMPLER, is either NULL or contains count number of elements)\n}\n","Rust","rs",[152],{"type":13,"tag":21,"props":153,"children":154},{"__ignoreMap":39},[155,178,207,243,268,302,341],{"type":13,"tag":45,"props":156,"children":157},{"class":47,"line":48},[158,163,167,173],{"type":13,"tag":45,"props":159,"children":160},{"style":52},[161],{"type":18,"value":162},"pub",{"type":13,"tag":45,"props":164,"children":165},{"style":52},[166],{"type":18,"value":60},{"type":13,"tag":45,"props":168,"children":170},{"style":169},"--shiki-default:#953800;--shiki-dark:#FFA657",[171],{"type":18,"value":172}," DescriptorSetLayoutBinding",{"type":13,"tag":45,"props":174,"children":175},{"style":63},[176],{"type":18,"value":177}," {\n",{"type":13,"tag":45,"props":179,"children":180},{"class":47,"line":69},[181,186,191,196,201],{"type":13,"tag":45,"props":182,"children":183},{"style":63},[184],{"type":18,"value":185}," binding",{"type":13,"tag":45,"props":187,"children":188},{"style":52},[189],{"type":18,"value":190},":",{"type":13,"tag":45,"props":192,"children":193},{"style":169},[194],{"type":18,"value":195}," u32",{"type":13,"tag":45,"props":197,"children":198},{"style":63},[199],{"type":18,"value":200},", ",{"type":13,"tag":45,"props":202,"children":204},{"style":203},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[205],{"type":18,"value":206},"// Binding number for this entry\n",{"type":13,"tag":45,"props":208,"children":209},{"class":47,"line":83},[210,215,219,224,229,234,238],{"type":13,"tag":45,"props":211,"children":212},{"style":63},[213],{"type":18,"value":214}," descriptor_type",{"type":13,"tag":45,"props":216,"children":217},{"style":52},[218],{"type":18,"value":190},{"type":13,"tag":45,"props":220,"children":221},{"style":169},[222],{"type":18,"value":223}," vk",{"type":13,"tag":45,"props":225,"children":226},{"style":52},[227],{"type":18,"value":228},"::",{"type":13,"tag":45,"props":230,"children":231},{"style":169},[232],{"type":18,"value":233},"DescriptorType",{"type":13,"tag":45,"props":235,"children":236},{"style":63},[237],{"type":18,"value":200},{"type":13,"tag":45,"props":239,"children":240},{"style":203},[241],{"type":18,"value":242},"// Type of the descriptors in this binding\n",{"type":13,"tag":45,"props":244,"children":245},{"class":47,"line":92},[246,251,255,259,263],{"type":13,"tag":45,"props":247,"children":248},{"style":63},[249],{"type":18,"value":250}," descriptor_count",{"type":13,"tag":45,"props":252,"children":253},{"style":52},[254],{"type":18,"value":190},{"type":13,"tag":45,"props":256,"children":257},{"style":169},[258],{"type":18,"value":195},{"type":13,"tag":45,"props":260,"children":261},{"style":63},[262],{"type":18,"value":200},{"type":13,"tag":45,"props":264,"children":265},{"style":203},[266],{"type":18,"value":267},"// Number of descriptors in this binding\n",{"type":13,"tag":45,"props":269,"children":270},{"class":47,"line":105},[271,276,280,284,288,293,297],{"type":13,"tag":45,"props":272,"children":273},{"style":63},[274],{"type":18,"value":275}," stage_flags",{"type":13,"tag":45,"props":277,"children":278},{"style":52},[279],{"type":18,"value":190},{"type":13,"tag":45,"props":281,"children":282},{"style":169},[283],{"type":18,"value":223},{"type":13,"tag":45,"props":285,"children":286},{"style":52},[287],{"type":18,"value":228},{"type":13,"tag":45,"props":289,"children":290},{"style":169},[291],{"type":18,"value":292},"ShaderStageFlags",{"type":13,"tag":45,"props":294,"children":295},{"style":63},[296],{"type":18,"value":200},{"type":13,"tag":45,"props":298,"children":299},{"style":203},[300],{"type":18,"value":301},"// Shader stages this binding is visible to\n",{"type":13,"tag":45,"props":303,"children":304},{"class":47,"line":114},[305,310,314,319,323,327,332,336],{"type":13,"tag":45,"props":306,"children":307},{"style":63},[308],{"type":18,"value":309}," p_immutable_samplers",{"type":13,"tag":45,"props":311,"children":312},{"style":52},[313],{"type":18,"value":190},{"type":13,"tag":45,"props":315,"children":316},{"style":52},[317],{"type":18,"value":318}," *const",{"type":13,"tag":45,"props":320,"children":321},{"style":169},[322],{"type":18,"value":223},{"type":13,"tag":45,"props":324,"children":325},{"style":52},[326],{"type":18,"value":228},{"type":13,"tag":45,"props":328,"children":329},{"style":169},[330],{"type":18,"value":331},"Sampler",{"type":13,"tag":45,"props":333,"children":334},{"style":63},[335],{"type":18,"value":200},{"type":13,"tag":45,"props":337,"children":338},{"style":203},[339],{"type":18,"value":340},"// Immutable samplers (used if descriptor type is SAMPLER or COMBINED_IMAGE_SAMPLER, is either NULL or contains count number of elements)\n",{"type":13,"tag":45,"props":342,"children":343},{"class":47,"line":138},[344],{"type":13,"tag":45,"props":345,"children":346},{"style":63},[347],{"type":18,"value":348},"}\n",{"type":13,"tag":350,"props":351,"children":352},"ul",{},[353,365,385,432,498],{"type":13,"tag":354,"props":355,"children":356},"li",{},[357,363],{"type":13,"tag":21,"props":358,"children":360},{"className":359},[],[361],{"type":18,"value":362},"binding",{"type":18,"value":364}," is the binding number of this entry and corresponds to a\nresource of the same binding number in the shader stages.",{"type":13,"tag":354,"props":366,"children":367},{},[368,374,376,383],{"type":13,"tag":21,"props":369,"children":371},{"className":370},[],[372],{"type":18,"value":373},"descriptorType",{"type":18,"value":375}," is a ",{"type":13,"tag":377,"props":378,"children":380},"a",{"href":379},"/man/VkDescriptorType",[381],{"type":18,"value":382},"VkDescriptorType",{"type":18,"value":384}," specifying which type\nof resource descriptors are used for this binding.",{"type":13,"tag":354,"props":386,"children":387},{},[388,394,396,401,403,409,411,416,418,423,425,430],{"type":13,"tag":21,"props":389,"children":391},{"className":390},[],[392],{"type":18,"value":393},"descriptorCount",{"type":18,"value":395}," is the number of descriptors contained in the\nbinding, accessed in a shader as an\narray, except if ",{"type":13,"tag":21,"props":397,"children":399},{"className":398},[],[400],{"type":18,"value":373},{"type":18,"value":402}," is\n",{"type":13,"tag":21,"props":404,"children":406},{"className":405},[],[407],{"type":18,"value":408},"VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK",{"type":18,"value":410}," in which case\n",{"type":13,"tag":21,"props":412,"children":414},{"className":413},[],[415],{"type":18,"value":393},{"type":18,"value":417}," is the size in bytes of the inline uniform block.\nIf ",{"type":13,"tag":21,"props":419,"children":421},{"className":420},[],[422],{"type":18,"value":393},{"type":18,"value":424}," is zero this binding entry is reserved and the\nresource ",{"type":13,"tag":426,"props":427,"children":429},"normative",{"type":428},"must",[],{"type":18,"value":431}," not be accessed from any stage via this binding within\nany pipeline using the set layout.",{"type":13,"tag":354,"props":433,"children":434},{},[435,441,443,449,451,455,457,463,465,468,470,474,476,481,483,486,488,491,493,496],{"type":13,"tag":21,"props":436,"children":438},{"className":437},[],[439],{"type":18,"value":440},"stageFlags",{"type":18,"value":442}," member is a bitmask of ",{"type":13,"tag":377,"props":444,"children":446},{"href":445},"/man/VkShaderStageFlagBits",[447],{"type":18,"value":448},"VkShaderStageFlagBits",{"type":18,"value":450},"\nspecifying which pipeline shader stages ",{"type":13,"tag":426,"props":452,"children":454},{"type":453},"can",[],{"type":18,"value":456}," access a resource for this\nbinding.\n",{"type":13,"tag":21,"props":458,"children":460},{"className":459},[],[461],{"type":18,"value":462},"VK_SHADER_STAGE_ALL",{"type":18,"value":464}," is a shorthand specifying that all defined\nshader stages, including any additional stages defined by extensions,\n",{"type":13,"tag":426,"props":466,"children":467},{"type":453},[],{"type":18,"value":469}," access the resource.",{"type":13,"tag":471,"props":472,"children":473},"br",{},[],{"type":18,"value":475},"If a shader stage is not included in ",{"type":13,"tag":21,"props":477,"children":479},{"className":478},[],[480],{"type":18,"value":440},{"type":18,"value":482},", then a resource ",{"type":13,"tag":426,"props":484,"children":485},{"type":428},[],{"type":18,"value":487},"\nnot be accessed from that stage via this binding within any pipeline using\nthe set layout.\nOther than input attachments which are limited to the fragment shader, there\nare no limitations on what combinations of stages ",{"type":13,"tag":426,"props":489,"children":490},{"type":453},[],{"type":18,"value":492}," use a descriptor\nbinding, and in particular a binding ",{"type":13,"tag":426,"props":494,"children":495},{"type":453},[],{"type":18,"value":497}," be used by both graphics stages\nand the compute stage.",{"type":13,"tag":354,"props":499,"children":500},{},[501,507,509,514,516,522,524,530,532,537,539,542,544,550,552,555,557,562,564,569,571,576,578,584,586,589,591,596,598,603,605,608,610,615,617,622],{"type":13,"tag":21,"props":502,"children":504},{"className":503},[],[505],{"type":18,"value":506},"pImmutableSamplers",{"type":18,"value":508}," affects initialization of samplers.\nIf ",{"type":13,"tag":21,"props":510,"children":512},{"className":511},[],[513],{"type":18,"value":373},{"type":18,"value":515}," specifies a ",{"type":13,"tag":21,"props":517,"children":519},{"className":518},[],[520],{"type":18,"value":521},"VK_DESCRIPTOR_TYPE_SAMPLER",{"type":18,"value":523}," or\n",{"type":13,"tag":21,"props":525,"children":527},{"className":526},[],[528],{"type":18,"value":529},"VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER",{"type":18,"value":531}," type descriptor, then\n",{"type":13,"tag":21,"props":533,"children":535},{"className":534},[],[536],{"type":18,"value":506},{"type":18,"value":538}," ",{"type":13,"tag":426,"props":540,"children":541},{"type":453},[],{"type":18,"value":543}," be used to initialize a set of ",{"type":13,"tag":545,"props":546,"children":547},"em",{},[548],{"type":18,"value":549},"immutable\nsamplers",{"type":18,"value":551},".\nImmutable samplers are permanently bound into the set layout and ",{"type":13,"tag":426,"props":553,"children":554},{"type":428},[],{"type":18,"value":556},"\nnot be changed; updating a ",{"type":13,"tag":21,"props":558,"children":560},{"className":559},[],[561],{"type":18,"value":521},{"type":18,"value":563}," descriptor\nwith immutable samplers is not allowed and updates to a\n",{"type":13,"tag":21,"props":565,"children":567},{"className":566},[],[568],{"type":18,"value":529},{"type":18,"value":570}," descriptor with\nimmutable samplers does not modify the samplers (the image views are\nupdated, but the sampler updates are ignored).\nIf ",{"type":13,"tag":21,"props":572,"children":574},{"className":573},[],[575],{"type":18,"value":506},{"type":18,"value":577}," is not ",{"type":13,"tag":21,"props":579,"children":581},{"className":580},[],[582],{"type":18,"value":583},"NULL",{"type":18,"value":585},", then it is a pointer to an\narray of sampler handles that will be copied into the set layout and\nused for the corresponding binding.\nOnly the sampler handles are copied; the sampler objects ",{"type":13,"tag":426,"props":587,"children":588},{"type":428},[],{"type":18,"value":590}," not be\ndestroyed before the final use of the set layout and any descriptor\npools and sets created using it.\nIf ",{"type":13,"tag":21,"props":592,"children":594},{"className":593},[],[595],{"type":18,"value":506},{"type":18,"value":597}," is ",{"type":13,"tag":21,"props":599,"children":601},{"className":600},[],[602],{"type":18,"value":583},{"type":18,"value":604},", then the sampler slots are\ndynamic and sampler handles ",{"type":13,"tag":426,"props":606,"children":607},{"type":428},[],{"type":18,"value":609}," be bound into descriptor sets using\nthis layout.\nIf ",{"type":13,"tag":21,"props":611,"children":613},{"className":612},[],[614],{"type":18,"value":373},{"type":18,"value":616}," is not one of these descriptor types, then\n",{"type":13,"tag":21,"props":618,"children":620},{"className":619},[],[621],{"type":18,"value":506},{"type":18,"value":623}," is ignored.",{"type":13,"tag":14,"props":625,"children":626},{},[627,629,635,637,642,644,649,651,656,658,664,665,670,672,676,678,682],{"type":18,"value":628},"The above layout definition allows the descriptor bindings to be specified\nsparsely such that not all binding numbers between 0 and the maximum binding\nnumber need to be specified in the ",{"type":13,"tag":21,"props":630,"children":632},{"className":631},[],[633],{"type":18,"value":634},"pBindings",{"type":18,"value":636}," array.\nBindings that are not specified have a ",{"type":13,"tag":21,"props":638,"children":640},{"className":639},[],[641],{"type":18,"value":393},{"type":18,"value":643}," and\n",{"type":13,"tag":21,"props":645,"children":647},{"className":646},[],[648],{"type":18,"value":440},{"type":18,"value":650}," of zero, and the value of ",{"type":13,"tag":21,"props":652,"children":654},{"className":653},[],[655],{"type":18,"value":373},{"type":18,"value":657}," is\nundefined.\nHowever, all binding numbers between 0 and the maximum binding number in the\n",{"type":13,"tag":377,"props":659,"children":661},{"href":660},"/man/VkDescriptorSetLayoutCreateInfo",[662],{"type":18,"value":663},"VkDescriptorSetLayoutCreateInfo",{"type":18,"value":228},{"type":13,"tag":21,"props":666,"children":668},{"className":667},[],[669],{"type":18,"value":634},{"type":18,"value":671}," array ",{"type":13,"tag":426,"props":673,"children":675},{"type":674},"may",[],{"type":18,"value":677}," consume\nmemory in the descriptor set layout even if not all descriptor bindings are\nused, though it ",{"type":13,"tag":426,"props":679,"children":681},{"type":680},"should",[],{"type":18,"value":683}," not consume additional memory from the descriptor\npool.",{"type":13,"tag":685,"props":686,"children":687},"note",{},[688],{"type":13,"tag":14,"props":689,"children":690},{},[691,693,696],{"type":18,"value":692},"The maximum binding number specified ",{"type":13,"tag":426,"props":694,"children":695},{"type":680},[],{"type":18,"value":697}," be as compact as possible to\navoid wasted memory.",{"type":13,"tag":699,"props":700,"children":702},"validity-group",{"name":701},"Valid Usage",[703,785,881,934,971,1009,1074,1118,1160,1214,1258,1314,1355,1392],{"type":13,"tag":704,"props":705,"children":707},"validity-field",{"name":706},"VUID-VkDescriptorSetLayoutBinding-descriptorType-00282",[708],{"type":13,"tag":14,"props":709,"children":710},{},[711,713,718,719,724,725,730,732,737,738,744,746,751,753,758,759,764,765,768,770,775,777,783],{"type":18,"value":712},"If ",{"type":13,"tag":21,"props":714,"children":716},{"className":715},[],[717],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":720,"children":722},{"className":721},[],[723],{"type":18,"value":521},{"type":18,"value":523},{"type":13,"tag":21,"props":726,"children":728},{"className":727},[],[729],{"type":18,"value":529},{"type":18,"value":731},", and\n",{"type":13,"tag":21,"props":733,"children":735},{"className":734},[],[736],{"type":18,"value":393},{"type":18,"value":577},{"type":13,"tag":21,"props":739,"children":741},{"className":740},[],[742],{"type":18,"value":743},"0",{"type":18,"value":745}," and ",{"type":13,"tag":21,"props":747,"children":749},{"className":748},[],[750],{"type":18,"value":506},{"type":18,"value":752}," is not\n",{"type":13,"tag":21,"props":754,"children":756},{"className":755},[],[757],{"type":18,"value":583},{"type":18,"value":200},{"type":13,"tag":21,"props":760,"children":762},{"className":761},[],[763],{"type":18,"value":506},{"type":18,"value":538},{"type":13,"tag":426,"props":766,"children":767},{"type":428},[],{"type":18,"value":769}," be a valid pointer to an array of\n",{"type":13,"tag":21,"props":771,"children":773},{"className":772},[],[774],{"type":18,"value":393},{"type":18,"value":776}," valid ",{"type":13,"tag":21,"props":778,"children":780},{"className":779},[],[781],{"type":18,"value":782},"VkSampler",{"type":18,"value":784}," handles",{"type":13,"tag":704,"props":786,"children":788},{"name":787},"VUID-VkDescriptorSetLayoutBinding-descriptorType-12200",[789],{"type":13,"tag":14,"props":790,"children":791},{},[792,793,798,799,804,805,810,811,816,817,822,823,828,830,835,836,839,841,846,848,868,870,874,875,879],{"type":18,"value":712},{"type":13,"tag":21,"props":794,"children":796},{"className":795},[],[797],{"type":18,"value":373},{"type":18,"value":402},{"type":13,"tag":21,"props":800,"children":802},{"className":801},[],[803],{"type":18,"value":529},{"type":18,"value":731},{"type":13,"tag":21,"props":806,"children":808},{"className":807},[],[809],{"type":18,"value":393},{"type":18,"value":577},{"type":13,"tag":21,"props":812,"children":814},{"className":813},[],[815],{"type":18,"value":743},{"type":18,"value":745},{"type":13,"tag":21,"props":818,"children":820},{"className":819},[],[821],{"type":18,"value":506},{"type":18,"value":752},{"type":13,"tag":21,"props":824,"children":826},{"className":825},[],[827],{"type":18,"value":583},{"type":18,"value":829},", either each element of ",{"type":13,"tag":21,"props":831,"children":833},{"className":832},[],[834],{"type":18,"value":506},{"type":18,"value":538},{"type":13,"tag":426,"props":837,"children":838},{"type":428},[],{"type":18,"value":840}," be a\n",{"type":13,"tag":21,"props":842,"children":844},{"className":843},[],[845],{"type":18,"value":782},{"type":18,"value":847}," that enables ",{"type":13,"tag":377,"props":849,"children":851},{"href":850},"/chapters/samplers#samplers-YCbCr-conversion",[852,854,860,861,866],{"type":18,"value":853},"sampler Y′C",{"type":13,"tag":855,"props":856,"children":857},"sub",{},[858],{"type":18,"value":859},"B",{"type":18,"value":37},{"type":13,"tag":855,"props":862,"children":863},{},[864],{"type":18,"value":865},"R",{"type":18,"value":867},"\nconversion",{"type":18,"value":869}," or none of them enable sampler Y′C",{"type":13,"tag":855,"props":871,"children":872},{},[873],{"type":18,"value":859},{"type":18,"value":37},{"type":13,"tag":855,"props":876,"children":877},{},[878],{"type":18,"value":865},{"type":18,"value":880}," conversion",{"type":13,"tag":704,"props":882,"children":884},{"name":883},"VUID-VkDescriptorSetLayoutBinding-descriptorType-12215",[885],{"type":13,"tag":14,"props":886,"children":887},{},[888,889,894,895,900,902,907,908,911,913,918,920],{"type":18,"value":712},{"type":13,"tag":21,"props":890,"children":892},{"className":891},[],[893],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":896,"children":898},{"className":897},[],[899],{"type":18,"value":521},{"type":18,"value":901},", each\nelement of ",{"type":13,"tag":21,"props":903,"children":905},{"className":904},[],[906],{"type":18,"value":506},{"type":18,"value":538},{"type":13,"tag":426,"props":909,"children":910},{"type":428},[],{"type":18,"value":912}," not be a ",{"type":13,"tag":21,"props":914,"children":916},{"className":915},[],[917],{"type":18,"value":782},{"type":18,"value":919},"\nobject that enables ",{"type":13,"tag":377,"props":921,"children":922},{"href":850},[923,924,928,929,933],{"type":18,"value":853},{"type":13,"tag":855,"props":925,"children":926},{},[927],{"type":18,"value":859},{"type":18,"value":37},{"type":13,"tag":855,"props":930,"children":931},{},[932],{"type":18,"value":865},{"type":18,"value":867},{"type":13,"tag":704,"props":935,"children":937},{"name":936},"VUID-VkDescriptorSetLayoutBinding-descriptorType-04604",[938],{"type":13,"tag":14,"props":939,"children":940},{},[941,943,953,955,960,961,964,966],{"type":18,"value":942},"If the ",{"type":13,"tag":377,"props":944,"children":946},{"href":945},"/man/VkPhysicalDeviceVulkan13Features#features-inlineUniformBlock",[947],{"type":13,"tag":21,"props":948,"children":950},{"className":949},[],[951],{"type":18,"value":952},"inlineUniformBlock",{"type":18,"value":954}," feature\nis not enabled, ",{"type":13,"tag":21,"props":956,"children":958},{"className":957},[],[959],{"type":18,"value":373},{"type":18,"value":538},{"type":13,"tag":426,"props":962,"children":963},{"type":428},[],{"type":18,"value":965}," not be\n",{"type":13,"tag":21,"props":967,"children":969},{"className":968},[],[970],{"type":18,"value":408},{"type":13,"tag":704,"props":972,"children":974},{"name":973},"VUID-VkDescriptorSetLayoutBinding-descriptorType-02209",[975],{"type":13,"tag":14,"props":976,"children":977},{},[978,979,984,985,990,992,997,998,1001,1003],{"type":18,"value":712},{"type":13,"tag":21,"props":980,"children":982},{"className":981},[],[983],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":986,"children":988},{"className":987},[],[989],{"type":18,"value":408},{"type":18,"value":991},"\nthen ",{"type":13,"tag":21,"props":993,"children":995},{"className":994},[],[996],{"type":18,"value":393},{"type":18,"value":538},{"type":13,"tag":426,"props":999,"children":1000},{"type":428},[],{"type":18,"value":1002}," be a multiple of ",{"type":13,"tag":21,"props":1004,"children":1006},{"className":1005},[],[1007],{"type":18,"value":1008},"4",{"type":13,"tag":704,"props":1010,"children":1012},{"name":1011},"VUID-VkDescriptorSetLayoutBinding-descriptorType-08004",[1013],{"type":13,"tag":14,"props":1014,"children":1015},{},[1016,1017,1022,1023,1028,1030,1034,1035,1041,1043,1049,1050,1055,1056,1059,1061,1067,1068],{"type":18,"value":712},{"type":13,"tag":21,"props":1018,"children":1020},{"className":1019},[],[1021],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":1024,"children":1026},{"className":1025},[],[1027],{"type":18,"value":408},{"type":18,"value":1029},"\nand ",{"type":13,"tag":377,"props":1031,"children":1032},{"href":660},[1033],{"type":18,"value":663},{"type":18,"value":228},{"type":13,"tag":21,"props":1036,"children":1038},{"className":1037},[],[1039],{"type":18,"value":1040},"flags",{"type":18,"value":1042}," does not contain\n",{"type":13,"tag":21,"props":1044,"children":1046},{"className":1045},[],[1047],{"type":18,"value":1048},"VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT",{"type":18,"value":991},{"type":13,"tag":21,"props":1051,"children":1053},{"className":1052},[],[1054],{"type":18,"value":393},{"type":18,"value":538},{"type":13,"tag":426,"props":1057,"children":1058},{"type":428},[],{"type":18,"value":1060}," be less than or equal to\n",{"type":13,"tag":21,"props":1062,"children":1064},{"className":1063},[],[1065],{"type":18,"value":1066},"VkPhysicalDeviceInlineUniformBlockProperties",{"type":18,"value":228},{"type":13,"tag":21,"props":1069,"children":1071},{"className":1070},[],[1072],{"type":18,"value":1073},"maxInlineUniformBlockSize",{"type":13,"tag":704,"props":1075,"children":1077},{"name":1076},"VUID-VkDescriptorSetLayoutBinding-flags-08005",[1078],{"type":13,"tag":14,"props":1079,"children":1080},{},[1081,1082,1086,1087,1092,1094,1100,1102,1107,1108,1111,1113],{"type":18,"value":712},{"type":13,"tag":377,"props":1083,"children":1084},{"href":660},[1085],{"type":18,"value":663},{"type":18,"value":228},{"type":13,"tag":21,"props":1088,"children":1090},{"className":1089},[],[1091],{"type":18,"value":1040},{"type":18,"value":1093}," contains\n",{"type":13,"tag":21,"props":1095,"children":1097},{"className":1096},[],[1098],{"type":18,"value":1099},"VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT",{"type":18,"value":1101},",\n",{"type":13,"tag":21,"props":1103,"children":1105},{"className":1104},[],[1106],{"type":18,"value":373},{"type":18,"value":538},{"type":13,"tag":426,"props":1109,"children":1110},{"type":428},[],{"type":18,"value":1112}," be ",{"type":13,"tag":21,"props":1114,"children":1116},{"className":1115},[],[1117],{"type":18,"value":521},{"type":13,"tag":704,"props":1119,"children":1121},{"name":1120},"VUID-VkDescriptorSetLayoutBinding-flags-08006",[1122],{"type":13,"tag":14,"props":1123,"children":1124},{},[1125,1126,1130,1131,1136,1137,1142,1143,1148,1149,1152,1154],{"type":18,"value":712},{"type":13,"tag":377,"props":1127,"children":1128},{"href":660},[1129],{"type":18,"value":663},{"type":18,"value":228},{"type":13,"tag":21,"props":1132,"children":1134},{"className":1133},[],[1135],{"type":18,"value":1040},{"type":18,"value":1093},{"type":13,"tag":21,"props":1138,"children":1140},{"className":1139},[],[1141],{"type":18,"value":1099},{"type":18,"value":1101},{"type":13,"tag":21,"props":1144,"children":1146},{"className":1145},[],[1147],{"type":18,"value":393},{"type":18,"value":538},{"type":13,"tag":426,"props":1150,"children":1151},{"type":428},[],{"type":18,"value":1153}," be less than or equal to ",{"type":13,"tag":21,"props":1155,"children":1157},{"className":1156},[],[1158],{"type":18,"value":1159},"1",{"type":13,"tag":704,"props":1161,"children":1163},{"name":1162},"VUID-VkDescriptorSetLayoutBinding-flags-08007",[1164],{"type":13,"tag":14,"props":1165,"children":1166},{},[1167,1168,1172,1173,1178,1179,1184,1186,1191,1193,1198,1199,1204,1207,1209],{"type":18,"value":712},{"type":13,"tag":377,"props":1169,"children":1170},{"href":660},[1171],{"type":18,"value":663},{"type":18,"value":228},{"type":13,"tag":21,"props":1174,"children":1176},{"className":1175},[],[1177],{"type":18,"value":1040},{"type":18,"value":1093},{"type":13,"tag":21,"props":1180,"children":1182},{"className":1181},[],[1183],{"type":18,"value":1099},{"type":18,"value":1185},",\nand ",{"type":13,"tag":21,"props":1187,"children":1189},{"className":1188},[],[1190],{"type":18,"value":393},{"type":18,"value":1192}," is equal to ",{"type":13,"tag":21,"props":1194,"children":1196},{"className":1195},[],[1197],{"type":18,"value":1159},{"type":18,"value":200},{"type":13,"tag":21,"props":1200,"children":1202},{"className":1201},[],[1203],{"type":18,"value":506},{"type":13,"tag":426,"props":1205,"children":1206},{"type":428},[],{"type":18,"value":1208}," not be ",{"type":13,"tag":21,"props":1210,"children":1212},{"className":1211},[],[1213],{"type":18,"value":583},{"type":13,"tag":704,"props":1215,"children":1217},{"name":1216},"VUID-VkDescriptorSetLayoutBinding-descriptorCount-09465",[1218],{"type":13,"tag":14,"props":1219,"children":1220},{},[1221,1222,1227,1228,1233,1234,1239,1240,1243,1245,1250,1252,1256],{"type":18,"value":712},{"type":13,"tag":21,"props":1223,"children":1225},{"className":1224},[],[1226],{"type":18,"value":393},{"type":18,"value":577},{"type":13,"tag":21,"props":1229,"children":1231},{"className":1230},[],[1232],{"type":18,"value":743},{"type":18,"value":200},{"type":13,"tag":21,"props":1235,"children":1237},{"className":1236},[],[1238],{"type":18,"value":440},{"type":18,"value":538},{"type":13,"tag":426,"props":1241,"children":1242},{"type":428},[],{"type":18,"value":1244}," be\n",{"type":13,"tag":21,"props":1246,"children":1248},{"className":1247},[],[1249],{"type":18,"value":462},{"type":18,"value":1251}," or a valid combination of other\n",{"type":13,"tag":377,"props":1253,"children":1254},{"href":445},[1255],{"type":18,"value":448},{"type":18,"value":1257}," values",{"type":13,"tag":704,"props":1259,"children":1261},{"name":1260},"VUID-VkDescriptorSetLayoutBinding-descriptorType-01510",[1262],{"type":13,"tag":14,"props":1263,"children":1264},{},[1265,1266,1271,1272,1278,1279,1284,1285,1290,1292,1297,1298,1301,1302,1307,1308],{"type":18,"value":712},{"type":13,"tag":21,"props":1267,"children":1269},{"className":1268},[],[1270],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":1273,"children":1275},{"className":1274},[],[1276],{"type":18,"value":1277},"VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT",{"type":18,"value":643},{"type":13,"tag":21,"props":1280,"children":1282},{"className":1281},[],[1283],{"type":18,"value":393},{"type":18,"value":577},{"type":13,"tag":21,"props":1286,"children":1288},{"className":1287},[],[1289],{"type":18,"value":743},{"type":18,"value":1291},", then ",{"type":13,"tag":21,"props":1293,"children":1295},{"className":1294},[],[1296],{"type":18,"value":440},{"type":18,"value":538},{"type":13,"tag":426,"props":1299,"children":1300},{"type":428},[],{"type":18,"value":1112},{"type":13,"tag":21,"props":1303,"children":1305},{"className":1304},[],[1306],{"type":18,"value":743},{"type":18,"value":523},{"type":13,"tag":21,"props":1309,"children":1311},{"className":1310},[],[1312],{"type":18,"value":1313},"VK_SHADER_STAGE_FRAGMENT_BIT",{"type":13,"tag":704,"props":1315,"children":1317},{"name":1316},"VUID-VkDescriptorSetLayoutBinding-pImmutableSamplers-04009",[1318],{"type":13,"tag":14,"props":1319,"children":1320},{},[1321,1323,1328,1329,1332,1334,1340,1342,1348,1349],{"type":18,"value":1322},"The sampler objects indicated by ",{"type":13,"tag":21,"props":1324,"children":1326},{"className":1325},[],[1327],{"type":18,"value":506},{"type":18,"value":538},{"type":13,"tag":426,"props":1330,"children":1331},{"type":428},[],{"type":18,"value":1333}," not have\na ",{"type":13,"tag":21,"props":1335,"children":1337},{"className":1336},[],[1338],{"type":18,"value":1339},"borderColor",{"type":18,"value":1341}," with one of the values\n",{"type":13,"tag":21,"props":1343,"children":1345},{"className":1344},[],[1346],{"type":18,"value":1347},"VK_BORDER_COLOR_FLOAT_CUSTOM_EXT",{"type":18,"value":523},{"type":13,"tag":21,"props":1350,"children":1352},{"className":1351},[],[1353],{"type":18,"value":1354},"VK_BORDER_COLOR_INT_CUSTOM_EXT",{"type":13,"tag":704,"props":1356,"children":1358},{"name":1357},"VUID-VkDescriptorSetLayoutBinding-descriptorType-04605",[1359],{"type":13,"tag":14,"props":1360,"children":1361},{},[1362,1363,1368,1369,1375,1377,1382,1383,1386,1387],{"type":18,"value":712},{"type":13,"tag":21,"props":1364,"children":1366},{"className":1365},[],[1367],{"type":18,"value":373},{"type":18,"value":597},{"type":13,"tag":21,"props":1370,"children":1372},{"className":1371},[],[1373],{"type":18,"value":1374},"VK_DESCRIPTOR_TYPE_MUTABLE_EXT",{"type":18,"value":1376},", then\n",{"type":13,"tag":21,"props":1378,"children":1380},{"className":1379},[],[1381],{"type":18,"value":506},{"type":18,"value":538},{"type":13,"tag":426,"props":1384,"children":1385},{"type":428},[],{"type":18,"value":1112},{"type":13,"tag":21,"props":1388,"children":1390},{"className":1389},[],[1391],{"type":18,"value":583},{"type":13,"tag":704,"props":1393,"children":1395},{"name":1394},"VUID-VkDescriptorSetLayoutBinding-flags-09466",[1396],{"type":13,"tag":14,"props":1397,"children":1398},{},[1399,1400,1404,1405,1410,1411,1417,1418,1423,1424,1429,1430,1435,1436,1439,1441,1447,1448,1454,1455,1461,1462,1468,1469,1474,1475,1481],{"type":18,"value":712},{"type":13,"tag":377,"props":1401,"children":1402},{"href":660},[1403],{"type":18,"value":663},{"type":18,"value":228},{"type":13,"tag":21,"props":1406,"children":1408},{"className":1407},[],[1409],{"type":18,"value":1040},{"type":18,"value":1093},{"type":13,"tag":21,"props":1412,"children":1414},{"className":1413},[],[1415],{"type":18,"value":1416},"VK_DESCRIPTOR_SET_LAYOUT_CREATE_PER_STAGE_BIT_NV",{"type":18,"value":731},{"type":13,"tag":21,"props":1419,"children":1421},{"className":1420},[],[1422],{"type":18,"value":393},{"type":18,"value":577},{"type":13,"tag":21,"props":1425,"children":1427},{"className":1426},[],[1428],{"type":18,"value":743},{"type":18,"value":1291},{"type":13,"tag":21,"props":1431,"children":1433},{"className":1432},[],[1434],{"type":18,"value":440},{"type":18,"value":538},{"type":13,"tag":426,"props":1437,"children":1438},{"type":428},[],{"type":18,"value":1440}," be a valid\ncombination of ",{"type":13,"tag":21,"props":1442,"children":1444},{"className":1443},[],[1445],{"type":18,"value":1446},"VK_SHADER_STAGE_VERTEX_BIT",{"type":18,"value":1101},{"type":13,"tag":21,"props":1449,"children":1451},{"className":1450},[],[1452],{"type":18,"value":1453},"VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT",{"type":18,"value":1101},{"type":13,"tag":21,"props":1456,"children":1458},{"className":1457},[],[1459],{"type":18,"value":1460},"VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT",{"type":18,"value":1101},{"type":13,"tag":21,"props":1463,"children":1465},{"className":1464},[],[1466],{"type":18,"value":1467},"VK_SHADER_STAGE_GEOMETRY_BIT",{"type":18,"value":200},{"type":13,"tag":21,"props":1470,"children":1472},{"className":1471},[],[1473],{"type":18,"value":1313},{"type":18,"value":1029},{"type":13,"tag":21,"props":1476,"children":1478},{"className":1477},[],[1479],{"type":18,"value":1480},"VK_SHADER_STAGE_COMPUTE_BIT",{"type":18,"value":1257},{"type":13,"tag":699,"props":1483,"children":1485},{"name":1484},"Valid Usage (Implicit)",[1486],{"type":13,"tag":704,"props":1487,"children":1489},{"name":1488},"VUID-VkDescriptorSetLayoutBinding-descriptorType-parameter",[1490],{"type":13,"tag":14,"props":1491,"children":1492},{},[1493,1498,1499,1502,1504,1508],{"type":13,"tag":21,"props":1494,"children":1496},{"className":1495},[],[1497],{"type":18,"value":373},{"type":18,"value":538},{"type":13,"tag":426,"props":1500,"children":1501},{"type":428},[],{"type":18,"value":1503}," be a valid ",{"type":13,"tag":377,"props":1505,"children":1506},{"href":379},[1507],{"type":18,"value":382},{"type":18,"value":1509}," value",{"type":13,"tag":1511,"props":1512,"children":1513},"style",{},[1514],{"type":18,"value":1515},"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":1517},[],"markdown",1776503205335]