[{"data":1,"prerenderedAt":365},["ShallowReactive",2],{"sTeiKiADft":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":364,"_id":4},"VkSpecializationMapEntry","Structure specifying a specialization map entry","VK_VERSION_1_0","structs",[],{"type":10,"children":11,"toc":362},"root",[12,28,238,276,288,356],{"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,117],{"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 VkSpecializationMapEntry {\n uint32_t constantID;\n uint32_t offset;\n size_t size;\n} VkSpecializationMapEntry;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,81,94,108],{"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}," VkSpecializationMapEntry {\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}," constantID;\n",{"type":13,"tag":45,"props":82,"children":84},{"class":47,"line":83},3,[85,89],{"type":13,"tag":45,"props":86,"children":87},{"style":52},[88],{"type":18,"value":75},{"type":13,"tag":45,"props":90,"children":91},{"style":63},[92],{"type":18,"value":93}," offset;\n",{"type":13,"tag":45,"props":95,"children":97},{"class":47,"line":96},4,[98,103],{"type":13,"tag":45,"props":99,"children":100},{"style":52},[101],{"type":18,"value":102}," size_t",{"type":13,"tag":45,"props":104,"children":105},{"style":63},[106],{"type":18,"value":107}," size;\n",{"type":13,"tag":45,"props":109,"children":111},{"class":47,"line":110},5,[112],{"type":13,"tag":45,"props":113,"children":114},{"style":63},[115],{"type":18,"value":116},"} VkSpecializationMapEntry;\n",{"type":13,"tag":33,"props":118,"children":123},{"className":119,"code":120,"filename":121,"language":122,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct SpecializationMapEntry {\n constant_id: u32, // The SpecConstant ID specified in the BIL\n offset: u32, // Offset of the value in the data block\n size: usize, // Size in bytes of the SpecConstant\n}\n","Rust","rs",[124],{"type":13,"tag":21,"props":125,"children":126},{"__ignoreMap":39},[127,150,179,204,230],{"type":13,"tag":45,"props":128,"children":129},{"class":47,"line":48},[130,135,139,145],{"type":13,"tag":45,"props":131,"children":132},{"style":52},[133],{"type":18,"value":134},"pub",{"type":13,"tag":45,"props":136,"children":137},{"style":52},[138],{"type":18,"value":60},{"type":13,"tag":45,"props":140,"children":142},{"style":141},"--shiki-default:#953800;--shiki-dark:#FFA657",[143],{"type":18,"value":144}," SpecializationMapEntry",{"type":13,"tag":45,"props":146,"children":147},{"style":63},[148],{"type":18,"value":149}," {\n",{"type":13,"tag":45,"props":151,"children":152},{"class":47,"line":69},[153,158,163,168,173],{"type":13,"tag":45,"props":154,"children":155},{"style":63},[156],{"type":18,"value":157}," constant_id",{"type":13,"tag":45,"props":159,"children":160},{"style":52},[161],{"type":18,"value":162},":",{"type":13,"tag":45,"props":164,"children":165},{"style":141},[166],{"type":18,"value":167}," u32",{"type":13,"tag":45,"props":169,"children":170},{"style":63},[171],{"type":18,"value":172},", ",{"type":13,"tag":45,"props":174,"children":176},{"style":175},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[177],{"type":18,"value":178},"// The SpecConstant ID specified in the BIL\n",{"type":13,"tag":45,"props":180,"children":181},{"class":47,"line":83},[182,187,191,195,199],{"type":13,"tag":45,"props":183,"children":184},{"style":63},[185],{"type":18,"value":186}," offset",{"type":13,"tag":45,"props":188,"children":189},{"style":52},[190],{"type":18,"value":162},{"type":13,"tag":45,"props":192,"children":193},{"style":141},[194],{"type":18,"value":167},{"type":13,"tag":45,"props":196,"children":197},{"style":63},[198],{"type":18,"value":172},{"type":13,"tag":45,"props":200,"children":201},{"style":175},[202],{"type":18,"value":203},"// Offset of the value in the data block\n",{"type":13,"tag":45,"props":205,"children":206},{"class":47,"line":96},[207,212,216,221,225],{"type":13,"tag":45,"props":208,"children":209},{"style":63},[210],{"type":18,"value":211}," size",{"type":13,"tag":45,"props":213,"children":214},{"style":52},[215],{"type":18,"value":162},{"type":13,"tag":45,"props":217,"children":218},{"style":141},[219],{"type":18,"value":220}," usize",{"type":13,"tag":45,"props":222,"children":223},{"style":63},[224],{"type":18,"value":172},{"type":13,"tag":45,"props":226,"children":227},{"style":175},[228],{"type":18,"value":229},"// Size in bytes of the SpecConstant\n",{"type":13,"tag":45,"props":231,"children":232},{"class":47,"line":110},[233],{"type":13,"tag":45,"props":234,"children":235},{"style":63},[236],{"type":18,"value":237},"}\n",{"type":13,"tag":239,"props":240,"children":241},"ul",{},[242,254,265],{"type":13,"tag":243,"props":244,"children":245},"li",{},[246,252],{"type":13,"tag":21,"props":247,"children":249},{"className":248},[],[250],{"type":18,"value":251},"constantID",{"type":18,"value":253}," is the ID of the specialization constant in SPIR-V.",{"type":13,"tag":243,"props":255,"children":256},{},[257,263],{"type":13,"tag":21,"props":258,"children":260},{"className":259},[],[261],{"type":18,"value":262},"offset",{"type":18,"value":264}," is the byte offset of the specialization constant value\nwithin the supplied data buffer.",{"type":13,"tag":243,"props":266,"children":267},{},[268,274],{"type":13,"tag":21,"props":269,"children":271},{"className":270},[],[272],{"type":18,"value":273},"size",{"type":18,"value":275}," is the byte size of the specialization constant value within\nthe supplied data buffer.",{"type":13,"tag":14,"props":277,"children":278},{},[279,281,286],{"type":18,"value":280},"If a ",{"type":13,"tag":21,"props":282,"children":284},{"className":283},[],[285],{"type":18,"value":251},{"type":18,"value":287}," value is not a specialization constant ID used in the\nshader, that map entry does not affect the behavior of the pipeline.",{"type":13,"tag":289,"props":290,"children":292},"validity-group",{"name":291},"Valid Usage",[293],{"type":13,"tag":294,"props":295,"children":297},"validity-field",{"name":296},"VUID-VkSpecializationMapEntry-constantID-00776",[298],{"type":13,"tag":14,"props":299,"children":300},{},[301,303,308,310,315,317,322,324,329,331,337,338,343,344,347,349],{"type":18,"value":302},"For a ",{"type":13,"tag":21,"props":304,"children":306},{"className":305},[],[307],{"type":18,"value":251},{"type":18,"value":309}," specialization constant declared in a shader,\n",{"type":13,"tag":21,"props":311,"children":313},{"className":312},[],[314],{"type":18,"value":273},{"type":18,"value":316}," ",{"type":13,"tag":318,"props":319,"children":321},"normative",{"type":320},"must",[],{"type":18,"value":323}," match the byte size of the ",{"type":13,"tag":21,"props":325,"children":327},{"className":326},[],[328],{"type":18,"value":251},{"type":18,"value":330},".\nIf the specialization constant is of type ",{"type":13,"tag":21,"props":332,"children":334},{"className":333},[],[335],{"type":18,"value":336},"boolean",{"type":18,"value":172},{"type":13,"tag":21,"props":339,"children":341},{"className":340},[],[342],{"type":18,"value":273},{"type":18,"value":316},{"type":13,"tag":318,"props":345,"children":346},{"type":320},[],{"type":18,"value":348},"\nbe the byte size of ",{"type":13,"tag":350,"props":351,"children":353},"a",{"href":352},"/man/VkBool32",[354],{"type":18,"value":355},"VkBool32",{"type":13,"tag":357,"props":358,"children":359},"style",{},[360],{"type":18,"value":361},"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":363},[],"markdown",1725732587176]