[{"data":1,"prerenderedAt":5335},["ShallowReactive",2],{"nxW3VRZlEQ":3,"VyF3Mmj32r":3750,"N9m89Rcq0G":3975},{"title":4,"description":5,"body":6,"_type":3748,"_id":3749},"Sparse Resources","As documented in Resource Memory Association,\nVkBuffer and VkImage resources in Vulkan be bound\ncompletely and contiguously to a single VkDeviceMemory object.\nThis binding be done before the resource is used, and the binding is\nimmutable for the lifetime of the resource.",{"type":7,"children":8,"toc":3723},"root",[9,17,69,80,121,128,170,697,703,754,784,791,817,823,860,866,890,932,938,950,961,973,978,994,1007,1019,1025,1067,1103,1119,1131,1154,1185,1203,1213,1231,1246,1255,1267,1276,1284,1300,1309,1317,1335,1341,1346,1367,1380,1630,1961,1991,2021,2033,2039,2075,2093,2107,2113,2125,2134,2141,2158,2165,2170,2188,2193,2206,2249,2264,2274,2350,2367,2390,2396,2401,2458,2463,2499,2505,2728,2733,2760,2770,2775,2795,2801,2809,2819,2828,2837,2845,2854,2862,2867,2928,2983,2988,3007,3013,3054,3060,3078,3104,3121,3127,3135,3143,3151,3159,3168,3176,3181,3216,3244,3275,3293,3334,3381,3454,3473,3527,3576,3581,3587,3595,3604,3613,3622,3630,3639,3648,3656,3665,3708,3717],{"type":10,"tag":11,"props":12,"children":14},"element","h1",{"id":13},"sparsememory",[15],{"type":16,"value":4},"text",{"type":10,"tag":18,"props":19,"children":20},"p",{},[21,23,30,32,39,41,47,49,54,56,62,64,67],{"type":16,"value":22},"As documented in ",{"type":10,"tag":24,"props":25,"children":27},"a",{"href":26},"/chapters/resources#resources-association",[28],{"type":16,"value":29},"Resource Memory Association",{"type":16,"value":31},",\n",{"type":10,"tag":33,"props":34,"children":36},"code",{"className":35},[],[37],{"type":16,"value":38},"VkBuffer",{"type":16,"value":40}," and ",{"type":10,"tag":33,"props":42,"children":44},{"className":43},[],[45],{"type":16,"value":46},"VkImage",{"type":16,"value":48}," resources in Vulkan ",{"type":10,"tag":50,"props":51,"children":53},"normative",{"type":52},"must",[],{"type":16,"value":55}," be bound\ncompletely and contiguously to a single ",{"type":10,"tag":33,"props":57,"children":59},{"className":58},[],[60],{"type":16,"value":61},"VkDeviceMemory",{"type":16,"value":63}," object.\nThis binding ",{"type":10,"tag":50,"props":65,"children":66},{"type":52},[],{"type":16,"value":68}," be done before the resource is used, and the binding is\nimmutable for the lifetime of the resource.",{"type":10,"tag":18,"props":70,"children":71},{},[72,78],{"type":10,"tag":73,"props":74,"children":75},"em",{},[76],{"type":16,"value":77},"Sparse resources",{"type":16,"value":79}," relax these restrictions and provide these additional\nfeatures:",{"type":10,"tag":81,"props":82,"children":83},"ul",{},[84,103,112],{"type":10,"tag":85,"props":86,"children":87},"li",{},[88,90,94,96,101],{"type":16,"value":89},"Sparse resources ",{"type":10,"tag":50,"props":91,"children":93},{"type":92},"can",[],{"type":16,"value":95}," be bound non-contiguously to one or more\n",{"type":10,"tag":33,"props":97,"children":99},{"className":98},[],[100],{"type":16,"value":61},{"type":16,"value":102}," allocations.",{"type":10,"tag":85,"props":104,"children":105},{},[106,107,110],{"type":16,"value":89},{"type":10,"tag":50,"props":108,"children":109},{"type":92},[],{"type":16,"value":111}," be re-bound to different memory allocations over\nthe lifetime of the resource.",{"type":10,"tag":85,"props":113,"children":114},{},[115,116,119],{"type":16,"value":89},{"type":10,"tag":50,"props":117,"children":118},{"type":92},[],{"type":16,"value":120}," have descriptors generated and used orthogonally\nwith memory binding commands.",{"type":10,"tag":122,"props":123,"children":125},"h2",{"id":124},"sparsememory-sparseresourcefeatures",[126],{"type":16,"value":127},"Sparse Resource Features",{"type":10,"tag":18,"props":129,"children":130},{},[131,133,136,138,144,146,152,154,160,162,168],{"type":16,"value":132},"Sparse resources have several features that ",{"type":10,"tag":50,"props":134,"children":135},{"type":52},[],{"type":16,"value":137}," be enabled explicitly at\nresource creation time.\nThe features are enabled by including bits in the ",{"type":10,"tag":33,"props":139,"children":141},{"className":140},[],[142],{"type":16,"value":143},"flags",{"type":16,"value":145}," parameter of\n",{"type":10,"tag":24,"props":147,"children":149},{"href":148},"/man/VkImageCreateInfo",[150],{"type":16,"value":151},"VkImageCreateInfo",{"type":16,"value":153}," or ",{"type":10,"tag":24,"props":155,"children":157},{"href":156},"/man/VkBufferCreateInfo",[158],{"type":16,"value":159},"VkBufferCreateInfo",{"type":16,"value":161},".\nEach feature also has one or more corresponding feature enables specified in\n",{"type":10,"tag":24,"props":163,"children":165},{"href":164},"/man/VkPhysicalDeviceFeatures",[166],{"type":16,"value":167},"VkPhysicalDeviceFeatures",{"type":16,"value":169},".",{"type":10,"tag":81,"props":171,"children":172},{},[173,279,658],{"type":10,"tag":85,"props":174,"children":175},{},[176,178,188,190],{"type":16,"value":177},"The ",{"type":10,"tag":24,"props":179,"children":181},{"href":180},"/man/VkPhysicalDeviceFeatures#features-sparseBinding",[182],{"type":10,"tag":33,"props":183,"children":185},{"className":184},[],[186],{"type":16,"value":187},"sparseBinding",{"type":16,"value":189}," feature is the base,\nand provides the following capabilities:",{"type":10,"tag":81,"props":191,"children":192},{},[193,203,213,218,223,244],{"type":10,"tag":85,"props":194,"children":195},{},[196,198,201],{"type":16,"value":197},"Resources ",{"type":10,"tag":50,"props":199,"children":200},{"type":92},[],{"type":16,"value":202}," be bound at some defined (sparse block) granularity.",{"type":10,"tag":85,"props":204,"children":205},{},[206,208,211],{"type":16,"value":207},"The entire resource ",{"type":10,"tag":50,"props":209,"children":210},{"type":52},[],{"type":16,"value":212}," be bound to memory before use regardless of\nregions actually accessed.",{"type":10,"tag":85,"props":214,"children":215},{},[216],{"type":16,"value":217},"No specific mapping of image region to memory offset is defined, i.e.\nthe location that each texel corresponds to in memory is\nimplementation-dependent.",{"type":10,"tag":85,"props":219,"children":220},{},[221],{"type":16,"value":222},"Sparse buffers have a well-defined mapping of buffer range to memory\nrange, where an offset into a range of the buffer that is bound to a\nsingle contiguous range of memory corresponds to an identical offset\nwithin that range of memory.",{"type":10,"tag":85,"props":224,"children":225},{},[226,228,234,236,242],{"type":16,"value":227},"Requested via the ",{"type":10,"tag":33,"props":229,"children":231},{"className":230},[],[232],{"type":16,"value":233},"VK_IMAGE_CREATE_SPARSE_BINDING_BIT",{"type":16,"value":235}," and\n",{"type":10,"tag":33,"props":237,"children":239},{"className":238},[],[240],{"type":16,"value":241},"VK_BUFFER_CREATE_SPARSE_BINDING_BIT",{"type":16,"value":243}," bits.",{"type":10,"tag":85,"props":245,"children":246},{},[247,249,254,256,262,264,270,271,277],{"type":16,"value":248},"A sparse image created using ",{"type":10,"tag":33,"props":250,"children":252},{"className":251},[],[253],{"type":16,"value":233},{"type":16,"value":255},"\n(but not ",{"type":10,"tag":33,"props":257,"children":259},{"className":258},[],[260],{"type":16,"value":261},"VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT",{"type":16,"value":263},") supports all\nformats that non-sparse usage supports, and supports both\n",{"type":10,"tag":33,"props":265,"children":267},{"className":266},[],[268],{"type":16,"value":269},"VK_IMAGE_TILING_OPTIMAL",{"type":16,"value":40},{"type":10,"tag":33,"props":272,"children":274},{"className":273},[],[275],{"type":16,"value":276},"VK_IMAGE_TILING_LINEAR",{"type":16,"value":278}," tiling.",{"type":10,"tag":85,"props":280,"children":281},{},[282,287,289,294,296],{"type":10,"tag":73,"props":283,"children":284},{},[285],{"type":16,"value":286},"Sparse Residency",{"type":16,"value":288}," builds on (and requires) the ",{"type":10,"tag":33,"props":290,"children":292},{"className":291},[],[293],{"type":16,"value":187},{"type":16,"value":295},"\nfeature.\nIt includes the following capabilities:",{"type":10,"tag":81,"props":297,"children":298},{},[299,304,309,330,347,621],{"type":10,"tag":85,"props":300,"children":301},{},[302],{"type":16,"value":303},"Resources do not have to be completely bound to memory before use on\nthe device.",{"type":10,"tag":85,"props":305,"children":306},{},[307],{"type":16,"value":308},"Images have a prescribed sparse image block layout, allowing specific\nrectangular regions of the image to be bound to specific offsets in\nmemory allocations.",{"type":10,"tag":85,"props":310,"children":311},{},[312,314,320,322,328],{"type":16,"value":313},"Consistency of access to unbound regions of the resource is defined by\nthe absence or presence of\n",{"type":10,"tag":33,"props":315,"children":317},{"className":316},[],[318],{"type":16,"value":319},"VkPhysicalDeviceSparseProperties",{"type":16,"value":321},"::",{"type":10,"tag":33,"props":323,"children":325},{"className":324},[],[326],{"type":16,"value":327},"residencyNonResidentStrict",{"type":16,"value":329},".\nIf this property is present, accesses to unbound regions of the\nresource are well defined and behave as if the data bound is populated\nwith all zeros; writes are discarded.\nWhen this property is absent, accesses are considered safe, but reads\nwill return undefined: values.",{"type":10,"tag":85,"props":331,"children":332},{},[333,334,339,340,346],{"type":16,"value":227},{"type":10,"tag":33,"props":335,"children":337},{"className":336},[],[338],{"type":16,"value":261},{"type":16,"value":235},{"type":10,"tag":33,"props":341,"children":343},{"className":342},[],[344],{"type":16,"value":345},"VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT",{"type":16,"value":243},{"type":10,"tag":85,"props":348,"children":349},{},[350,355,357,560,564,566,571,573,577,579,583,584,587,589,594,596,601,602,607,608,613,615,620],{"type":10,"tag":351,"props":352,"children":354},"anchor",{"id":353},"features-sparseResidency",[],{"type":16,"value":356}," Sparse residency support is advertised on\na finer grain via the following features:",{"type":10,"tag":81,"props":358,"children":359},{},[360,389,418,447,476,504,532],{"type":10,"tag":85,"props":361,"children":362},{},[363,364,374,376,381,383,388],{"type":16,"value":177},{"type":10,"tag":24,"props":365,"children":367},{"href":366},"/man/VkPhysicalDeviceFeatures#features-sparseResidencyBuffer",[368],{"type":10,"tag":33,"props":369,"children":371},{"className":370},[],[372],{"type":16,"value":373},"sparseResidencyBuffer",{"type":16,"value":375},"\nfeature provides support for creating ",{"type":10,"tag":33,"props":377,"children":379},{"className":378},[],[380],{"type":16,"value":38},{"type":16,"value":382}," objects with the\n",{"type":10,"tag":33,"props":384,"children":386},{"className":385},[],[387],{"type":16,"value":345},{"type":16,"value":169},{"type":10,"tag":85,"props":390,"children":391},{},[392,393,403,405,410,412,417],{"type":16,"value":177},{"type":10,"tag":24,"props":394,"children":396},{"href":395},"/man/VkPhysicalDeviceFeatures#features-sparseResidencyImage2D",[397],{"type":10,"tag":33,"props":398,"children":400},{"className":399},[],[401],{"type":16,"value":402},"sparseResidencyImage2D",{"type":16,"value":404},"\nfeature provides support for creating 2D single-sampled ",{"type":10,"tag":33,"props":406,"children":408},{"className":407},[],[409],{"type":16,"value":46},{"type":16,"value":411},"\nobjects with ",{"type":10,"tag":33,"props":413,"children":415},{"className":414},[],[416],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":419,"children":420},{},[421,422,432,434,439,441,446],{"type":16,"value":177},{"type":10,"tag":24,"props":423,"children":425},{"href":424},"/man/VkPhysicalDeviceFeatures#features-sparseResidencyImage3D",[426],{"type":10,"tag":33,"props":427,"children":429},{"className":428},[],[430],{"type":16,"value":431},"sparseResidencyImage3D",{"type":16,"value":433},"\nfeature provides support for creating 3D ",{"type":10,"tag":33,"props":435,"children":437},{"className":436},[],[438],{"type":16,"value":46},{"type":16,"value":440}," objects with\n",{"type":10,"tag":33,"props":442,"children":444},{"className":443},[],[445],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":448,"children":449},{},[450,451,461,463,468,470,475],{"type":16,"value":177},{"type":10,"tag":24,"props":452,"children":454},{"href":453},"/man/VkPhysicalDeviceFeatures#features-sparseResidency2Samples",[455],{"type":10,"tag":33,"props":456,"children":458},{"className":457},[],[459],{"type":16,"value":460},"sparseResidency2Samples",{"type":16,"value":462}," feature provides support for creating\n2D ",{"type":10,"tag":33,"props":464,"children":466},{"className":465},[],[467],{"type":16,"value":46},{"type":16,"value":469}," objects with 2 samples and\n",{"type":10,"tag":33,"props":471,"children":473},{"className":472},[],[474],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":477,"children":478},{},[479,480,490,491,496,498,503],{"type":16,"value":177},{"type":10,"tag":24,"props":481,"children":483},{"href":482},"/man/VkPhysicalDeviceFeatures#features-sparseResidency4Samples",[484],{"type":10,"tag":33,"props":485,"children":487},{"className":486},[],[488],{"type":16,"value":489},"sparseResidency4Samples",{"type":16,"value":462},{"type":10,"tag":33,"props":492,"children":494},{"className":493},[],[495],{"type":16,"value":46},{"type":16,"value":497}," objects with 4 samples and\n",{"type":10,"tag":33,"props":499,"children":501},{"className":500},[],[502],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":505,"children":506},{},[507,508,518,519,524,526,531],{"type":16,"value":177},{"type":10,"tag":24,"props":509,"children":511},{"href":510},"/man/VkPhysicalDeviceFeatures#features-sparseResidency8Samples",[512],{"type":10,"tag":33,"props":513,"children":515},{"className":514},[],[516],{"type":16,"value":517},"sparseResidency8Samples",{"type":16,"value":462},{"type":10,"tag":33,"props":520,"children":522},{"className":521},[],[523],{"type":16,"value":46},{"type":16,"value":525}," objects with 8 samples and\n",{"type":10,"tag":33,"props":527,"children":529},{"className":528},[],[530],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":533,"children":534},{},[535,536,546,547,552,554,559],{"type":16,"value":177},{"type":10,"tag":24,"props":537,"children":539},{"href":538},"/man/VkPhysicalDeviceFeatures#features-sparseResidency16Samples",[540],{"type":10,"tag":33,"props":541,"children":543},{"className":542},[],[544],{"type":16,"value":545},"sparseResidency16Samples",{"type":16,"value":462},{"type":10,"tag":33,"props":548,"children":550},{"className":549},[],[551],{"type":16,"value":46},{"type":16,"value":553}," objects with 16 samples and\n",{"type":10,"tag":33,"props":555,"children":557},{"className":556},[],[558],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":561,"props":562,"children":563},"br",{},[],{"type":16,"value":565},"Implementations supporting ",{"type":10,"tag":33,"props":567,"children":569},{"className":568},[],[570],{"type":16,"value":402},{"type":16,"value":572}," are only ",{"type":10,"tag":50,"props":574,"children":576},{"type":575},"required",[],{"type":16,"value":578},"\nto support sparse 2D, single-sampled images.\nSupport for sparse 3D and MSAA images is ",{"type":10,"tag":50,"props":580,"children":582},{"type":581},"optional",[],{"type":16,"value":40},{"type":10,"tag":50,"props":585,"children":586},{"type":92},[],{"type":16,"value":588}," be enabled via\n",{"type":10,"tag":33,"props":590,"children":592},{"className":591},[],[593],{"type":16,"value":431},{"type":16,"value":595},", ",{"type":10,"tag":33,"props":597,"children":599},{"className":598},[],[600],{"type":16,"value":460},{"type":16,"value":31},{"type":10,"tag":33,"props":603,"children":605},{"className":604},[],[606],{"type":16,"value":489},{"type":16,"value":595},{"type":10,"tag":33,"props":609,"children":611},{"className":610},[],[612],{"type":16,"value":517},{"type":16,"value":614},", and\n",{"type":10,"tag":33,"props":616,"children":618},{"className":617},[],[619],{"type":16,"value":545},{"type":16,"value":169},{"type":10,"tag":85,"props":622,"children":623},{},[624,625,630,632,636,638,641,643,649,651,656],{"type":16,"value":248},{"type":10,"tag":33,"props":626,"children":628},{"className":627},[],[629],{"type":16,"value":261},{"type":16,"value":631},"\nsupports all non-compressed color formats with power-of-two element\nsize that non-sparse usage supports.\nAdditional formats ",{"type":10,"tag":50,"props":633,"children":635},{"type":634},"may",[],{"type":16,"value":637}," also be supported and ",{"type":10,"tag":50,"props":639,"children":640},{"type":92},[],{"type":16,"value":642}," be queried via\n",{"type":10,"tag":24,"props":644,"children":646},{"href":645},"/man/vkGetPhysicalDeviceSparseImageFormatProperties",[647],{"type":16,"value":648},"vkGetPhysicalDeviceSparseImageFormatProperties",{"type":16,"value":650},".\n",{"type":10,"tag":33,"props":652,"children":654},{"className":653},[],[655],{"type":16,"value":276},{"type":16,"value":657}," tiling is not supported.",{"type":10,"tag":85,"props":659,"children":660},{},[661,662,672,674,677,679,682,684,687,689,695],{"type":16,"value":177},{"type":10,"tag":24,"props":663,"children":665},{"href":664},"/man/VkPhysicalDeviceFeatures#features-sparseResidencyAliased",[666],{"type":10,"tag":33,"props":667,"children":669},{"className":668},[],[670],{"type":16,"value":671},"sparseResidencyAliased",{"type":16,"value":673},"\nfeature provides the following capability that ",{"type":10,"tag":50,"props":675,"children":676},{"type":92},[],{"type":16,"value":678}," be enabled per\nresource:",{"type":10,"tag":561,"props":680,"children":681},{},[],{"type":16,"value":683},"Allows physical memory ranges to be shared between multiple locations in the\nsame sparse resource or between multiple sparse resources, with each binding\nof a memory location observing a consistent interpretation of the memory\ncontents.",{"type":10,"tag":561,"props":685,"children":686},{},[],{"type":16,"value":688},"See ",{"type":10,"tag":24,"props":690,"children":692},{"href":691},"/chapters/sparsememory#sparsememory-sparse-memory-aliasing",[693],{"type":16,"value":694},"Sparse Memory Aliasing",{"type":16,"value":696}," for more\ninformation.",{"type":10,"tag":122,"props":698,"children":700},{"id":699},"sparsememory-fully-resident",[701],{"type":16,"value":702},"Sparse Buffers and Fully-Resident Images",{"type":10,"tag":18,"props":704,"children":705},{},[706,708,713,714,719,721,726,728,733,735,738,740,745,747,752],{"type":16,"value":707},"Both ",{"type":10,"tag":33,"props":709,"children":711},{"className":710},[],[712],{"type":16,"value":38},{"type":16,"value":40},{"type":10,"tag":33,"props":715,"children":717},{"className":716},[],[718],{"type":16,"value":46},{"type":16,"value":720}," objects created with the\n",{"type":10,"tag":33,"props":722,"children":724},{"className":723},[],[725],{"type":16,"value":233},{"type":16,"value":727}," or\n",{"type":10,"tag":33,"props":729,"children":731},{"className":730},[],[732],{"type":16,"value":241},{"type":16,"value":734}," bits ",{"type":10,"tag":50,"props":736,"children":737},{"type":92},[],{"type":16,"value":739}," be thought of as a\nlinear region of address space.\nIn the ",{"type":10,"tag":33,"props":741,"children":743},{"className":742},[],[744],{"type":16,"value":46},{"type":16,"value":746}," case if ",{"type":10,"tag":33,"props":748,"children":750},{"className":749},[],[751],{"type":16,"value":261},{"type":16,"value":753}," is\nnot used, this linear region is entirely opaque, meaning that there is no\napplication-visible mapping between texel location and memory offset.",{"type":10,"tag":18,"props":755,"children":756},{},[757,759,764,765,770,772,775,777,782],{"type":16,"value":758},"Unless ",{"type":10,"tag":33,"props":760,"children":762},{"className":761},[],[763],{"type":16,"value":261},{"type":16,"value":727},{"type":10,"tag":33,"props":766,"children":768},{"className":767},[],[769],{"type":16,"value":345},{"type":16,"value":771}," are also used, the entire\nresource ",{"type":10,"tag":50,"props":773,"children":774},{"type":52},[],{"type":16,"value":776}," be bound to one or more ",{"type":10,"tag":33,"props":778,"children":780},{"className":779},[],[781],{"type":16,"value":61},{"type":16,"value":783}," objects before\nuse.",{"type":10,"tag":785,"props":786,"children":788},"h3",{"id":787},"_sparse_buffer_and_fully_resident_image_block_size",[789],{"type":16,"value":790},"Sparse Buffer and Fully-Resident Image Block Size",{"type":10,"tag":18,"props":792,"children":793},{},[794,796,802,803,809,810,815],{"type":16,"value":795},"The sparse block size in bytes for sparse buffers and fully-resident images\nis reported as ",{"type":10,"tag":33,"props":797,"children":799},{"className":798},[],[800],{"type":16,"value":801},"VkMemoryRequirements",{"type":16,"value":321},{"type":10,"tag":33,"props":804,"children":806},{"className":805},[],[807],{"type":16,"value":808},"alignment",{"type":16,"value":650},{"type":10,"tag":33,"props":811,"children":813},{"className":812},[],[814],{"type":16,"value":808},{"type":16,"value":816}," represents both the memory alignment requirement and the\nbinding granularity (in bytes) for sparse resources.",{"type":10,"tag":122,"props":818,"children":820},{"id":819},"sparsememory-partially-resident-buffers",[821],{"type":16,"value":822},"Sparse Partially-Resident Buffers",{"type":10,"tag":18,"props":824,"children":825},{},[826,831,832,837,839,844,846,851,853,858],{"type":10,"tag":33,"props":827,"children":829},{"className":828},[],[830],{"type":16,"value":38},{"type":16,"value":720},{"type":10,"tag":33,"props":833,"children":835},{"className":834},[],[836],{"type":16,"value":345},{"type":16,"value":838}," bit allow the buffer to be made\nonly partially resident.\nPartially resident ",{"type":10,"tag":33,"props":840,"children":842},{"className":841},[],[843],{"type":16,"value":38},{"type":16,"value":845}," objects are allocated and bound\nidentically to ",{"type":10,"tag":33,"props":847,"children":849},{"className":848},[],[850],{"type":16,"value":38},{"type":16,"value":852}," objects using only the\n",{"type":10,"tag":33,"props":854,"children":856},{"className":855},[],[857],{"type":16,"value":241},{"type":16,"value":859}," feature.\nThe only difference is the ability for some regions of the buffer to be\nunbound during device use.",{"type":10,"tag":122,"props":861,"children":863},{"id":862},"sparsememory-partially-resident-images",[864],{"type":16,"value":865},"Sparse Partially-Resident Images",{"type":10,"tag":18,"props":867,"children":868},{},[869,874,875,880,882,888],{"type":10,"tag":33,"props":870,"children":872},{"className":871},[],[873],{"type":16,"value":46},{"type":16,"value":720},{"type":10,"tag":33,"props":876,"children":878},{"className":877},[],[879],{"type":16,"value":261},{"type":16,"value":881}," bit allow specific rectangular\nregions of the image called sparse image blocks to be bound to specific\nranges of memory.\nThis allows the application to manage residency at either image subresource\nor sparse image block granularity.\nEach image subresource (outside of the ",{"type":10,"tag":24,"props":883,"children":885},{"href":884},"/chapters/sparsememory#sparsememory-miptail",[886],{"type":16,"value":887},"mip tail",{"type":16,"value":889},")\nstarts on a sparse block boundary and has dimensions that are integer\nmultiples of the corresponding dimensions of the sparse image block.",{"type":10,"tag":891,"props":892,"children":893},"note",{},[894,909],{"type":10,"tag":18,"props":895,"children":896},{},[897,899,902,904,907],{"type":16,"value":898},"Applications ",{"type":10,"tag":50,"props":900,"children":901},{"type":92},[],{"type":16,"value":903}," use these types of images to control LOD based on total\nmemory consumption.\nIf memory pressure becomes an issue the application ",{"type":10,"tag":50,"props":905,"children":906},{"type":92},[],{"type":16,"value":908}," unbind and disable\nspecific mipmap levels of images without having to recreate resources or\nmodify texel data of unaffected levels.",{"type":10,"tag":18,"props":910,"children":911},{},[912,914,917,919,925,927,930],{"type":16,"value":913},"The application ",{"type":10,"tag":50,"props":915,"children":916},{"type":92},[],{"type":16,"value":918}," also use this functionality to access subregions of the\nimage in a ",{"type":10,"tag":33,"props":920,"children":922},{"className":921},[],[923],{"type":16,"value":924},"megatexture",{"type":16,"value":926}," fashion.\nThe application ",{"type":10,"tag":50,"props":928,"children":929},{"type":92},[],{"type":16,"value":931}," create a large image and only populate the region of\nthe image that is currently being used in the scene.",{"type":10,"tag":785,"props":933,"children":935},{"id":934},"sparsememory-accessing-unbound",[936],{"type":16,"value":937},"Accessing Unbound Regions",{"type":10,"tag":18,"props":939,"children":940},{},[941,943,948],{"type":16,"value":942},"The following member of ",{"type":10,"tag":33,"props":944,"children":946},{"className":945},[],[947],{"type":16,"value":319},{"type":16,"value":949}," affects how\ndata in unbound regions of sparse resources are handled by the\nimplementation:",{"type":10,"tag":81,"props":951,"children":952},{},[953],{"type":10,"tag":85,"props":954,"children":955},{},[956],{"type":10,"tag":33,"props":957,"children":959},{"className":958},[],[960],{"type":16,"value":327},{"type":10,"tag":18,"props":962,"children":963},{},[964,966,971],{"type":16,"value":965},"If this property is not present, reads of unbound regions of the image will\nreturn undefined: values.\nBoth reads and writes are still considered ",{"type":10,"tag":73,"props":967,"children":968},{},[969],{"type":16,"value":970},"safe",{"type":16,"value":972}," and will not affect other\nresources or populated regions of the image.",{"type":10,"tag":18,"props":974,"children":975},{},[976],{"type":16,"value":977},"If this property is present, all reads of unbound regions of the image will\nbehave as if the region was bound to memory populated with all zeros; writes\nwill be discarded.",{"type":10,"tag":18,"props":979,"children":980},{},[981,987,989,992],{"type":10,"tag":24,"props":982,"children":984},{"href":983},"/chapters/textures#textures",[985],{"type":16,"value":986},"Image operations",{"type":16,"value":988}," performed on unbound memory ",{"type":10,"tag":50,"props":990,"children":991},{"type":634},[],{"type":16,"value":993}," still alter\nsome component values in the natural way for those accesses, e.g.\nsubstituting a value of one for alpha in formats that do not have an alpha\ncomponent.",{"type":10,"tag":18,"props":995,"children":996},{},[997,999,1005],{"type":16,"value":998},"Example: Reading the alpha component of an unbacked ",{"type":10,"tag":33,"props":1000,"children":1002},{"className":1001},[],[1003],{"type":16,"value":1004},"VK_FORMAT_R8_UNORM",{"type":16,"value":1006},"\nimage will return a value of 1.0f.",{"type":10,"tag":18,"props":1008,"children":1009},{},[1010,1011,1017],{"type":16,"value":688},{"type":10,"tag":24,"props":1012,"children":1014},{"href":1013},"/chapters/devsandqueues#devsandqueues-physical-device-enumeration",[1015],{"type":16,"value":1016},"Physical Device\nEnumeration",{"type":16,"value":1018}," for instructions for retrieving physical device properties.",{"type":10,"tag":785,"props":1020,"children":1022},{"id":1021},"sparsememory-miptail",[1023],{"type":16,"value":1024},"Mip Tail Regions",{"type":10,"tag":18,"props":1026,"children":1027},{},[1028,1030,1035,1037,1042,1044,1047,1049,1054,1056,1059,1061,1066],{"type":16,"value":1029},"Sparse images created using ",{"type":10,"tag":33,"props":1031,"children":1033},{"className":1032},[],[1034],{"type":16,"value":233},{"type":16,"value":1036},"\n(without also using ",{"type":10,"tag":33,"props":1038,"children":1040},{"className":1039},[],[1041],{"type":16,"value":261},{"type":16,"value":1043},") have no\nspecific mapping of image region or image subresource to memory offset\ndefined, so the entire image ",{"type":10,"tag":50,"props":1045,"children":1046},{"type":92},[],{"type":16,"value":1048}," be thought of as a linear opaque address\nregion.\nHowever, images created with ",{"type":10,"tag":33,"props":1050,"children":1052},{"className":1051},[],[1053],{"type":16,"value":261},{"type":16,"value":1055}," do\nhave a prescribed sparse image block layout, and hence each image\nsubresource ",{"type":10,"tag":50,"props":1057,"children":1058},{"type":52},[],{"type":16,"value":1060}," start on a sparse block boundary.\nWithin each array layer, the set of mip levels that have a smaller size than\nthe sparse block size in bytes are grouped together into a ",{"type":10,"tag":73,"props":1062,"children":1063},{},[1064],{"type":16,"value":1065},"mip tail\nregion",{"type":16,"value":169},{"type":10,"tag":18,"props":1068,"children":1069},{},[1070,1072,1078,1080,1085,1087,1093,1095,1101],{"type":16,"value":1071},"If the ",{"type":10,"tag":33,"props":1073,"children":1075},{"className":1074},[],[1076],{"type":16,"value":1077},"VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT",{"type":16,"value":1079}," flag is present in\nthe ",{"type":10,"tag":33,"props":1081,"children":1083},{"className":1082},[],[1084],{"type":16,"value":143},{"type":16,"value":1086}," member of ",{"type":10,"tag":33,"props":1088,"children":1090},{"className":1089},[],[1091],{"type":16,"value":1092},"VkSparseImageFormatProperties",{"type":16,"value":1094},", for the\nimage’s ",{"type":10,"tag":33,"props":1096,"children":1098},{"className":1097},[],[1099],{"type":16,"value":1100},"format",{"type":16,"value":1102},", then any mip level which has dimensions that are not\ninteger multiples of the corresponding dimensions of the sparse image block,\nand all subsequent mip levels, are also included in the mip tail region.",{"type":10,"tag":18,"props":1104,"children":1105},{},[1106,1107,1112,1114,1117],{"type":16,"value":942},{"type":10,"tag":33,"props":1108,"children":1110},{"className":1109},[],[1111],{"type":16,"value":319},{"type":16,"value":1113}," ",{"type":10,"tag":50,"props":1115,"children":1116},{"type":634},[],{"type":16,"value":1118}," affect\nhow the implementation places mip levels in the mip tail region:",{"type":10,"tag":81,"props":1120,"children":1121},{},[1122],{"type":10,"tag":85,"props":1123,"children":1124},{},[1125],{"type":10,"tag":33,"props":1126,"children":1128},{"className":1127},[],[1129],{"type":16,"value":1130},"residencyAlignedMipSize",{"type":10,"tag":18,"props":1132,"children":1133},{},[1134,1136,1139,1141,1147,1149,1152],{"type":16,"value":1135},"Each mip tail region is bound to memory as an opaque region (i.e. ",{"type":10,"tag":50,"props":1137,"children":1138},{"type":52},[],{"type":16,"value":1140}," be\nbound using a ",{"type":10,"tag":24,"props":1142,"children":1144},{"href":1143},"/man/VkSparseImageOpaqueMemoryBindInfo",[1145],{"type":16,"value":1146},"VkSparseImageOpaqueMemoryBindInfo",{"type":16,"value":1148}," structure) and ",{"type":10,"tag":50,"props":1150,"children":1151},{"type":634},[],{"type":16,"value":1153}," be\nof a size greater than or equal to the sparse block size in bytes.\nThis size is guaranteed to be an integer multiple of the sparse block size\nin bytes.",{"type":10,"tag":18,"props":1155,"children":1156},{},[1157,1159,1162,1164,1170,1172,1178,1179,1184],{"type":16,"value":1158},"An implementation ",{"type":10,"tag":50,"props":1160,"children":1161},{"type":634},[],{"type":16,"value":1163}," choose to allow each array-layer’s mip tail region to\nbe bound to memory independently or require that all array-layer’s mip tail\nregions be treated as one.\nThis is dictated by ",{"type":10,"tag":33,"props":1165,"children":1167},{"className":1166},[],[1168],{"type":16,"value":1169},"VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT",{"type":16,"value":1171}," in\n",{"type":10,"tag":33,"props":1173,"children":1175},{"className":1174},[],[1176],{"type":16,"value":1177},"VkSparseImageMemoryRequirements",{"type":16,"value":321},{"type":10,"tag":33,"props":1180,"children":1182},{"className":1181},[],[1183],{"type":16,"value":143},{"type":16,"value":169},{"type":10,"tag":18,"props":1186,"children":1187},{},[1188,1190,1195,1196,1201],{"type":16,"value":1189},"The following diagrams depict how\n",{"type":10,"tag":33,"props":1191,"children":1193},{"className":1192},[],[1194],{"type":16,"value":1077},{"type":16,"value":235},{"type":10,"tag":33,"props":1197,"children":1199},{"className":1198},[],[1200],{"type":16,"value":1169},{"type":16,"value":1202}," alter memory usage and\nrequirements.",{"type":10,"tag":18,"props":1204,"children":1205},{},[1206],{"type":10,"tag":1207,"props":1208,"children":1212},"img",{"alt":1209,"src":1210,"title":1211},"sparseimage","https://data.vkdoc.net/images/sparseimage.svg","Sparse Image",[],{"type":10,"tag":18,"props":1214,"children":1215},{},[1216,1218,1223,1224,1229],{"type":16,"value":1217},"In the absence of ",{"type":10,"tag":33,"props":1219,"children":1221},{"className":1220},[],[1222],{"type":16,"value":1077},{"type":16,"value":235},{"type":10,"tag":33,"props":1225,"children":1227},{"className":1226},[],[1228],{"type":16,"value":1169},{"type":16,"value":1230},", each array layer contains a\nmip tail region containing texel data for all mip levels smaller than the\nsparse image block in any dimension.",{"type":10,"tag":18,"props":1232,"children":1233},{},[1234,1236,1239,1241,1244],{"type":16,"value":1235},"Mip levels that are as large or larger than a sparse image block in all\ndimensions ",{"type":10,"tag":50,"props":1237,"children":1238},{"type":92},[],{"type":16,"value":1240}," be bound individually.\nRight-edges and bottom-edges of each level are allowed to have partially\nused sparse blocks.\nAny bound partially-used-sparse-blocks ",{"type":10,"tag":50,"props":1242,"children":1243},{"type":52},[],{"type":16,"value":1245}," still have their full sparse\nblock size in bytes allocated in memory.",{"type":10,"tag":18,"props":1247,"children":1248},{},[1249],{"type":10,"tag":1207,"props":1250,"children":1254},{"alt":1251,"src":1252,"title":1253},"sparseimage singlemiptail","https://data.vkdoc.net/images/sparseimage_singlemiptail.svg","Sparse Image with Single Mip Tail",[],{"type":10,"tag":18,"props":1256,"children":1257},{},[1258,1260,1265],{"type":16,"value":1259},"When ",{"type":10,"tag":33,"props":1261,"children":1263},{"className":1262},[],[1264],{"type":16,"value":1169},{"type":16,"value":1266}," is present all array\nlayers will share a single mip tail region.",{"type":10,"tag":18,"props":1268,"children":1269},{},[1270],{"type":10,"tag":1207,"props":1271,"children":1275},{"alt":1272,"src":1273,"title":1274},"sparseimage alignedmipsize","https://data.vkdoc.net/images/sparseimage_alignedmipsize.svg","Sparse Image with Aligned Mip Size",[],{"type":10,"tag":891,"props":1277,"children":1278},{},[1279],{"type":10,"tag":18,"props":1280,"children":1281},{},[1282],{"type":16,"value":1283},"The mip tail regions are presented here in 2D arrays simply for figure size\nreasons.\nEach mip tail is logically a single array of sparse blocks with an\nimplementation-dependent mapping of texels or compressed texel blocks to\nsparse blocks.",{"type":10,"tag":18,"props":1285,"children":1286},{},[1287,1288,1293,1295,1298],{"type":16,"value":1259},{"type":10,"tag":33,"props":1289,"children":1291},{"className":1290},[],[1292],{"type":16,"value":1077},{"type":16,"value":1294}," is present the first\nmip level that would contain partially used sparse blocks begins the mip\ntail region.\nThis level and all subsequent levels are placed in the mip tail.\nOnly the first N mip levels whose dimensions are an exact multiple of\nthe sparse image block dimensions ",{"type":10,"tag":50,"props":1296,"children":1297},{"type":92},[],{"type":16,"value":1299}," be bound and unbound on a sparse\nblock basis.",{"type":10,"tag":18,"props":1301,"children":1302},{},[1303],{"type":10,"tag":1207,"props":1304,"children":1308},{"alt":1305,"src":1306,"title":1307},"sparseimage alignedmipsize singlemiptail","https://data.vkdoc.net/images/sparseimage_alignedmipsize_singlemiptail.svg","Sparse Image with Aligned Mip Size and Single Mip Tail",[],{"type":10,"tag":891,"props":1310,"children":1311},{},[1312],{"type":10,"tag":18,"props":1313,"children":1314},{},[1315],{"type":16,"value":1316},"The mip tail region is presented here in a 2D array simply for figure size\nreasons.\nIt is logically a single array of sparse blocks with an\nimplementation-dependent mapping of texels or compressed texel blocks to\nsparse blocks.",{"type":10,"tag":18,"props":1318,"children":1319},{},[1320,1322,1327,1328,1333],{"type":16,"value":1321},"When both ",{"type":10,"tag":33,"props":1323,"children":1325},{"className":1324},[],[1326],{"type":16,"value":1077},{"type":16,"value":235},{"type":10,"tag":33,"props":1329,"children":1331},{"className":1330},[],[1332],{"type":16,"value":1169},{"type":16,"value":1334}," are present the constraints\nfrom each of these flags are in effect.",{"type":10,"tag":785,"props":1336,"children":1338},{"id":1337},"sparsememory-standard-shapes",[1339],{"type":16,"value":1340},"Standard Sparse Image Block Shapes",{"type":10,"tag":18,"props":1342,"children":1343},{},[1344],{"type":16,"value":1345},"Standard sparse image block shapes define a standard set of dimensions for\nsparse image blocks that depend on the format of the image.\nLayout of texels or compressed texel blocks within a sparse image block is\nimplementation-dependent.\nAll currently defined standard sparse image block shapes are 64 KB in size.",{"type":10,"tag":18,"props":1347,"children":1348},{},[1349,1351,1357,1359,1365],{"type":16,"value":1350},"For block-compressed formats (e.g. ",{"type":10,"tag":33,"props":1352,"children":1354},{"className":1353},[],[1355],{"type":16,"value":1356},"VK_FORMAT_BC5_UNORM_BLOCK",{"type":16,"value":1358},"), the\ntexel size is the size of the compressed texel block (e.g. 128-bit for\n",{"type":10,"tag":33,"props":1360,"children":1362},{"className":1361},[],[1363],{"type":16,"value":1364},"BC5",{"type":16,"value":1366},") thus the dimensions of the standard sparse image block shapes\napply in terms of compressed texel blocks.",{"type":10,"tag":891,"props":1368,"children":1369},{},[1370],{"type":10,"tag":18,"props":1371,"children":1372},{},[1373,1375,1378],{"type":16,"value":1374},"For block-compressed formats, the dimensions of a sparse image block in\nterms of texels ",{"type":10,"tag":50,"props":1376,"children":1377},{"type":92},[],{"type":16,"value":1379}," be calculated by multiplying the sparse image block\ndimensions by the compressed texel block dimensions.",{"type":10,"tag":1381,"props":1382,"children":1389},"table",{"id":1383,"className":1384},"sparsememory-sparseblockshapessingle",[1385,1386,1387,1388],"tableblock","frame-all","grid-all","stretch",[1390,1398,1414,1443],{"type":10,"tag":1391,"props":1392,"children":1395},"caption",{"className":1393},[1394],"title",[1396],{"type":16,"value":1397},"Table 47. Standard Sparse Image Block Shapes (Single Sample)",{"type":10,"tag":1399,"props":1400,"children":1401},"colgroup",{},[1402,1407,1410],{"type":10,"tag":1403,"props":1404,"children":1406},"col",{"style":1405},"width: 33.3333%;",[],{"type":10,"tag":1403,"props":1408,"children":1409},{"style":1405},[],{"type":10,"tag":1403,"props":1411,"children":1413},{"style":1412},"width: 33.3334%;",[],{"type":10,"tag":1415,"props":1416,"children":1417},"thead",{},[1418],{"type":10,"tag":1419,"props":1420,"children":1421},"tr",{},[1422,1431,1437],{"type":10,"tag":1423,"props":1424,"children":1428},"th",{"className":1425},[1385,1426,1427],"halign-left","valign-top",[1429],{"type":16,"value":1430},"TEXEL SIZE (bits)",{"type":10,"tag":1423,"props":1432,"children":1434},{"className":1433},[1385,1426,1427],[1435],{"type":16,"value":1436},"Block Shape (2D)",{"type":10,"tag":1423,"props":1438,"children":1440},{"className":1439},[1385,1426,1427],[1441],{"type":16,"value":1442},"Block Shape (3D)",{"type":10,"tag":1444,"props":1445,"children":1446},"tbody",{},[1447,1486,1522,1558,1594],{"type":10,"tag":1419,"props":1448,"children":1449},{},[1450,1466,1476],{"type":10,"tag":1451,"props":1452,"children":1454},"td",{"className":1453},[1385,1426,1427],[1455],{"type":10,"tag":18,"props":1456,"children":1458},{"className":1457},[1385],[1459],{"type":10,"tag":1460,"props":1461,"children":1463},"emphasis",{"role":1462},"strong",[1464],{"type":16,"value":1465},"8-Bit",{"type":10,"tag":1451,"props":1467,"children":1469},{"className":1468},[1385,1426,1427],[1470],{"type":10,"tag":18,"props":1471,"children":1473},{"className":1472},[1385],[1474],{"type":16,"value":1475},"256 {times} 256 {times} 1",{"type":10,"tag":1451,"props":1477,"children":1479},{"className":1478},[1385,1426,1427],[1480],{"type":10,"tag":18,"props":1481,"children":1483},{"className":1482},[1385],[1484],{"type":16,"value":1485},"64 {times} 32 {times} 32",{"type":10,"tag":1419,"props":1487,"children":1488},{},[1489,1502,1512],{"type":10,"tag":1451,"props":1490,"children":1492},{"className":1491},[1385,1426,1427],[1493],{"type":10,"tag":18,"props":1494,"children":1496},{"className":1495},[1385],[1497],{"type":10,"tag":1460,"props":1498,"children":1499},{"role":1462},[1500],{"type":16,"value":1501},"16-Bit",{"type":10,"tag":1451,"props":1503,"children":1505},{"className":1504},[1385,1426,1427],[1506],{"type":10,"tag":18,"props":1507,"children":1509},{"className":1508},[1385],[1510],{"type":16,"value":1511},"256 {times} 128 {times} 1",{"type":10,"tag":1451,"props":1513,"children":1515},{"className":1514},[1385,1426,1427],[1516],{"type":10,"tag":18,"props":1517,"children":1519},{"className":1518},[1385],[1520],{"type":16,"value":1521},"32 {times} 32 {times} 32",{"type":10,"tag":1419,"props":1523,"children":1524},{},[1525,1538,1548],{"type":10,"tag":1451,"props":1526,"children":1528},{"className":1527},[1385,1426,1427],[1529],{"type":10,"tag":18,"props":1530,"children":1532},{"className":1531},[1385],[1533],{"type":10,"tag":1460,"props":1534,"children":1535},{"role":1462},[1536],{"type":16,"value":1537},"32-Bit",{"type":10,"tag":1451,"props":1539,"children":1541},{"className":1540},[1385,1426,1427],[1542],{"type":10,"tag":18,"props":1543,"children":1545},{"className":1544},[1385],[1546],{"type":16,"value":1547},"128 {times} 128 {times} 1",{"type":10,"tag":1451,"props":1549,"children":1551},{"className":1550},[1385,1426,1427],[1552],{"type":10,"tag":18,"props":1553,"children":1555},{"className":1554},[1385],[1556],{"type":16,"value":1557},"32 {times} 32 {times} 16",{"type":10,"tag":1419,"props":1559,"children":1560},{},[1561,1574,1584],{"type":10,"tag":1451,"props":1562,"children":1564},{"className":1563},[1385,1426,1427],[1565],{"type":10,"tag":18,"props":1566,"children":1568},{"className":1567},[1385],[1569],{"type":10,"tag":1460,"props":1570,"children":1571},{"role":1462},[1572],{"type":16,"value":1573},"64-Bit",{"type":10,"tag":1451,"props":1575,"children":1577},{"className":1576},[1385,1426,1427],[1578],{"type":10,"tag":18,"props":1579,"children":1581},{"className":1580},[1385],[1582],{"type":16,"value":1583},"128 {times} 64 {times} 1",{"type":10,"tag":1451,"props":1585,"children":1587},{"className":1586},[1385,1426,1427],[1588],{"type":10,"tag":18,"props":1589,"children":1591},{"className":1590},[1385],[1592],{"type":16,"value":1593},"32 {times} 16 {times} 16",{"type":10,"tag":1419,"props":1595,"children":1596},{},[1597,1610,1620],{"type":10,"tag":1451,"props":1598,"children":1600},{"className":1599},[1385,1426,1427],[1601],{"type":10,"tag":18,"props":1602,"children":1604},{"className":1603},[1385],[1605],{"type":10,"tag":1460,"props":1606,"children":1607},{"role":1462},[1608],{"type":16,"value":1609},"128-Bit",{"type":10,"tag":1451,"props":1611,"children":1613},{"className":1612},[1385,1426,1427],[1614],{"type":10,"tag":18,"props":1615,"children":1617},{"className":1616},[1385],[1618],{"type":16,"value":1619},"64 {times} 64 {times} 1",{"type":10,"tag":1451,"props":1621,"children":1623},{"className":1622},[1385,1426,1427],[1624],{"type":10,"tag":18,"props":1625,"children":1627},{"className":1626},[1385],[1628],{"type":16,"value":1629},"16 {times} 16 {times} 16",{"type":10,"tag":1381,"props":1631,"children":1634},{"id":1632,"className":1633},"sparsememory-sparseblockshapesmsaa",[1385,1386,1387,1388],[1635,1641,1660,1695],{"type":10,"tag":1391,"props":1636,"children":1638},{"className":1637},[1394],[1639],{"type":16,"value":1640},"Table 48. Standard Sparse Image Block Shapes (MSAA)",{"type":10,"tag":1399,"props":1642,"children":1643},{},[1644,1648,1651,1654,1657],{"type":10,"tag":1403,"props":1645,"children":1647},{"style":1646},"width: 20%;",[],{"type":10,"tag":1403,"props":1649,"children":1650},{"style":1646},[],{"type":10,"tag":1403,"props":1652,"children":1653},{"style":1646},[],{"type":10,"tag":1403,"props":1655,"children":1656},{"style":1646},[],{"type":10,"tag":1403,"props":1658,"children":1659},{"style":1646},[],{"type":10,"tag":1415,"props":1661,"children":1662},{},[1663],{"type":10,"tag":1419,"props":1664,"children":1665},{},[1666,1671,1677,1683,1689],{"type":10,"tag":1423,"props":1667,"children":1669},{"className":1668},[1385,1426,1427],[1670],{"type":16,"value":1430},{"type":10,"tag":1423,"props":1672,"children":1674},{"className":1673},[1385,1426,1427],[1675],{"type":16,"value":1676},"Block Shape (2X)",{"type":10,"tag":1423,"props":1678,"children":1680},{"className":1679},[1385,1426,1427],[1681],{"type":16,"value":1682},"Block Shape (4X)",{"type":10,"tag":1423,"props":1684,"children":1686},{"className":1685},[1385,1426,1427],[1687],{"type":16,"value":1688},"Block Shape (8X)",{"type":10,"tag":1423,"props":1690,"children":1692},{"className":1691},[1385,1426,1427],[1693],{"type":16,"value":1694},"Block Shape (16X)",{"type":10,"tag":1444,"props":1696,"children":1697},{},[1698,1751,1803,1856,1908],{"type":10,"tag":1419,"props":1699,"children":1700},{},[1701,1713,1723,1732,1742],{"type":10,"tag":1451,"props":1702,"children":1704},{"className":1703},[1385,1426,1427],[1705],{"type":10,"tag":18,"props":1706,"children":1708},{"className":1707},[1385],[1709],{"type":10,"tag":1460,"props":1710,"children":1711},{"role":1462},[1712],{"type":16,"value":1465},{"type":10,"tag":1451,"props":1714,"children":1716},{"className":1715},[1385,1426,1427],[1717],{"type":10,"tag":18,"props":1718,"children":1720},{"className":1719},[1385],[1721],{"type":16,"value":1722},"128 {times} 256 {times} 1",{"type":10,"tag":1451,"props":1724,"children":1726},{"className":1725},[1385,1426,1427],[1727],{"type":10,"tag":18,"props":1728,"children":1730},{"className":1729},[1385],[1731],{"type":16,"value":1547},{"type":10,"tag":1451,"props":1733,"children":1735},{"className":1734},[1385,1426,1427],[1736],{"type":10,"tag":18,"props":1737,"children":1739},{"className":1738},[1385],[1740],{"type":16,"value":1741},"64 {times} 128 {times} 1",{"type":10,"tag":1451,"props":1743,"children":1745},{"className":1744},[1385,1426,1427],[1746],{"type":10,"tag":18,"props":1747,"children":1749},{"className":1748},[1385],[1750],{"type":16,"value":1619},{"type":10,"tag":1419,"props":1752,"children":1753},{},[1754,1766,1775,1784,1793],{"type":10,"tag":1451,"props":1755,"children":1757},{"className":1756},[1385,1426,1427],[1758],{"type":10,"tag":18,"props":1759,"children":1761},{"className":1760},[1385],[1762],{"type":10,"tag":1460,"props":1763,"children":1764},{"role":1462},[1765],{"type":16,"value":1501},{"type":10,"tag":1451,"props":1767,"children":1769},{"className":1768},[1385,1426,1427],[1770],{"type":10,"tag":18,"props":1771,"children":1773},{"className":1772},[1385],[1774],{"type":16,"value":1547},{"type":10,"tag":1451,"props":1776,"children":1778},{"className":1777},[1385,1426,1427],[1779],{"type":10,"tag":18,"props":1780,"children":1782},{"className":1781},[1385],[1783],{"type":16,"value":1583},{"type":10,"tag":1451,"props":1785,"children":1787},{"className":1786},[1385,1426,1427],[1788],{"type":10,"tag":18,"props":1789,"children":1791},{"className":1790},[1385],[1792],{"type":16,"value":1619},{"type":10,"tag":1451,"props":1794,"children":1796},{"className":1795},[1385,1426,1427],[1797],{"type":10,"tag":18,"props":1798,"children":1800},{"className":1799},[1385],[1801],{"type":16,"value":1802},"64 {times} 32 {times} 1",{"type":10,"tag":1419,"props":1804,"children":1805},{},[1806,1818,1827,1836,1846],{"type":10,"tag":1451,"props":1807,"children":1809},{"className":1808},[1385,1426,1427],[1810],{"type":10,"tag":18,"props":1811,"children":1813},{"className":1812},[1385],[1814],{"type":10,"tag":1460,"props":1815,"children":1816},{"role":1462},[1817],{"type":16,"value":1537},{"type":10,"tag":1451,"props":1819,"children":1821},{"className":1820},[1385,1426,1427],[1822],{"type":10,"tag":18,"props":1823,"children":1825},{"className":1824},[1385],[1826],{"type":16,"value":1741},{"type":10,"tag":1451,"props":1828,"children":1830},{"className":1829},[1385,1426,1427],[1831],{"type":10,"tag":18,"props":1832,"children":1834},{"className":1833},[1385],[1835],{"type":16,"value":1619},{"type":10,"tag":1451,"props":1837,"children":1839},{"className":1838},[1385,1426,1427],[1840],{"type":10,"tag":18,"props":1841,"children":1843},{"className":1842},[1385],[1844],{"type":16,"value":1845},"32 {times} 64 {times} 1",{"type":10,"tag":1451,"props":1847,"children":1849},{"className":1848},[1385,1426,1427],[1850],{"type":10,"tag":18,"props":1851,"children":1853},{"className":1852},[1385],[1854],{"type":16,"value":1855},"32 {times} 32 {times} 1",{"type":10,"tag":1419,"props":1857,"children":1858},{},[1859,1871,1880,1889,1898],{"type":10,"tag":1451,"props":1860,"children":1862},{"className":1861},[1385,1426,1427],[1863],{"type":10,"tag":18,"props":1864,"children":1866},{"className":1865},[1385],[1867],{"type":10,"tag":1460,"props":1868,"children":1869},{"role":1462},[1870],{"type":16,"value":1573},{"type":10,"tag":1451,"props":1872,"children":1874},{"className":1873},[1385,1426,1427],[1875],{"type":10,"tag":18,"props":1876,"children":1878},{"className":1877},[1385],[1879],{"type":16,"value":1619},{"type":10,"tag":1451,"props":1881,"children":1883},{"className":1882},[1385,1426,1427],[1884],{"type":10,"tag":18,"props":1885,"children":1887},{"className":1886},[1385],[1888],{"type":16,"value":1802},{"type":10,"tag":1451,"props":1890,"children":1892},{"className":1891},[1385,1426,1427],[1893],{"type":10,"tag":18,"props":1894,"children":1896},{"className":1895},[1385],[1897],{"type":16,"value":1855},{"type":10,"tag":1451,"props":1899,"children":1901},{"className":1900},[1385,1426,1427],[1902],{"type":10,"tag":18,"props":1903,"children":1905},{"className":1904},[1385],[1906],{"type":16,"value":1907},"32 {times} 16 {times} 1",{"type":10,"tag":1419,"props":1909,"children":1910},{},[1911,1923,1932,1941,1951],{"type":10,"tag":1451,"props":1912,"children":1914},{"className":1913},[1385,1426,1427],[1915],{"type":10,"tag":18,"props":1916,"children":1918},{"className":1917},[1385],[1919],{"type":10,"tag":1460,"props":1920,"children":1921},{"role":1462},[1922],{"type":16,"value":1609},{"type":10,"tag":1451,"props":1924,"children":1926},{"className":1925},[1385,1426,1427],[1927],{"type":10,"tag":18,"props":1928,"children":1930},{"className":1929},[1385],[1931],{"type":16,"value":1845},{"type":10,"tag":1451,"props":1933,"children":1935},{"className":1934},[1385,1426,1427],[1936],{"type":10,"tag":18,"props":1937,"children":1939},{"className":1938},[1385],[1940],{"type":16,"value":1855},{"type":10,"tag":1451,"props":1942,"children":1944},{"className":1943},[1385,1426,1427],[1945],{"type":10,"tag":18,"props":1946,"children":1948},{"className":1947},[1385],[1949],{"type":16,"value":1950},"16 {times} 32 {times} 1",{"type":10,"tag":1451,"props":1952,"children":1954},{"className":1953},[1385,1426,1427],[1955],{"type":10,"tag":18,"props":1956,"children":1958},{"className":1957},[1385],[1959],{"type":16,"value":1960},"16 {times} 16 {times} 1",{"type":10,"tag":18,"props":1962,"children":1963},{},[1964,1966,1971,1972,1977,1979,1982,1984,1989],{"type":16,"value":1965},"Implementations that support the standard sparse image block shape for all\nformats listed in the ",{"type":10,"tag":24,"props":1967,"children":1969},{"href":1968},"/chapters/sparsememory#sparsememory-sparseblockshapessingle",[1970],{"type":16,"value":1397},{"type":16,"value":235},{"type":10,"tag":24,"props":1973,"children":1975},{"href":1974},"/chapters/sparsememory#sparsememory-sparseblockshapesmsaa",[1976],{"type":16,"value":1640},{"type":16,"value":1978}," tables ",{"type":10,"tag":50,"props":1980,"children":1981},{"type":634},[],{"type":16,"value":1983}," advertise the following\n",{"type":10,"tag":33,"props":1985,"children":1987},{"className":1986},[],[1988],{"type":16,"value":319},{"type":16,"value":1990},":",{"type":10,"tag":81,"props":1992,"children":1993},{},[1994,2003,2012],{"type":10,"tag":85,"props":1995,"children":1996},{},[1997],{"type":10,"tag":33,"props":1998,"children":2000},{"className":1999},[],[2001],{"type":16,"value":2002},"residencyStandard2DBlockShape",{"type":10,"tag":85,"props":2004,"children":2005},{},[2006],{"type":10,"tag":33,"props":2007,"children":2009},{"className":2008},[],[2010],{"type":16,"value":2011},"residencyStandard2DMultisampleBlockShape",{"type":10,"tag":85,"props":2013,"children":2014},{},[2015],{"type":10,"tag":33,"props":2016,"children":2018},{"className":2017},[],[2019],{"type":16,"value":2020},"residencyStandard3DBlockShape",{"type":10,"tag":18,"props":2022,"children":2023},{},[2024,2026,2031],{"type":16,"value":2025},"Reporting each of these features does ",{"type":10,"tag":73,"props":2027,"children":2028},{},[2029],{"type":16,"value":2030},"not",{"type":16,"value":2032}," imply that all possible image\ntypes are supported as sparse.\nInstead, this indicates that no supported sparse image of the corresponding\ntype will use custom sparse image block dimensions for any formats that have\na corresponding standard sparse image block shape.",{"type":10,"tag":785,"props":2034,"children":2036},{"id":2035},"sparsememory-custom-shapes",[2037],{"type":16,"value":2038},"Custom Sparse Image Block Shapes",{"type":10,"tag":18,"props":2040,"children":2041},{},[2042,2044,2047,2049,2054,2055,2061,2063,2068,2069,2074],{"type":16,"value":2043},"An implementation that does not support a standard image block shape for a\nparticular sparse partially-resident image ",{"type":10,"tag":50,"props":2045,"children":2046},{"type":634},[],{"type":16,"value":2048}," choose to support a custom\nsparse image block shape for it instead.\nThe dimensions of such a custom sparse image block shape are reported in\n",{"type":10,"tag":33,"props":2050,"children":2052},{"className":2051},[],[2053],{"type":16,"value":1092},{"type":16,"value":321},{"type":10,"tag":33,"props":2056,"children":2058},{"className":2057},[],[2059],{"type":16,"value":2060},"imageGranularity",{"type":16,"value":2062},".\nAs with standard sparse image block shapes, the size in bytes of the custom\nsparse image block shape will be reported in\n",{"type":10,"tag":33,"props":2064,"children":2066},{"className":2065},[],[2067],{"type":16,"value":801},{"type":16,"value":321},{"type":10,"tag":33,"props":2070,"children":2072},{"className":2071},[],[2073],{"type":16,"value":808},{"type":16,"value":169},{"type":10,"tag":18,"props":2076,"children":2077},{},[2078,2080,2085,2086,2092],{"type":16,"value":2079},"Custom sparse image block dimensions are reported through\n",{"type":10,"tag":33,"props":2081,"children":2083},{"className":2082},[],[2084],{"type":16,"value":648},{"type":16,"value":235},{"type":10,"tag":33,"props":2087,"children":2089},{"className":2088},[],[2090],{"type":16,"value":2091},"vkGetImageSparseMemoryRequirements",{"type":16,"value":169},{"type":10,"tag":18,"props":2094,"children":2095},{},[2096,2097,2100,2102,2105],{"type":16,"value":1158},{"type":10,"tag":50,"props":2098,"children":2099},{"type":52},[],{"type":16,"value":2101}," not support both the standard sparse image block\nshape and a custom sparse image block shape for the same image.\nThe standard sparse image block shape ",{"type":10,"tag":50,"props":2103,"children":2104},{"type":52},[],{"type":16,"value":2106}," be used if it is supported.",{"type":10,"tag":785,"props":2108,"children":2110},{"id":2109},"sparsememory-multiaspect",[2111],{"type":16,"value":2112},"Multiple Aspects",{"type":10,"tag":18,"props":2114,"children":2115},{},[2116,2118,2123],{"type":16,"value":2117},"Partially resident images are allowed to report separate sparse properties\nfor different aspects of the image.\nOne example is for depth/stencil images where the implementation separates\nthe depth and stencil data into separate planes.\nAnother reason for multiple aspects is to allow the application to manage\nmemory allocation for implementation-private ",{"type":10,"tag":73,"props":2119,"children":2120},{},[2121],{"type":16,"value":2122},"metadata",{"type":16,"value":2124}," associated with the\nimage.\nSee the figure below:",{"type":10,"tag":18,"props":2126,"children":2127},{},[2128],{"type":10,"tag":1207,"props":2129,"children":2133},{"alt":2130,"src":2131,"title":2132},"sparseimage multiaspect","https://data.vkdoc.net/images/sparseimage_multiaspect.svg","Multiple Aspect Sparse Image",[],{"type":10,"tag":891,"props":2135,"children":2136},{},[2137],{"type":10,"tag":18,"props":2138,"children":2139},{},[2140],{"type":16,"value":1283},{"type":10,"tag":18,"props":2142,"children":2143},{},[2144,2146,2151,2152,2157],{"type":16,"value":2145},"In the figure above the depth, stencil, and metadata aspects all have unique\nsparse properties.\nThe per-texel stencil data is ¼ the size of the depth data,\nhence the stencil sparse blocks include 4 × the number of\ntexels.\nThe sparse block size in bytes for all of the aspects is identical and\ndefined by ",{"type":10,"tag":33,"props":2147,"children":2149},{"className":2148},[],[2150],{"type":16,"value":801},{"type":16,"value":321},{"type":10,"tag":33,"props":2153,"children":2155},{"className":2154},[],[2156],{"type":16,"value":808},{"type":16,"value":169},{"type":10,"tag":2159,"props":2160,"children":2162},"h4",{"id":2161},"_metadata",[2163],{"type":16,"value":2164},"Metadata",{"type":10,"tag":18,"props":2166,"children":2167},{},[2168],{"type":16,"value":2169},"The metadata aspect of an image has the following constraints:",{"type":10,"tag":81,"props":2171,"children":2172},{},[2173,2178],{"type":10,"tag":85,"props":2174,"children":2175},{},[2176],{"type":16,"value":2177},"All metadata is reported in the mip tail region of the metadata aspect.",{"type":10,"tag":85,"props":2179,"children":2180},{},[2181,2183,2186],{"type":16,"value":2182},"All metadata ",{"type":10,"tag":50,"props":2184,"children":2185},{"type":52},[],{"type":16,"value":2187}," be bound prior to device use of the sparse image.",{"type":10,"tag":122,"props":2189,"children":2191},{"id":2190},"sparsememory-sparse-memory-aliasing",[2192],{"type":16,"value":694},{"type":10,"tag":18,"props":2194,"children":2195},{},[2196,2198,2204],{"type":16,"value":2197},"By default sparse resources have the same aliasing rules as non-sparse\nresources.\nSee ",{"type":10,"tag":24,"props":2199,"children":2201},{"href":2200},"/chapters/resources#resources-memory-aliasing",[2202],{"type":16,"value":2203},"Memory Aliasing",{"type":16,"value":2205}," for more information.",{"type":10,"tag":18,"props":2207,"children":2208},{},[2209,2215,2217,2225,2227,2233,2234,2240,2242,2247],{"type":10,"tag":33,"props":2210,"children":2212},{"className":2211},[],[2213],{"type":16,"value":2214},"VkDevice",{"type":16,"value":2216}," objects that have the ",{"type":10,"tag":24,"props":2218,"children":2219},{"href":664},[2220],{"type":10,"tag":33,"props":2221,"children":2223},{"className":2222},[],[2224],{"type":16,"value":671},{"type":16,"value":2226}," feature enabled are able to use the\n",{"type":10,"tag":33,"props":2228,"children":2230},{"className":2229},[],[2231],{"type":16,"value":2232},"VK_BUFFER_CREATE_SPARSE_ALIASED_BIT",{"type":16,"value":235},{"type":10,"tag":33,"props":2235,"children":2237},{"className":2236},[],[2238],{"type":16,"value":2239},"VK_IMAGE_CREATE_SPARSE_ALIASED_BIT",{"type":16,"value":2241}," flags for resource creation.\nThese flags allow resources to access physical memory bound into multiple\nlocations within one or more sparse resources in a ",{"type":10,"tag":73,"props":2243,"children":2244},{},[2245],{"type":16,"value":2246},"data consistent",{"type":16,"value":2248},"\nfashion.\nThis means that reading physical memory from multiple aliased locations will\nreturn the same value.",{"type":10,"tag":18,"props":2250,"children":2251},{},[2252,2254,2257,2259,2262],{"type":16,"value":2253},"Care ",{"type":10,"tag":50,"props":2255,"children":2256},{"type":52},[],{"type":16,"value":2258}," be taken when performing a write operation to aliased physical\nmemory.\nMemory dependencies ",{"type":10,"tag":50,"props":2260,"children":2261},{"type":52},[],{"type":16,"value":2263}," be used to separate writes to one alias from reads\nor writes to another alias.\nWrites to aliased memory that are not properly guarded against accesses to\ndifferent aliases will have undefined: results for all accesses to the\naliased memory.",{"type":10,"tag":18,"props":2265,"children":2266},{},[2267,2269,2272],{"type":16,"value":2268},"Applications that wish to make use of data consistent sparse memory aliasing\n",{"type":10,"tag":50,"props":2270,"children":2271},{"type":52},[],{"type":16,"value":2273}," abide by the following guidelines:",{"type":10,"tag":81,"props":2275,"children":2276},{},[2277,2301],{"type":10,"tag":85,"props":2278,"children":2279},{},[2280,2282,2285,2287,2292,2294,2299],{"type":16,"value":2281},"All sparse resources that are bound to aliased physical memory ",{"type":10,"tag":50,"props":2283,"children":2284},{"type":52},[],{"type":16,"value":2286}," be\ncreated with the ",{"type":10,"tag":33,"props":2288,"children":2290},{"className":2289},[],[2291],{"type":16,"value":2232},{"type":16,"value":2293}," /\n",{"type":10,"tag":33,"props":2295,"children":2297},{"className":2296},[],[2298],{"type":16,"value":2239},{"type":16,"value":2300}," flag.",{"type":10,"tag":85,"props":2302,"children":2303},{},[2304,2306,2309,2311],{"type":16,"value":2305},"All resources that access aliased physical memory ",{"type":10,"tag":50,"props":2307,"children":2308},{"type":52},[],{"type":16,"value":2310}," interpret the\nmemory in the same way.\nThis implies the following:",{"type":10,"tag":81,"props":2312,"children":2313},{},[2314,2330,2340],{"type":10,"tag":85,"props":2315,"children":2316},{},[2317,2319,2323,2325,2328],{"type":16,"value":2318},"Buffers and images ",{"type":10,"tag":50,"props":2320,"children":2322},{"type":2321},"cannot",[],{"type":16,"value":2324}," alias the same physical memory in a data\nconsistent fashion.\nThe physical memory ranges ",{"type":10,"tag":50,"props":2326,"children":2327},{"type":52},[],{"type":16,"value":2329}," be used exclusively by buffers or used\nexclusively by images for data consistency to be guaranteed.",{"type":10,"tag":85,"props":2331,"children":2332},{},[2333,2335,2338],{"type":16,"value":2334},"Memory in sparse image mip tail regions ",{"type":10,"tag":50,"props":2336,"children":2337},{"type":2321},[],{"type":16,"value":2339}," access aliased memory\nin a data consistent fashion.",{"type":10,"tag":85,"props":2341,"children":2342},{},[2343,2345,2348],{"type":16,"value":2344},"Sparse images that alias the same physical memory ",{"type":10,"tag":50,"props":2346,"children":2347},{"type":52},[],{"type":16,"value":2349}," have compatible\nformats and be using the same sparse image block shape in order to\naccess aliased memory in a data consistent fashion.",{"type":10,"tag":18,"props":2351,"children":2352},{},[2353,2355,2360,2362,2365],{"type":16,"value":2354},"Failure to follow any of the above guidelines will require the application\nto abide by the normal, non-sparse resource ",{"type":10,"tag":24,"props":2356,"children":2357},{"href":2200},[2358],{"type":16,"value":2359},"aliasing rules",{"type":16,"value":2361},".\nIn this case memory ",{"type":10,"tag":50,"props":2363,"children":2364},{"type":2321},[],{"type":16,"value":2366}," be accessed in a data consistent fashion.",{"type":10,"tag":891,"props":2368,"children":2369},{},[2370],{"type":10,"tag":18,"props":2371,"children":2372},{},[2373,2375,2378,2380,2383,2385,2388],{"type":16,"value":2374},"Enabling sparse resource memory aliasing ",{"type":10,"tag":50,"props":2376,"children":2377},{"type":92},[],{"type":16,"value":2379}," be a way to lower physical\nmemory use, but it ",{"type":10,"tag":50,"props":2381,"children":2382},{"type":634},[],{"type":16,"value":2384}," reduce performance on some implementations.\nAn application developer ",{"type":10,"tag":50,"props":2386,"children":2387},{"type":92},[],{"type":16,"value":2389}," test on their target HW and balance the memory\n/ performance trade-offs measured.",{"type":10,"tag":122,"props":2391,"children":2393},{"id":2392},"sparsememory-resourceapi",[2394],{"type":16,"value":2395},"Sparse Resource API",{"type":10,"tag":18,"props":2397,"children":2398},{},[2399],{"type":16,"value":2400},"The APIs related to sparse resources are grouped into the following\ncategories:",{"type":10,"tag":81,"props":2402,"children":2403},{},[2404,2413,2422,2431,2440,2449],{"type":10,"tag":85,"props":2405,"children":2406},{},[2407],{"type":10,"tag":24,"props":2408,"children":2410},{"href":2409},"/chapters/sparsememory#sparsememory-physicalfeatures",[2411],{"type":16,"value":2412},"Physical Device Features",{"type":10,"tag":85,"props":2414,"children":2415},{},[2416],{"type":10,"tag":24,"props":2417,"children":2419},{"href":2418},"/chapters/sparsememory#sparsememory-physicalprops",[2420],{"type":16,"value":2421},"Physical Device Sparse Properties",{"type":10,"tag":85,"props":2423,"children":2424},{},[2425],{"type":10,"tag":24,"props":2426,"children":2428},{"href":2427},"/chapters/sparsememory#sparsememory-format-props",[2429],{"type":16,"value":2430},"Sparse Image Format Properties",{"type":10,"tag":85,"props":2432,"children":2433},{},[2434],{"type":10,"tag":24,"props":2435,"children":2437},{"href":2436},"/chapters/sparsememory#sparsememory-resource-creation",[2438],{"type":16,"value":2439},"Sparse Resource Creation",{"type":10,"tag":85,"props":2441,"children":2442},{},[2443],{"type":10,"tag":24,"props":2444,"children":2446},{"href":2445},"/chapters/sparsememory#sparsememory-memory-requirements",[2447],{"type":16,"value":2448},"Sparse Resource Memory Requirements",{"type":10,"tag":85,"props":2450,"children":2451},{},[2452],{"type":10,"tag":24,"props":2453,"children":2455},{"href":2454},"/chapters/sparsememory#sparsememory-resource-binding",[2456],{"type":16,"value":2457},"Binding Resource Memory",{"type":10,"tag":785,"props":2459,"children":2461},{"id":2460},"sparsememory-physicalfeatures",[2462],{"type":16,"value":2412},{"type":10,"tag":18,"props":2464,"children":2465},{},[2466,2468,2473,2475,2478,2480,2485,2487,2490,2492,2497],{"type":16,"value":2467},"Some sparse-resource related features are reported and enabled in\n",{"type":10,"tag":33,"props":2469,"children":2471},{"className":2470},[],[2472],{"type":16,"value":167},{"type":16,"value":2474},".\nThese features ",{"type":10,"tag":50,"props":2476,"children":2477},{"type":52},[],{"type":16,"value":2479}," be supported and enabled on the ",{"type":10,"tag":33,"props":2481,"children":2483},{"className":2482},[],[2484],{"type":16,"value":2214},{"type":16,"value":2486}," object\nbefore applications ",{"type":10,"tag":50,"props":2488,"children":2489},{"type":92},[],{"type":16,"value":2491}," use them.\nSee ",{"type":10,"tag":24,"props":2493,"children":2495},{"href":2494},"/chapters/features#features",[2496],{"type":16,"value":2412},{"type":16,"value":2498}," for information on how to get and\nset enabled device features, and for more detailed explanations of these\nfeatures.",{"type":10,"tag":2159,"props":2500,"children":2502},{"id":2501},"_sparse_physical_device_features",[2503],{"type":16,"value":2504},"Sparse Physical Device Features",{"type":10,"tag":81,"props":2506,"children":2507},{},[2508,2545,2566,2589,2611,2633,2654,2675,2696],{"type":10,"tag":85,"props":2509,"children":2510},{},[2511,2516,2518,2523,2524,2529,2531,2536,2538,2543],{"type":10,"tag":33,"props":2512,"children":2514},{"className":2513},[],[2515],{"type":16,"value":187},{"type":16,"value":2517},": Support for creating ",{"type":10,"tag":24,"props":2519,"children":2521},{"href":2520},"/man/VkBuffer",[2522],{"type":16,"value":38},{"type":16,"value":235},{"type":10,"tag":33,"props":2525,"children":2527},{"className":2526},[],[2528],{"type":16,"value":46},{"type":16,"value":2530}," objects with the ",{"type":10,"tag":33,"props":2532,"children":2534},{"className":2533},[],[2535],{"type":16,"value":241},{"type":16,"value":2537},"\nand ",{"type":10,"tag":33,"props":2539,"children":2541},{"className":2540},[],[2542],{"type":16,"value":233},{"type":16,"value":2544}," flags, respectively.",{"type":10,"tag":85,"props":2546,"children":2547},{},[2548,2553,2554,2558,2560,2565],{"type":10,"tag":33,"props":2549,"children":2551},{"className":2550},[],[2552],{"type":16,"value":373},{"type":16,"value":2517},{"type":10,"tag":24,"props":2555,"children":2556},{"href":2520},[2557],{"type":16,"value":38},{"type":16,"value":2559}," objects\nwith the ",{"type":10,"tag":33,"props":2561,"children":2563},{"className":2562},[],[2564],{"type":16,"value":345},{"type":16,"value":2300},{"type":10,"tag":85,"props":2567,"children":2568},{},[2569,2574,2576,2581,2583,2588],{"type":10,"tag":33,"props":2570,"children":2572},{"className":2571},[],[2573],{"type":16,"value":402},{"type":16,"value":2575},": Support for creating 2D single-sampled\n",{"type":10,"tag":33,"props":2577,"children":2579},{"className":2578},[],[2580],{"type":16,"value":46},{"type":16,"value":2582}," objects with ",{"type":10,"tag":33,"props":2584,"children":2586},{"className":2585},[],[2587],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2590,"children":2591},{},[2592,2597,2599,2604,2605,2610],{"type":10,"tag":33,"props":2593,"children":2595},{"className":2594},[],[2596],{"type":16,"value":431},{"type":16,"value":2598},": Support for creating 3D ",{"type":10,"tag":24,"props":2600,"children":2602},{"href":2601},"/man/VkImage",[2603],{"type":16,"value":46},{"type":16,"value":411},{"type":10,"tag":33,"props":2606,"children":2608},{"className":2607},[],[2609],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2612,"children":2613},{},[2614,2619,2621,2625,2627,2632],{"type":10,"tag":33,"props":2615,"children":2617},{"className":2616},[],[2618],{"type":16,"value":460},{"type":16,"value":2620},": Support for creating 2D ",{"type":10,"tag":24,"props":2622,"children":2623},{"href":2601},[2624],{"type":16,"value":46},{"type":16,"value":2626},"\nobjects with 2 samples and ",{"type":10,"tag":33,"props":2628,"children":2630},{"className":2629},[],[2631],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2634,"children":2635},{},[2636,2641,2642,2646,2648,2653],{"type":10,"tag":33,"props":2637,"children":2639},{"className":2638},[],[2640],{"type":16,"value":489},{"type":16,"value":2620},{"type":10,"tag":24,"props":2643,"children":2644},{"href":2601},[2645],{"type":16,"value":46},{"type":16,"value":2647},"\nobjects with 4 samples and ",{"type":10,"tag":33,"props":2649,"children":2651},{"className":2650},[],[2652],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2655,"children":2656},{},[2657,2662,2663,2667,2669,2674],{"type":10,"tag":33,"props":2658,"children":2660},{"className":2659},[],[2661],{"type":16,"value":517},{"type":16,"value":2620},{"type":10,"tag":24,"props":2664,"children":2665},{"href":2601},[2666],{"type":16,"value":46},{"type":16,"value":2668},"\nobjects with 8 samples and ",{"type":10,"tag":33,"props":2670,"children":2672},{"className":2671},[],[2673],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2676,"children":2677},{},[2678,2683,2684,2688,2690,2695],{"type":10,"tag":33,"props":2679,"children":2681},{"className":2680},[],[2682],{"type":16,"value":545},{"type":16,"value":2620},{"type":10,"tag":24,"props":2685,"children":2686},{"href":2601},[2687],{"type":16,"value":46},{"type":16,"value":2689},"\nobjects with 16 samples and ",{"type":10,"tag":33,"props":2691,"children":2693},{"className":2692},[],[2694],{"type":16,"value":261},{"type":16,"value":169},{"type":10,"tag":85,"props":2697,"children":2698},{},[2699,2704,2705,2709,2710,2715,2716,2721,2722,2727],{"type":10,"tag":33,"props":2700,"children":2702},{"className":2701},[],[2703],{"type":16,"value":671},{"type":16,"value":2517},{"type":10,"tag":24,"props":2706,"children":2707},{"href":2520},[2708],{"type":16,"value":38},{"type":16,"value":235},{"type":10,"tag":33,"props":2711,"children":2713},{"className":2712},[],[2714],{"type":16,"value":46},{"type":16,"value":2530},{"type":10,"tag":33,"props":2717,"children":2719},{"className":2718},[],[2720],{"type":16,"value":2232},{"type":16,"value":2537},{"type":10,"tag":33,"props":2723,"children":2725},{"className":2724},[],[2726],{"type":16,"value":2239},{"type":16,"value":2544},{"type":10,"tag":785,"props":2729,"children":2731},{"id":2730},"sparsememory-physicalprops",[2732],{"type":16,"value":2421},{"type":10,"tag":18,"props":2734,"children":2735},{},[2736,2738,2744,2745,2751,2753,2758],{"type":16,"value":2737},"Some features of the implementation are not possible to disable, and are\nreported to allow applications to alter their sparse resource usage\naccordingly.\nThese read-only capabilities are reported in the\n",{"type":10,"tag":24,"props":2739,"children":2741},{"href":2740},"/man/VkPhysicalDeviceProperties",[2742],{"type":16,"value":2743},"VkPhysicalDeviceProperties",{"type":16,"value":321},{"type":10,"tag":33,"props":2746,"children":2748},{"className":2747},[],[2749],{"type":16,"value":2750},"sparseProperties",{"type":16,"value":2752}," member, which is a\n",{"type":10,"tag":33,"props":2754,"children":2756},{"className":2755},[],[2757],{"type":16,"value":319},{"type":16,"value":2759}," structure.",{"type":10,"tag":2761,"props":2762,"children":2764},"refpage",{"name":319,"type":2763},"structs",[2765],{"type":10,"tag":18,"props":2766,"children":2767},{},[2768],{"type":16,"value":2769},"Structure specifying physical device sparse memory properties",{"type":10,"tag":785,"props":2771,"children":2773},{"id":2772},"sparsememory-format-props",[2774],{"type":16,"value":2430},{"type":10,"tag":18,"props":2776,"children":2777},{},[2778,2780,2783,2785,2789,2790,2793],{"type":16,"value":2779},"Given that certain aspects of sparse image support, including the sparse\nimage block dimensions, ",{"type":10,"tag":50,"props":2781,"children":2782},{"type":634},[],{"type":16,"value":2784}," be implementation-dependent,\n",{"type":10,"tag":24,"props":2786,"children":2787},{"href":645},[2788],{"type":16,"value":648},{"type":16,"value":1113},{"type":10,"tag":50,"props":2791,"children":2792},{"type":92},[],{"type":16,"value":2794}," be used to query\nfor sparse image format properties prior to resource creation.\nThis command is used to check whether a given set of sparse image parameters\nis supported and what the sparse image block shape will be.",{"type":10,"tag":2159,"props":2796,"children":2798},{"id":2797},"_sparse_image_format_properties_api",[2799],{"type":16,"value":2800},"Sparse Image Format Properties API",{"type":10,"tag":2761,"props":2802,"children":2803},{"name":1092,"type":2763},[2804],{"type":10,"tag":18,"props":2805,"children":2806},{},[2807],{"type":16,"value":2808},"Structure specifying sparse image format properties",{"type":10,"tag":2761,"props":2810,"children":2813},{"name":2811,"type":2812},"VkSparseImageFormatFlagBits","enums",[2814],{"type":10,"tag":18,"props":2815,"children":2816},{},[2817],{"type":16,"value":2818},"Bitmask specifying additional information about a sparse image resource",{"type":10,"tag":2761,"props":2820,"children":2822},{"name":2821,"type":143},"VkSparseImageFormatFlags",[2823],{"type":10,"tag":18,"props":2824,"children":2825},{},[2826],{"type":16,"value":2827},"Bitmask of VkSparseImageFormatFlagBits",{"type":10,"tag":2761,"props":2829,"children":2831},{"name":648,"type":2830},"protos",[2832],{"type":10,"tag":18,"props":2833,"children":2834},{},[2835],{"type":16,"value":2836},"Retrieve properties of an image format applied to sparse images",{"type":10,"tag":2761,"props":2838,"children":2840},{"name":2839,"type":2830},"vkGetPhysicalDeviceSparseImageFormatProperties2",[2841],{"type":10,"tag":18,"props":2842,"children":2843},{},[2844],{"type":16,"value":2836},{"type":10,"tag":2761,"props":2846,"children":2848},{"name":2847,"type":2763},"VkPhysicalDeviceSparseImageFormatInfo2",[2849],{"type":10,"tag":18,"props":2850,"children":2851},{},[2852],{"type":16,"value":2853},"Structure specifying sparse image format inputs",{"type":10,"tag":2761,"props":2855,"children":2857},{"name":2856,"type":2763},"VkSparseImageFormatProperties2",[2858],{"type":10,"tag":18,"props":2859,"children":2860},{},[2861],{"type":16,"value":2808},{"type":10,"tag":785,"props":2863,"children":2865},{"id":2864},"sparsememory-resource-creation",[2866],{"type":16,"value":2439},{"type":10,"tag":18,"props":2868,"children":2869},{},[2870,2872,2877,2879,2883,2885,2891,2893,2899,2900,2906,2908,2911,2913,2919,2920,2926],{"type":16,"value":2871},"Sparse resources require that one or more sparse feature flags be specified\n(as part of the ",{"type":10,"tag":33,"props":2873,"children":2875},{"className":2874},[],[2876],{"type":16,"value":167},{"type":16,"value":2878}," structure described\npreviously in the ",{"type":10,"tag":24,"props":2880,"children":2881},{"href":2409},[2882],{"type":16,"value":2412},{"type":16,"value":2884},"\nsection) when calling ",{"type":10,"tag":24,"props":2886,"children":2888},{"href":2887},"/man/vkCreateDevice",[2889],{"type":16,"value":2890},"vkCreateDevice",{"type":16,"value":2892},".\nWhen the appropriate device features are enabled, the\n",{"type":10,"tag":33,"props":2894,"children":2896},{"className":2895},[],[2897],{"type":16,"value":2898},"VK_BUFFER_CREATE_SPARSE_*",{"type":16,"value":40},{"type":10,"tag":33,"props":2901,"children":2903},{"className":2902},[],[2904],{"type":16,"value":2905},"VK_IMAGE_CREATE_SPARSE_*",{"type":16,"value":2907}," flags\n",{"type":10,"tag":50,"props":2909,"children":2910},{"type":92},[],{"type":16,"value":2912}," be used.\nSee ",{"type":10,"tag":24,"props":2914,"children":2916},{"href":2915},"/man/vkCreateBuffer",[2917],{"type":16,"value":2918},"vkCreateBuffer",{"type":16,"value":40},{"type":10,"tag":24,"props":2921,"children":2923},{"href":2922},"/man/vkCreateImage",[2924],{"type":16,"value":2925},"vkCreateImage",{"type":16,"value":2927}," for details of the resource\ncreation APIs.",{"type":10,"tag":891,"props":2929,"children":2930},{},[2931],{"type":10,"tag":18,"props":2932,"children":2933},{},[2934,2936,2941,2942,2947,2949,2954,2955,2960,2962,2965,2967,2973,2975,2981],{"type":16,"value":2935},"Specifying ",{"type":10,"tag":33,"props":2937,"children":2939},{"className":2938},[],[2940],{"type":16,"value":345},{"type":16,"value":727},{"type":10,"tag":33,"props":2943,"children":2945},{"className":2944},[],[2946],{"type":16,"value":261},{"type":16,"value":2948}," requires specifying\n",{"type":10,"tag":33,"props":2950,"children":2952},{"className":2951},[],[2953],{"type":16,"value":241},{"type":16,"value":727},{"type":10,"tag":33,"props":2956,"children":2958},{"className":2957},[],[2959],{"type":16,"value":233},{"type":16,"value":2961},", respectively, as well.\nThis means that resources ",{"type":10,"tag":50,"props":2963,"children":2964},{"type":52},[],{"type":16,"value":2966}," be created with the appropriate\n",{"type":10,"tag":33,"props":2968,"children":2970},{"className":2969},[],[2971],{"type":16,"value":2972},"*_SPARSE_BINDING_BIT",{"type":16,"value":2974}," to be used with the sparse binding command\n(",{"type":10,"tag":33,"props":2976,"children":2978},{"className":2977},[],[2979],{"type":16,"value":2980},"vkQueueBindSparse",{"type":16,"value":2982},").",{"type":10,"tag":785,"props":2984,"children":2986},{"id":2985},"sparsememory-memory-requirements",[2987],{"type":16,"value":2448},{"type":10,"tag":18,"props":2989,"children":2990},{},[2991,2993,2998,3000,3005],{"type":16,"value":2992},"Sparse resources have specific memory requirements related to binding sparse\nmemory.\nThese memory requirements are reported differently for ",{"type":10,"tag":33,"props":2994,"children":2996},{"className":2995},[],[2997],{"type":16,"value":38},{"type":16,"value":2999},"\nobjects and ",{"type":10,"tag":33,"props":3001,"children":3003},{"className":3002},[],[3004],{"type":16,"value":46},{"type":16,"value":3006}," objects.",{"type":10,"tag":2159,"props":3008,"children":3010},{"id":3009},"sparsememory-memory-buffer-fully-resident",[3011],{"type":16,"value":3012},"Buffer and Fully-Resident Images",{"type":10,"tag":18,"props":3014,"children":3015},{},[3016,3018,3021,3023,3028,3030,3035,3036,3041,3043,3046,3048,3053],{"type":16,"value":3017},"Buffers (both fully and partially resident) and fully-resident images ",{"type":10,"tag":50,"props":3019,"children":3020},{"type":92},[],{"type":16,"value":3022},"\nbe bound to memory using only the data from ",{"type":10,"tag":33,"props":3024,"children":3026},{"className":3025},[],[3027],{"type":16,"value":801},{"type":16,"value":3029},".\nFor all sparse resources the ",{"type":10,"tag":33,"props":3031,"children":3033},{"className":3032},[],[3034],{"type":16,"value":801},{"type":16,"value":321},{"type":10,"tag":33,"props":3037,"children":3039},{"className":3038},[],[3040],{"type":16,"value":808},{"type":16,"value":3042},"\nmember specifies both the binding granularity in bytes and the ",{"type":10,"tag":50,"props":3044,"children":3045},{"type":575},[],{"type":16,"value":3047},"\nalignment of ",{"type":10,"tag":33,"props":3049,"children":3051},{"className":3050},[],[3052],{"type":16,"value":61},{"type":16,"value":169},{"type":10,"tag":2159,"props":3055,"children":3057},{"id":3056},"sparsememory-memory-partially-resident",[3058],{"type":16,"value":3059},"Partially Resident Images",{"type":10,"tag":18,"props":3061,"children":3062},{},[3063,3065,3070,3071,3076],{"type":16,"value":3064},"Partially resident images have a different method for binding memory.\nAs with buffers and fully resident images, the\n",{"type":10,"tag":33,"props":3066,"children":3068},{"className":3067},[],[3069],{"type":16,"value":801},{"type":16,"value":321},{"type":10,"tag":33,"props":3072,"children":3074},{"className":3073},[],[3075],{"type":16,"value":808},{"type":16,"value":3077}," field specifies the binding\ngranularity in bytes for the image.",{"type":10,"tag":18,"props":3079,"children":3080},{},[3081,3083,3088,3090,3095,3097,3102],{"type":16,"value":3082},"Requesting sparse memory requirements for ",{"type":10,"tag":33,"props":3084,"children":3086},{"className":3085},[],[3087],{"type":16,"value":46},{"type":16,"value":3089}," objects using\n",{"type":10,"tag":33,"props":3091,"children":3093},{"className":3092},[],[3094],{"type":16,"value":2091},{"type":16,"value":3096}," will return an array of one or more\n",{"type":10,"tag":33,"props":3098,"children":3100},{"className":3099},[],[3101],{"type":16,"value":1177},{"type":16,"value":3103}," structures.\nEach structure describes the sparse memory requirements for a group of\naspects of the image.",{"type":10,"tag":18,"props":3105,"children":3106},{},[3107,3109,3112,3114,3119],{"type":16,"value":3108},"The sparse image ",{"type":10,"tag":50,"props":3110,"children":3111},{"type":52},[],{"type":16,"value":3113}," have been created using the\n",{"type":10,"tag":33,"props":3115,"children":3117},{"className":3116},[],[3118],{"type":16,"value":261},{"type":16,"value":3120}," flag to retrieve valid sparse\nimage memory requirements.",{"type":10,"tag":2159,"props":3122,"children":3124},{"id":3123},"_sparse_image_memory_requirements",[3125],{"type":16,"value":3126},"Sparse Image Memory Requirements",{"type":10,"tag":2761,"props":3128,"children":3129},{"name":1177,"type":2763},[3130],{"type":10,"tag":18,"props":3131,"children":3132},{},[3133],{"type":16,"value":3134},"Structure specifying sparse image memory requirements",{"type":10,"tag":2761,"props":3136,"children":3137},{"name":2091,"type":2830},[3138],{"type":10,"tag":18,"props":3139,"children":3140},{},[3141],{"type":16,"value":3142},"Query the memory requirements for a sparse image",{"type":10,"tag":2761,"props":3144,"children":3146},{"name":3145,"type":2830},"vkGetImageSparseMemoryRequirements2",[3147],{"type":10,"tag":18,"props":3148,"children":3149},{},[3150],{"type":16,"value":3142},{"type":10,"tag":2761,"props":3152,"children":3154},{"name":3153,"type":2830},"vkGetDeviceImageSparseMemoryRequirements",[3155],{"type":10,"tag":18,"props":3156,"children":3157},{},[3158],{"type":16,"value":3142},{"type":10,"tag":2761,"props":3160,"children":3162},{"name":3161,"type":2763},"VkImageSparseMemoryRequirementsInfo2",[3163],{"type":10,"tag":18,"props":3164,"children":3165},{},[3166],{"type":16,"value":3167},"(None)",{"type":10,"tag":2761,"props":3169,"children":3171},{"name":3170,"type":2763},"VkSparseImageMemoryRequirements2",[3172],{"type":10,"tag":18,"props":3173,"children":3174},{},[3175],{"type":16,"value":3167},{"type":10,"tag":785,"props":3177,"children":3179},{"id":3178},"sparsememory-resource-binding",[3180],{"type":16,"value":2457},{"type":10,"tag":18,"props":3182,"children":3183},{},[3184,3186,3192,3193,3199,3201,3204,3206,3209,3211,3214],{"type":16,"value":3185},"Non-sparse resources are backed by a single physical allocation prior to\ndevice use (via ",{"type":10,"tag":33,"props":3187,"children":3189},{"className":3188},[],[3190],{"type":16,"value":3191},"vkBindImageMemory",{"type":16,"value":153},{"type":10,"tag":33,"props":3194,"children":3196},{"className":3195},[],[3197],{"type":16,"value":3198},"vkBindBufferMemory",{"type":16,"value":3200},"), and\ntheir backing ",{"type":10,"tag":50,"props":3202,"children":3203},{"type":52},[],{"type":16,"value":3205}," not be changed.\nOn the other hand, sparse resources ",{"type":10,"tag":50,"props":3207,"children":3208},{"type":92},[],{"type":16,"value":3210}," be bound to memory non-contiguously\nand these bindings ",{"type":10,"tag":50,"props":3212,"children":3213},{"type":92},[],{"type":16,"value":3215}," be altered during the lifetime of the resource.",{"type":10,"tag":891,"props":3217,"children":3218},{},[3219],{"type":10,"tag":18,"props":3220,"children":3221},{},[3222,3224,3229,3231,3237,3239,3242],{"type":16,"value":3223},"It is important to note that freeing a ",{"type":10,"tag":33,"props":3225,"children":3227},{"className":3226},[],[3228],{"type":16,"value":61},{"type":16,"value":3230}," object with\n",{"type":10,"tag":33,"props":3232,"children":3234},{"className":3233},[],[3235],{"type":16,"value":3236},"vkFreeMemory",{"type":16,"value":3238}," will not cause resources (or resource regions) bound to\nthe memory object to become unbound.\nApplications ",{"type":10,"tag":50,"props":3240,"children":3241},{"type":52},[],{"type":16,"value":3243}," not access resources bound to memory that has been freed.",{"type":10,"tag":18,"props":3245,"children":3246},{},[3247,3249,3255,3257,3260,3262,3268,3270,3273],{"type":16,"value":3248},"Sparse memory bindings execute on a queue that includes the\n",{"type":10,"tag":33,"props":3250,"children":3252},{"className":3251},[],[3253],{"type":16,"value":3254},"VK_QUEUE_SPARSE_BINDING_BIT",{"type":16,"value":3256}," bit.\nApplications ",{"type":10,"tag":50,"props":3258,"children":3259},{"type":52},[],{"type":16,"value":3261}," use ",{"type":10,"tag":24,"props":3263,"children":3265},{"href":3264},"/chapters/synchronization#synchronization",[3266],{"type":16,"value":3267},"synchronization primitives",{"type":16,"value":3269}," to\nguarantee that other queues do not access ranges of memory concurrently with\na binding change.\nApplications ",{"type":10,"tag":50,"props":3271,"children":3272},{"type":92},[],{"type":16,"value":3274}," access other ranges of the same resource while a bind\noperation is executing.",{"type":10,"tag":891,"props":3276,"children":3277},{},[3278],{"type":10,"tag":18,"props":3279,"children":3280},{},[3281,3283,3286,3288,3291],{"type":16,"value":3282},"Implementations ",{"type":10,"tag":50,"props":3284,"children":3285},{"type":52},[],{"type":16,"value":3287}," provide a guarantee that simultaneously binding sparse\nblocks while another queue accesses those same sparse blocks via a sparse\nresource ",{"type":10,"tag":50,"props":3289,"children":3290},{"type":52},[],{"type":16,"value":3292}," not access memory owned by another process or otherwise\ncorrupt the system.",{"type":10,"tag":18,"props":3294,"children":3295},{},[3296,3298,3301,3303,3308,3310,3313,3315,3321,3323,3326,3327,3332],{"type":16,"value":3297},"While some implementations ",{"type":10,"tag":50,"props":3299,"children":3300},{"type":634},[],{"type":16,"value":3302}," include ",{"type":10,"tag":33,"props":3304,"children":3306},{"className":3305},[],[3307],{"type":16,"value":3254},{"type":16,"value":3309},"\nsupport in queue families that also include graphics and compute support,\nother implementations ",{"type":10,"tag":50,"props":3311,"children":3312},{"type":634},[],{"type":16,"value":3314}," only expose a\n",{"type":10,"tag":33,"props":3316,"children":3318},{"className":3317},[],[3319],{"type":16,"value":3320},"VK_QUEUE_SPARSE_BINDING_BIT-only",{"type":16,"value":3322}," queue family.\nIn either case, applications ",{"type":10,"tag":50,"props":3324,"children":3325},{"type":52},[],{"type":16,"value":3261},{"type":10,"tag":24,"props":3328,"children":3329},{"href":3264},[3330],{"type":16,"value":3331},"synchronization\nprimitives",{"type":16,"value":3333}," to explicitly request any ordering dependencies between sparse\nmemory binding operations and other graphics/compute/transfer operations, as\nsparse binding operations are not automatically ordered against command\nbuffer execution, even within a single queue.",{"type":10,"tag":18,"props":3335,"children":3336},{},[3337,3339,3345,3347,3350,3352,3358,3360,3366,3367,3372,3374,3379],{"type":16,"value":3338},"When binding memory explicitly for the ",{"type":10,"tag":33,"props":3340,"children":3342},{"className":3341},[],[3343],{"type":16,"value":3344},"VK_IMAGE_ASPECT_METADATA_BIT",{"type":16,"value":3346},"\nthe application ",{"type":10,"tag":50,"props":3348,"children":3349},{"type":52},[],{"type":16,"value":3351}," use the ",{"type":10,"tag":33,"props":3353,"children":3355},{"className":3354},[],[3356],{"type":16,"value":3357},"VK_SPARSE_MEMORY_BIND_METADATA_BIT",{"type":16,"value":3359}," in\nthe ",{"type":10,"tag":33,"props":3361,"children":3363},{"className":3362},[],[3364],{"type":16,"value":3365},"VkSparseMemoryBind",{"type":16,"value":321},{"type":10,"tag":33,"props":3368,"children":3370},{"className":3369},[],[3371],{"type":16,"value":143},{"type":16,"value":3373}," field when binding memory.\nBinding memory for metadata is done the same way as binding memory for the\nmip tail, with the addition of the ",{"type":10,"tag":33,"props":3375,"children":3377},{"className":3376},[],[3378],{"type":16,"value":3357},{"type":16,"value":3380},"\nflag.",{"type":10,"tag":18,"props":3382,"children":3383},{},[3384,3386,3389,3391,3395,3397,3403,3405,3410,3412,3415,3417,3422,3424,3430,3432,3438,3439,3445,3447,3453],{"type":16,"value":3385},"Binding the mip tail for any aspect ",{"type":10,"tag":50,"props":3387,"children":3388},{"type":52},[],{"type":16,"value":3390}," only be performed using\n",{"type":10,"tag":24,"props":3392,"children":3393},{"href":1143},[3394],{"type":16,"value":1146},{"type":16,"value":3396},".\nIf ",{"type":10,"tag":33,"props":3398,"children":3400},{"className":3399},[],[3401],{"type":16,"value":3402},"formatProperties.flags",{"type":16,"value":3404}," contains\n",{"type":10,"tag":33,"props":3406,"children":3408},{"className":3407},[],[3409],{"type":16,"value":1169},{"type":16,"value":3411},", then it ",{"type":10,"tag":50,"props":3413,"children":3414},{"type":92},[],{"type":16,"value":3416}," be bound with\na single ",{"type":10,"tag":24,"props":3418,"children":3420},{"href":3419},"/man/VkSparseMemoryBind",[3421],{"type":16,"value":3365},{"type":16,"value":3423}," structure, with ",{"type":10,"tag":33,"props":3425,"children":3427},{"className":3426},[],[3428],{"type":16,"value":3429},"resourceOffset",{"type":16,"value":3431}," =\n",{"type":10,"tag":33,"props":3433,"children":3435},{"className":3434},[],[3436],{"type":16,"value":3437},"imageMipTailOffset",{"type":16,"value":40},{"type":10,"tag":33,"props":3440,"children":3442},{"className":3441},[],[3443],{"type":16,"value":3444},"size",{"type":16,"value":3446}," = ",{"type":10,"tag":33,"props":3448,"children":3450},{"className":3449},[],[3451],{"type":16,"value":3452},"imageMipTailSize",{"type":16,"value":169},{"type":10,"tag":18,"props":3455,"children":3456},{},[3457,3459,3464,3466,3471],{"type":16,"value":3458},"If ",{"type":10,"tag":33,"props":3460,"children":3462},{"className":3461},[],[3463],{"type":16,"value":3402},{"type":16,"value":3465}," does not contain\n",{"type":10,"tag":33,"props":3467,"children":3469},{"className":3468},[],[3470],{"type":16,"value":1169},{"type":16,"value":3472}," then the offset for the mip\ntail in each array layer is given as:",{"type":10,"tag":3474,"props":3475,"children":3480},"pre",{"className":3476,"code":3477,"language":3478,"meta":3479,"style":3479},"language-c++ shiki shiki-themes github-light-default github-dark-default","arrayMipTailOffset = imageMipTailOffset + arrayLayer * imageMipTailStride;\n","c++","",[3481],{"type":10,"tag":33,"props":3482,"children":3483},{"__ignoreMap":3479},[3484],{"type":10,"tag":3485,"props":3486,"children":3489},"span",{"class":3487,"line":3488},"line",1,[3490,3496,3502,3507,3512,3517,3522],{"type":10,"tag":3485,"props":3491,"children":3493},{"style":3492},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[3494],{"type":16,"value":3495},"arrayMipTailOffset ",{"type":10,"tag":3485,"props":3497,"children":3499},{"style":3498},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[3500],{"type":16,"value":3501},"=",{"type":10,"tag":3485,"props":3503,"children":3504},{"style":3492},[3505],{"type":16,"value":3506}," imageMipTailOffset ",{"type":10,"tag":3485,"props":3508,"children":3509},{"style":3498},[3510],{"type":16,"value":3511},"+",{"type":10,"tag":3485,"props":3513,"children":3514},{"style":3492},[3515],{"type":16,"value":3516}," arrayLayer ",{"type":10,"tag":3485,"props":3518,"children":3519},{"style":3498},[3520],{"type":16,"value":3521},"*",{"type":10,"tag":3485,"props":3523,"children":3524},{"style":3492},[3525],{"type":16,"value":3526}," imageMipTailStride;\n",{"type":10,"tag":18,"props":3528,"children":3529},{},[3530,3532,3535,3537,3543,3544,3548,3550,3555,3556,3561,3562,3567,3568,3574],{"type":16,"value":3531},"and the mip tail ",{"type":10,"tag":50,"props":3533,"children":3534},{"type":92},[],{"type":16,"value":3536}," be bound with ",{"type":10,"tag":33,"props":3538,"children":3540},{"className":3539},[],[3541],{"type":16,"value":3542},"layerCount",{"type":16,"value":1113},{"type":10,"tag":24,"props":3545,"children":3546},{"href":3419},[3547],{"type":16,"value":3365},{"type":16,"value":3549},"\nstructures, each using ",{"type":10,"tag":33,"props":3551,"children":3553},{"className":3552},[],[3554],{"type":16,"value":3444},{"type":16,"value":3446},{"type":10,"tag":33,"props":3557,"children":3559},{"className":3558},[],[3560],{"type":16,"value":3452},{"type":16,"value":235},{"type":10,"tag":33,"props":3563,"children":3565},{"className":3564},[],[3566],{"type":16,"value":3429},{"type":16,"value":3446},{"type":10,"tag":33,"props":3569,"children":3571},{"className":3570},[],[3572],{"type":16,"value":3573},"arrayMipTailOffset",{"type":16,"value":3575}," as defined above.",{"type":10,"tag":18,"props":3577,"children":3578},{},[3579],{"type":16,"value":3580},"Sparse memory binding is handled by the following APIs and related data\nstructures.",{"type":10,"tag":2159,"props":3582,"children":3584},{"id":3583},"sparsemem-memory-binding",[3585],{"type":16,"value":3586},"Sparse Memory Binding Functions",{"type":10,"tag":2761,"props":3588,"children":3589},{"name":3365,"type":2763},[3590],{"type":10,"tag":18,"props":3591,"children":3592},{},[3593],{"type":16,"value":3594},"Structure specifying a sparse memory bind operation",{"type":10,"tag":2761,"props":3596,"children":3598},{"name":3597,"type":2812},"VkSparseMemoryBindFlagBits",[3599],{"type":10,"tag":18,"props":3600,"children":3601},{},[3602],{"type":16,"value":3603},"Bitmask specifying usage of a sparse memory binding operation",{"type":10,"tag":2761,"props":3605,"children":3607},{"name":3606,"type":143},"VkSparseMemoryBindFlags",[3608],{"type":10,"tag":18,"props":3609,"children":3610},{},[3611],{"type":16,"value":3612},"Bitmask of VkSparseMemoryBindFlagBits",{"type":10,"tag":2761,"props":3614,"children":3616},{"name":3615,"type":2763},"VkSparseBufferMemoryBindInfo",[3617],{"type":10,"tag":18,"props":3618,"children":3619},{},[3620],{"type":16,"value":3621},"Structure specifying a sparse buffer memory bind operation",{"type":10,"tag":2761,"props":3623,"children":3624},{"name":1146,"type":2763},[3625],{"type":10,"tag":18,"props":3626,"children":3627},{},[3628],{"type":16,"value":3629},"Structure specifying sparse image opaque memory bind information",{"type":10,"tag":2761,"props":3631,"children":3633},{"name":3632,"type":2763},"VkSparseImageMemoryBindInfo",[3634],{"type":10,"tag":18,"props":3635,"children":3636},{},[3637],{"type":16,"value":3638},"Structure specifying sparse image memory bind information",{"type":10,"tag":2761,"props":3640,"children":3642},{"name":3641,"type":2763},"VkSparseImageMemoryBind",[3643],{"type":10,"tag":18,"props":3644,"children":3645},{},[3646],{"type":16,"value":3647},"Structure specifying sparse image memory bind",{"type":10,"tag":2761,"props":3649,"children":3650},{"name":2980,"type":2830},[3651],{"type":10,"tag":18,"props":3652,"children":3653},{},[3654],{"type":16,"value":3655},"Bind device memory to a sparse resource object",{"type":10,"tag":2761,"props":3657,"children":3659},{"name":3658,"type":2763},"VkBindSparseInfo",[3660],{"type":10,"tag":18,"props":3661,"children":3662},{},[3663],{"type":16,"value":3664},"Structure specifying a sparse binding operation",{"type":10,"tag":18,"props":3666,"children":3667},{},[3668,3670,3676,3678,3684,3686,3692,3694,3700,3702,3707],{"type":16,"value":3669},"To specify the values to use when waiting for and signaling semaphores\ncreated with a ",{"type":10,"tag":24,"props":3671,"children":3673},{"href":3672},"/man/VkSemaphoreType",[3674],{"type":16,"value":3675},"VkSemaphoreType",{"type":16,"value":3677}," of ",{"type":10,"tag":33,"props":3679,"children":3681},{"className":3680},[],[3682],{"type":16,"value":3683},"VK_SEMAPHORE_TYPE_TIMELINE",{"type":16,"value":3685},",\nadd a ",{"type":10,"tag":24,"props":3687,"children":3689},{"href":3688},"/man/VkTimelineSemaphoreSubmitInfo",[3690],{"type":16,"value":3691},"VkTimelineSemaphoreSubmitInfo",{"type":16,"value":3693}," structure to the ",{"type":10,"tag":33,"props":3695,"children":3697},{"className":3696},[],[3698],{"type":16,"value":3699},"pNext",{"type":16,"value":3701}," chain\nof the ",{"type":10,"tag":24,"props":3703,"children":3705},{"href":3704},"/man/VkBindSparseInfo",[3706],{"type":16,"value":3658},{"type":16,"value":2759},{"type":10,"tag":2761,"props":3709,"children":3711},{"name":3710,"type":2763},"VkDeviceGroupBindSparseInfo",[3712],{"type":10,"tag":18,"props":3713,"children":3714},{},[3715],{"type":16,"value":3716},"Structure indicating which instances are bound",{"type":10,"tag":3718,"props":3719,"children":3720},"style",{},[3721],{"type":16,"value":3722},"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":3479,"searchDepth":3724,"depth":3724,"links":3725},2,[3726,3727,3731,3732,3739,3740],{"id":124,"depth":3724,"text":127},{"id":699,"depth":3724,"text":702,"children":3728},[3729],{"id":787,"depth":3730,"text":790},3,{"id":819,"depth":3724,"text":822},{"id":862,"depth":3724,"text":865,"children":3733},[3734,3735,3736,3737,3738],{"id":934,"depth":3730,"text":937},{"id":1021,"depth":3730,"text":1024},{"id":1337,"depth":3730,"text":1340},{"id":2035,"depth":3730,"text":2038},{"id":2109,"depth":3730,"text":2112},{"id":2190,"depth":3724,"text":694},{"id":2392,"depth":3724,"text":2395,"children":3741},[3742,3743,3744,3745,3746,3747],{"id":2460,"depth":3730,"text":2412},{"id":2730,"depth":3730,"text":2421},{"id":2772,"depth":3730,"text":2430},{"id":2864,"depth":3730,"text":2439},{"id":2985,"depth":3730,"text":2448},{"id":3178,"depth":3730,"text":2457},"markdown","chapters-sparsememory",[3751,3756,3759,3762,3765,3769,3773,3777,3781,3785,3789,3793,3797,3801,3805,3809,3813,3817,3821,3825,3829,3833,3837,3841,3845,3849,3853,3857,3861,3865,3869,3873,3877,3879,3883,3887,3891,3895,3899,3903,3907,3911,3915,3919,3923,3927,3931,3935,3939,3943,3947,3951,3954,3957,3960,3963,3966,3969,3972],{"index":3752,"title":3753,"id":3754,"appendix":3755},0,"Preamble","preamble",false,{"index":3488,"title":3757,"id":3758,"appendix":3755},"Introduction","introduction",{"index":3724,"title":3760,"id":3761,"appendix":3755},"Fundamentals","fundamentals",{"index":3730,"title":3763,"id":3764,"appendix":3755},"Initialization","initialization",{"index":3766,"title":3767,"id":3768,"appendix":3755},4,"Devices and Queues","devsandqueues",{"index":3770,"title":3771,"id":3772,"appendix":3755},5,"Command Buffers","commandbuffers",{"index":3774,"title":3775,"id":3776,"appendix":3755},6,"Synchronization and Cache Control","synchronization",{"index":3778,"title":3779,"id":3780,"appendix":3755},7,"Render Pass","renderpass",{"index":3782,"title":3783,"id":3784,"appendix":3755},8,"Shaders","shaders",{"index":3786,"title":3787,"id":3788,"appendix":3755},9,"Pipelines","pipelines",{"index":3790,"title":3791,"id":3792,"appendix":3755},10,"Memory Allocation","memory",{"index":3794,"title":3795,"id":3796,"appendix":3755},11,"Resource Creation","resources",{"index":3798,"title":3799,"id":3800,"appendix":3755},12,"Samplers","samplers",{"index":3802,"title":3803,"id":3804,"appendix":3755},13,"Resource Descriptors","descriptorsets",{"index":3806,"title":3807,"id":3808,"appendix":3755},14,"Shader Interfaces","interfaces",{"index":3810,"title":3811,"id":3812,"appendix":3755},15,"Image Operations","textures",{"index":3814,"title":3815,"id":3816,"appendix":3755},16,"Fragment Density Map Operations","fragmentdensitymapops",{"index":3818,"title":3819,"id":3820,"appendix":3755},17,"Queries","queries",{"index":3822,"title":3823,"id":3824,"appendix":3755},18,"Clear Commands","clears",{"index":3826,"title":3827,"id":3828,"appendix":3755},19,"Copy Commands","copies",{"index":3830,"title":3831,"id":3832,"appendix":3755},20,"Drawing Commands","drawing",{"index":3834,"title":3835,"id":3836,"appendix":3755},21,"Fixed-Function Vertex Processing","fxvertex",{"index":3838,"title":3839,"id":3840,"appendix":3755},22,"Tessellation","tessellation",{"index":3842,"title":3843,"id":3844,"appendix":3755},23,"Geometry Shading","geometry",{"index":3846,"title":3847,"id":3848,"appendix":3755},24,"Mesh Shading","mesh",{"index":3850,"title":3851,"id":3852,"appendix":3755},25,"Cluster Culling Shading","cluster-culling",{"index":3854,"title":3855,"id":3856,"appendix":3755},26,"Fixed-Function Vertex Post-Processing","vertexpostproc",{"index":3858,"title":3859,"id":3860,"appendix":3755},27,"Rasterization","primsrast",{"index":3862,"title":3863,"id":3864,"appendix":3755},28,"Fragment Operations","fragops",{"index":3866,"title":3867,"id":3868,"appendix":3755},29,"The Framebuffer","framebuffer",{"index":3870,"title":3871,"id":3872,"appendix":3755},30,"Dispatching Commands","dispatch",{"index":3874,"title":3875,"id":3876,"appendix":3755},31,"Device-Generated Commands","device-generated-commands",{"index":3878,"title":4,"id":13,"appendix":3755},32,{"index":3880,"title":3881,"id":3882,"appendix":3755},33,"Window System Integration (WSI)","wsi",{"index":3884,"title":3885,"id":3886,"appendix":3755},34,"Deferred Host Operations","deferred-host-operations",{"index":3888,"title":3889,"id":3890,"appendix":3755},35,"Private Data","private-data",{"index":3892,"title":3893,"id":3894,"appendix":3755},36,"Acceleration Structures","acceleration-structure",{"index":3896,"title":3897,"id":3898,"appendix":3755},37,"Micromap","micromap",{"index":3900,"title":3901,"id":3902,"appendix":3755},38,"Ray Traversal","ray-traversal",{"index":3904,"title":3905,"id":3906,"appendix":3755},39,"Ray Tracing","ray-tracing",{"index":3908,"title":3909,"id":3910,"appendix":3755},40,"Memory Decompression","memory-decompression",{"index":3912,"title":3913,"id":3914,"appendix":3755},41,"Video Coding","video-coding",{"index":3916,"title":3917,"id":3918,"appendix":3755},42,"Optical Flow","opticalflow",{"index":3920,"title":3921,"id":3922,"appendix":3755},43,"Execution Graphs","executiongraphs",{"index":3924,"title":3925,"id":3926,"appendix":3755},44,"Extending Vulkan","extendingvulkan",{"index":3928,"title":3929,"id":3930,"appendix":3755},45,"Features","features",{"index":3932,"title":3933,"id":3934,"appendix":3755},46,"Limits","limits",{"index":3936,"title":3937,"id":3938,"appendix":3755},47,"Formats","formats",{"index":3940,"title":3941,"id":3942,"appendix":3755},48,"Additional Capabilities","capabilities",{"index":3944,"title":3945,"id":3946,"appendix":3755},49,"Debugging","debugging",{"index":3752,"title":3948,"id":3949,"appendix":3950},"Vulkan Environment for SPIR-V","spirvenv",true,{"index":3488,"title":3952,"id":3953,"appendix":3950},"Memory Model","memory-model",{"index":3724,"title":3955,"id":3956,"appendix":3950},"Compressed Image Formats","compressed_image_formats",{"index":3730,"title":3958,"id":3959,"appendix":3950},"Core Revisions (Informative)","versions",{"index":3766,"title":3961,"id":3962,"appendix":3950},"Layers & Extensions (Informative)","extensions",{"index":3770,"title":3964,"id":3965,"appendix":3950},"API Boilerplate","boilerplate",{"index":3774,"title":3967,"id":3968,"appendix":3950},"Invariance","invariance",{"index":3778,"title":3970,"id":3971,"appendix":3950},"Lexicon","lexicon",{"index":3782,"title":3973,"id":3974,"appendix":3950},"Credits (Informative)","credits",[3976,3984,3988,3993,3997,4002,4005,4008,4011,4015,4019,4022,4025,4028,4030,4032,4035,4038,4042,4044,4048,4050,4053,4055,4058,4066,4070,4076,4080,4085,4087,4091,4097,4103,4109,4111,4114,4120,4123,4127,4133,4137,4141,4146,4150,4153,4156,4162,4165,4168,4172,4176,4180,4183,4185,4189,4194,4200,4203,4207,4210,4216,4219,4223,4226,4230,4233,4237,4240,4245,4249,4252,4257,4260,4263,4266,4270,4275,4280,4284,4288,4292,4296,4300,4304,4308,4311,4314,4318,4321,4324,4327,4331,4336,4340,4343,4347,4352,4356,4361,4364,4367,4372,4377,4381,4384,4388,4393,4396,4401,4406,4409,4412,4416,4420,4424,4429,4433,4436,4441,4445,4448,4452,4456,4460,4463,4465,4469,4472,4475,4478,4481,4484,4487,4490,4493,4496,4500,4504,4507,4510,4513,4516,4519,4522,4526,4530,4534,4537,4541,4544,4547,4550,4552,4556,4561,4565,4569,4571,4575,4578,4585,4589,4593,4597,4603,4606,4610,4614,4617,4620,4624,4629,4635,4639,4641,4646,4649,4654,4658,4663,4667,4671,4673,4676,4679,4681,4686,4689,4692,4697,4701,4705,4710,4714,4718,4720,4722,4725,4727,4730,4733,4737,4741,4743,4747,4750,4754,4757,4759,4762,4766,4768,4772,4775,4778,4781,4785,4788,4791,4793,4796,4798,4801,4805,4808,4810,4812,4814,4816,4820,4822,4825,4830,4834,4837,4839,4842,4844,4848,4851,4854,4857,4861,4864,4869,4873,4876,4880,4883,4886,4890,4894,4896,4901,4904,4908,4911,4914,4917,4919,4922,4926,4929,4933,4936,4940,4944,4947,4950,4953,4956,4960,4962,4965,4967,4972,4973,4977,4980,4983,4986,4989,4991,4995,4998,5001,5004,5008,5010,5012,5016,5018,5021,5025,5029,5031,5035,5038,5041,5044,5047,5051,5056,5061,5065,5071,5075,5078,5082,5086,5089,5093,5097,5100,5104,5107,5112,5116,5118,5124,5127,5130,5133,5137,5140,5144,5148,5152,5154,5157,5159,5162,5164,5166,5169,5172,5175,5178,5181,5184,5186,5190,5194,5198,5202,5205,5208,5212,5215,5219,5221,5225,5229,5232,5235,5238,5241,5244,5247,5250,5253,5256,5259,5262,5265,5268,5271,5275,5278,5282,5286,5289,5292,5295,5298,5301,5304,5308,5311,5314,5320,5324,5328,5332],{"number":3977,"type":3978,"author":3979,"provisional":3950,"depends":3980,"platform":3981,"contact":3982,"extension":3983,"proposal":3950},135,"device","AMD","(((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_synchronization2),VK_VERSION_1_3)+VK_KHR_pipeline_library+VK_KHR_spirv_1_4","provisional","Tobias Hector @tobski","VK_AMDX_shader_enqueue",{"number":3985,"type":3978,"author":3979,"provisional":3755,"contact":3986,"extension":3987,"proposal":3950},477,"Stu Smith","VK_AMD_anti_lag",{"number":3989,"type":3978,"author":3979,"provisional":3755,"specialuse":3990,"contact":3991,"extension":3992,"proposal":3755},180,"devtools","Daniel Rakos @drakos-amd","VK_AMD_buffer_marker",{"number":3994,"type":3978,"author":3979,"provisional":3755,"depends":3995,"contact":3982,"extension":3996,"proposal":3755},230,"VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","VK_AMD_device_coherent_memory",{"number":3998,"type":3978,"author":3979,"provisional":3755,"depends":3999,"contact":4000,"extension":4001,"proposal":3755},214,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_get_surface_capabilities2+VK_KHR_swapchain","Matthaeus G. Chajdas @anteru","VK_AMD_display_native_hdr",{"number":3884,"type":3978,"author":3979,"promotedto":4003,"provisional":3755,"contact":3991,"extension":4004,"proposal":3755},"VK_KHR_draw_indirect_count","VK_AMD_draw_indirect_count",{"number":3854,"type":3978,"author":3979,"provisional":3755,"contact":4006,"extension":4007,"proposal":3755},"Dominik Witczak @dominikwitczakamd","VK_AMD_gcn_shader",{"number":3896,"type":3978,"author":3979,"deprecatedby":4009,"provisional":3755,"contact":4006,"extension":4010,"proposal":3755},"VK_KHR_shader_float16_int8","VK_AMD_gpu_shader_half_float",{"number":4012,"type":3978,"author":3979,"deprecatedby":4009,"provisional":3755,"contact":4013,"extension":4014,"proposal":3755},133,"Qun Lin @linqun","VK_AMD_gpu_shader_int16",{"number":4016,"type":3978,"author":3979,"provisional":3755,"contact":4017,"extension":4018,"proposal":3755},190,"Martin Dinkov @mdinkov","VK_AMD_memory_overallocation_behavior",{"number":4020,"type":3978,"author":3979,"provisional":3755,"contact":4000,"extension":4021,"proposal":3755},137,"VK_AMD_mixed_attachment_samples",{"number":3892,"type":3978,"author":3979,"obsoletedby":4023,"provisional":3755,"contact":4000,"extension":4024,"proposal":3755},"VK_KHR_maintenance1","VK_AMD_negative_viewport_height",{"number":4026,"type":3978,"author":3979,"provisional":3755,"contact":4000,"extension":4027,"proposal":3755},184,"VK_AMD_pipeline_compiler_control",{"number":3826,"type":3978,"author":3979,"provisional":3755,"contact":3991,"extension":4029,"proposal":3755},"VK_AMD_rasterization_order",{"number":3900,"type":3978,"author":3979,"provisional":3755,"contact":4006,"extension":4031,"proposal":3755},"VK_AMD_shader_ballot",{"number":4033,"type":3978,"author":3979,"provisional":3755,"depends":3995,"contact":4017,"extension":4034,"proposal":3755},186,"VK_AMD_shader_core_properties",{"number":4036,"type":3978,"author":3979,"provisional":3755,"depends":4034,"contact":4000,"extension":4037,"proposal":3755},228,"VK_AMD_shader_core_properties2",{"number":4039,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":3982,"extension":4041,"proposal":3950},322,"EXT","VK_AMD_shader_early_and_late_fragment_tests",{"number":3838,"type":3978,"author":3979,"provisional":3755,"contact":4013,"extension":4043,"proposal":3755},"VK_AMD_shader_explicit_vertex_parameter",{"number":4045,"type":3978,"author":3979,"provisional":3755,"contact":4046,"extension":4047,"proposal":3755},138,"Aaron Hagan @AaronHaganAMD","VK_AMD_shader_fragment_mask",{"number":3936,"type":3978,"author":3979,"provisional":3755,"contact":4006,"extension":4049,"proposal":3755},"VK_AMD_shader_image_load_store_lod",{"number":3920,"type":3978,"author":3979,"provisional":3755,"specialuse":3990,"contact":4051,"extension":4052,"proposal":3755},"Jaakko Konttinen @jaakkoamd","VK_AMD_shader_info",{"number":3834,"type":3978,"author":3979,"provisional":3755,"contact":4013,"extension":4054,"proposal":3755},"VK_AMD_shader_trinary_minmax",{"number":3916,"type":3978,"author":3979,"provisional":3755,"depends":3995,"contact":4056,"extension":4057,"proposal":3755},"Rex Xu @amdrexu","VK_AMD_texture_gather_bias_lod",{"number":4059,"type":3978,"author":4060,"provisional":3755,"depends":4061,"platform":4062,"specialuse":4063,"contact":4064,"extension":4065,"proposal":3950},469,"ANDROID","VK_ANDROID_external_memory_android_hardware_buffer","android","glemulation","Chris Forbes @chrisforbes","VK_ANDROID_external_format_resolve",{"number":4067,"type":3978,"author":4060,"provisional":3755,"depends":4068,"platform":4062,"contact":4069,"extension":4061,"proposal":3755},130,"((VK_KHR_sampler_ycbcr_conversion+VK_KHR_external_memory+VK_KHR_dedicated_allocation),VK_VERSION_1_1)+VK_EXT_queue_family_foreign","Jesse Hall @critsec",{"number":4071,"type":3978,"author":4072,"promotedto":4073,"provisional":3755,"depends":3995,"contact":4074,"extension":4075,"proposal":3755},343,"ARM","VK_EXT_rasterization_order_attachment_access","Jan-Harald Fredriksen @janharaldfredriksen-arm","VK_ARM_rasterization_order_attachment_access",{"number":4077,"type":3978,"author":4072,"provisional":3755,"depends":4078,"contact":4074,"extension":4079,"proposal":3950},425,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_ARM_render_pass_striped",{"number":4081,"type":3978,"author":4072,"provisional":3755,"depends":4082,"contact":4083,"extension":4084,"proposal":3755},418,"VK_ARM_shader_core_builtins","Kevin Petit @kpet","VK_ARM_scheduling_controls",{"number":4086,"type":3978,"author":4072,"provisional":3755,"depends":3995,"contact":4083,"extension":4082,"proposal":3755},498,{"number":4088,"type":3978,"author":4072,"provisional":3755,"depends":4089,"contact":4074,"extension":4090,"proposal":3755},416,"VK_VERSION_1_1","VK_ARM_shader_core_properties",{"number":4092,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4095,"extension":4096,"proposal":3755},341,"VK_VERSION_1_3","vulkansc","Joshua Ashton @Joshua-Ashton","VK_EXT_4444_formats",{"number":4098,"type":4099,"author":4040,"provisional":3755,"depends":4100,"contact":4101,"extension":4102,"proposal":3755},286,"instance","VK_EXT_direct_mode_display","Drew DeVault sir@cmpwn.com","VK_EXT_acquire_drm_display",{"number":4104,"type":4099,"author":4105,"provisional":3755,"depends":4100,"platform":4106,"contact":4107,"extension":4108,"proposal":3755},90,"NV","xlib_xrandr","James Jones @cubanismo","VK_EXT_acquire_xlib_display",{"extension":4110,"proposal":3755},"VK_EXT_application_parameters",{"number":4112,"type":3978,"author":4072,"provisional":3755,"depends":3995,"contact":4074,"extension":4113,"proposal":3755},68,"VK_EXT_astc_decode_mode",{"number":4115,"type":3978,"author":4040,"provisional":3755,"depends":4116,"ratified":4117,"contact":4118,"extension":4119,"proposal":3950},525,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_attachment_feedback_loop_layout","vulkan","Mike Blumenkrantz @zmike","VK_EXT_attachment_feedback_loop_dynamic_state",{"number":4121,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":4095,"extension":4122,"proposal":3950},340,"VK_EXT_attachment_feedback_loop_layout",{"number":4124,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4126,"proposal":3755},149,"Jeff Bolz @jeffbolznv","VK_EXT_blend_operation_advanced",{"number":4128,"type":3978,"author":4040,"provisional":3755,"depends":4129,"specialuse":4130,"contact":4131,"extension":4132,"proposal":3755},412,"VK_EXT_custom_border_color","glemulation,d3demulation","Piers Daniell @pdaniell-nv","VK_EXT_border_color_swizzle",{"number":4134,"type":3978,"author":4105,"deprecatedby":4135,"provisional":3755,"depends":3995,"contact":4125,"extension":4136,"proposal":3755},245,"VK_KHR_buffer_device_address","VK_EXT_buffer_device_address",{"number":4138,"type":3978,"author":4040,"promotedto":4139,"provisional":3755,"depends":3995,"contact":3991,"extension":4140,"proposal":3950},185,"VK_KHR_calibrated_timestamps","VK_EXT_calibrated_timestamps",{"number":4142,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4143,"contact":4144,"extension":4145,"proposal":3755},382,"vulkan,vulkansc","Sharif Elcott @selcott","VK_EXT_color_write_enable",{"number":4147,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":4148,"extension":4149,"proposal":3755},82,"Vikram Kushwaha @vkushwaha","VK_EXT_conditional_rendering",{"number":4151,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4117,"contact":4131,"extension":4152,"proposal":3755},102,"VK_EXT_conservative_rasterization",{"number":4154,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4143,"specialuse":4130,"contact":4155,"extension":4129,"proposal":3755},288,"Liam Middlebrook @liam-middlebrook",{"number":3842,"type":3978,"author":4157,"promotedto":4158,"provisional":3755,"depends":4159,"specialuse":3946,"contact":4160,"extension":4161,"proposal":3755},"Baldur Karlsson","VK_EXT_debug_utils","VK_EXT_debug_report","Baldur Karlsson @baldurk","VK_EXT_debug_marker",{"number":3798,"type":4099,"author":4163,"deprecatedby":4158,"provisional":3755,"specialuse":3946,"contact":4164,"extension":4159,"proposal":3755},"GOOGLE","Courtney Goeltzenleuchter @courtney-g",{"number":4166,"type":4099,"author":4040,"provisional":3755,"specialuse":3946,"contact":4167,"extension":4158,"proposal":3755},129,"Mark Young @marky-lunarg",{"number":4169,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":4170,"contact":4095,"extension":4171,"proposal":3950},284,"d3demulation","VK_EXT_depth_bias_control",{"number":4173,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4174,"extension":4175,"proposal":3755},422,"Graeme Leese @gnl21","VK_EXT_depth_clamp_zero_one",{"number":4177,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":4063,"contact":4178,"extension":4179,"proposal":3755},356,"Shahbaz Youssefi @syoussefi","VK_EXT_depth_clip_control",{"number":4181,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4143,"specialuse":4170,"contact":4131,"extension":4182,"proposal":3755},103,"VK_EXT_depth_clip_enable",{"number":3806,"type":3978,"author":4105,"provisional":3755,"ratified":4143,"contact":4131,"extension":4184,"proposal":3755},"VK_EXT_depth_range_unrestricted",{"number":4186,"type":3978,"author":4040,"provisional":3755,"depends":4187,"contact":3982,"extension":4188,"proposal":3950},317,"((((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_buffer_device_address+VK_EXT_descriptor_indexing),VK_VERSION_1_2)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_EXT_descriptor_buffer",{"number":4190,"type":3978,"author":4105,"promotedto":4191,"provisional":3755,"depends":4192,"contact":4125,"extension":4193,"proposal":3755},162,"VK_VERSION_1_2","(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance3),VK_VERSION_1_1","VK_EXT_descriptor_indexing",{"number":4195,"type":3978,"author":4040,"provisional":3755,"depends":4196,"specialuse":4197,"contact":4198,"extension":4199,"proposal":3755},355,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_debug_utils","debugging,devtools","Ralph Potter gitlab:@r_potter","VK_EXT_device_address_binding_report",{"number":4201,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4198,"extension":4202,"proposal":3950},342,"VK_EXT_device_fault",{"number":4204,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":3990,"contact":4205,"extension":4206,"proposal":3755},285,"Yiwei Zhang @zhangyiwei","VK_EXT_device_memory_report",{"number":4208,"type":4099,"author":4105,"provisional":3755,"depends":4209,"contact":4107,"extension":4100,"proposal":3755},89,"VK_KHR_display",{"number":4211,"type":4099,"author":4040,"provisional":3755,"depends":4212,"platform":4213,"contact":4214,"extension":4215,"proposal":3755},347,"VK_KHR_surface","directfb","Nicolas Caramelli @caramelli","VK_EXT_directfb_surface",{"number":4217,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4143,"contact":4131,"extension":4218,"proposal":3755},100,"VK_EXT_discard_rectangles",{"number":4220,"type":3978,"author":4105,"provisional":3755,"depends":4221,"ratified":4117,"contact":4107,"extension":4222,"proposal":3755},92,"VK_EXT_display_surface_counter+VK_KHR_swapchain","VK_EXT_display_control",{"number":4224,"type":4099,"author":4105,"provisional":3755,"depends":4209,"ratified":4117,"contact":4107,"extension":4225,"proposal":3755},91,"VK_EXT_display_surface_counter",{"number":4227,"type":3978,"author":4040,"provisional":3755,"depends":4228,"ratified":4117,"contact":4131,"extension":4229,"proposal":3950},500,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_dynamic_rendering),VK_VERSION_1_3","VK_EXT_dynamic_rendering_unused_attachments",{"number":4231,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4131,"extension":4232,"proposal":3755},268,"VK_EXT_extended_dynamic_state",{"number":4234,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4235,"extension":4236,"proposal":3755},378,"Vikram Kushwaha @vkushwaha-nv","VK_EXT_extended_dynamic_state2",{"number":4238,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4117,"contact":4131,"extension":4239,"proposal":3950},456,"VK_EXT_extended_dynamic_state3",{"number":4241,"type":3978,"author":4040,"provisional":3755,"depends":4242,"ratified":4117,"contact":4243,"extension":4244,"proposal":3950},454,"VK_KHR_external_memory,VK_VERSION_1_1","Lina Versace @versalinyaa","VK_EXT_external_memory_acquire_unmodified",{"number":4246,"type":3978,"author":4040,"provisional":3755,"depends":4247,"ratified":4143,"contact":4243,"extension":4248,"proposal":3755},126,"VK_KHR_external_memory_fd","VK_EXT_external_memory_dma_buf",{"number":4250,"type":3978,"author":4040,"provisional":3755,"depends":4242,"ratified":4143,"contact":3991,"extension":4251,"proposal":3755},179,"VK_EXT_external_memory_host",{"number":4253,"type":3978,"author":4254,"provisional":3755,"ratified":4117,"contact":4255,"extension":4256,"proposal":3755},171,"QCOM","Matthew Netsch @mnetsch","VK_EXT_filter_cubic",{"number":4258,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4255,"extension":4259,"proposal":3755},219,"VK_EXT_fragment_density_map",{"number":4261,"type":3978,"author":4040,"provisional":3755,"depends":4259,"contact":4255,"extension":4262,"proposal":3755},333,"VK_EXT_fragment_density_map2",{"number":4264,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4131,"extension":4265,"proposal":3755},252,"VK_EXT_fragment_shader_interlock",{"number":4267,"type":3978,"author":4040,"provisional":3755,"ratified":4117,"contact":4268,"extension":4269,"proposal":3950},376,"James Fitzpatrick @jamesfitzpatrick","VK_EXT_frame_boundary",{"number":4271,"type":3978,"author":4040,"provisional":3755,"depends":4272,"platform":4273,"ratified":4117,"contact":4107,"extension":4274,"proposal":3755},256,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_surface+VK_KHR_get_surface_capabilities2+VK_KHR_swapchain","win32","VK_EXT_full_screen_exclusive",{"number":4276,"type":3978,"author":4040,"promotedto":4277,"provisional":3755,"contact":4278,"extension":4279,"proposal":3755},175,"VK_KHR_global_priority","Andres Rodriguez @lostgoat","VK_EXT_global_priority",{"number":4281,"type":3978,"author":4040,"promotedto":4277,"provisional":3755,"depends":4282,"contact":4205,"extension":4283,"proposal":3755},389,"VK_EXT_global_priority+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_global_priority_query",{"number":4285,"type":3978,"author":3979,"provisional":3755,"depends":4286,"contact":3982,"extension":4287,"proposal":3950},321,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_pipeline_library","VK_EXT_graphics_pipeline_library",{"number":4289,"type":3978,"author":4163,"provisional":3755,"depends":4290,"ratified":4143,"contact":4164,"extension":4291,"proposal":3755},106,"VK_KHR_swapchain","VK_EXT_hdr_metadata",{"number":4293,"type":4099,"author":4040,"provisional":3755,"depends":4212,"contact":4294,"extension":4295,"proposal":3755},257,"Lisa Wu @chengtianww","VK_EXT_headless_surface",{"number":4297,"type":3978,"author":4040,"provisional":3755,"depends":4298,"ratified":4117,"contact":4178,"extension":4299,"proposal":3950},271,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_copy_commands2+VK_KHR_format_feature_flags2),VK_VERSION_1_3","VK_EXT_host_image_copy",{"number":4301,"type":3978,"author":4040,"promotedto":4191,"provisional":3755,"depends":3995,"contact":4302,"extension":4303,"proposal":3755},262,"Bas Nieuwenhuizen @BNieuwenhuizen","VK_EXT_host_query_reset",{"number":4305,"type":3978,"author":4040,"provisional":3755,"depends":4306,"specialuse":4063,"contact":4118,"extension":4307,"proposal":3755},394,"(VK_KHR_maintenance1+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","VK_EXT_image_2d_view_of_3d",{"number":4309,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4074,"extension":4310,"proposal":3950},339,"VK_EXT_image_compression_control",{"number":4312,"type":3978,"author":4040,"provisional":3755,"depends":4310,"contact":4074,"extension":4313,"proposal":3755},438,"VK_EXT_image_compression_control_swapchain",{"number":4315,"type":3978,"author":4040,"provisional":3755,"depends":4316,"ratified":4117,"contact":4243,"extension":4317,"proposal":3755},159,"(((VK_KHR_bind_memory2+VK_KHR_get_physical_device_properties2+VK_KHR_sampler_ycbcr_conversion),VK_VERSION_1_1)+VK_KHR_image_format_list),VK_VERSION_1_2","VK_EXT_image_drm_format_modifier",{"number":4319,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4174,"extension":4320,"proposal":3755},336,"VK_EXT_image_robustness",{"number":4322,"type":3978,"author":4040,"provisional":3755,"depends":4306,"specialuse":4170,"contact":4118,"extension":4323,"proposal":3950},419,"VK_EXT_image_sliced_view_of_3d",{"number":4325,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4095,"extension":4326,"proposal":3755},392,"VK_EXT_image_view_min_lod",{"number":4328,"type":3978,"author":4040,"promotedto":4329,"provisional":3755,"depends":3995,"contact":4131,"extension":4330,"proposal":3755},266,"VK_KHR_index_type_uint8","VK_EXT_index_type_uint8",{"number":4332,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":4333,"contact":4334,"extension":4335,"proposal":3755},139,"(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance1),VK_VERSION_1_1","Daniel Rakos @aqnuep","VK_EXT_inline_uniform_block",{"number":4337,"type":4099,"author":4040,"provisional":3755,"ratified":4117,"contact":4338,"extension":4339,"proposal":3950},497,"Christophe Riccio @christophe","VK_EXT_layer_settings",{"number":4341,"type":3978,"author":4040,"provisional":3755,"depends":3995,"specialuse":4063,"contact":4178,"extension":4342,"proposal":3950},466,"VK_EXT_legacy_dithering",{"number":4344,"type":3978,"author":4040,"provisional":3755,"depends":4345,"ratified":4117,"specialuse":4063,"contact":4118,"extension":4346,"proposal":3950},496,"VK_EXT_vertex_input_dynamic_state","VK_EXT_legacy_vertex_attributes",{"number":4348,"type":3978,"author":4040,"promotedto":4349,"provisional":3755,"depends":3995,"specialuse":4350,"contact":4125,"extension":4351,"proposal":3755},260,"VK_KHR_line_rasterization","cadsupport","VK_EXT_line_rasterization",{"number":4353,"type":3978,"author":4040,"promotedto":4354,"provisional":3755,"ratified":4117,"contact":4178,"extension":4355,"proposal":3755},401,"VK_KHR_load_store_op_none","VK_EXT_load_store_op_none",{"number":4357,"type":3978,"author":4040,"provisional":3755,"depends":4358,"ratified":4117,"contact":4359,"extension":4360,"proposal":3950},273,"VK_KHR_map_memory2","Faith Ekstrand @gfxstrand","VK_EXT_map_memory_placed",{"number":4362,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4363,"proposal":3755},238,"VK_EXT_memory_budget",{"number":4365,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4366,"proposal":3755},239,"VK_EXT_memory_priority",{"number":4368,"type":3978,"author":4040,"provisional":3755,"depends":4369,"contact":4370,"extension":4371,"proposal":3950},329,"VK_KHR_spirv_1_4","Christoph Kubisch @pixeljetstream","VK_EXT_mesh_shader",{"number":4373,"type":3978,"author":4040,"provisional":3755,"platform":4374,"contact":4375,"extension":4376,"proposal":3950},312,"metal","Bill Hollings @billhollings","VK_EXT_metal_objects",{"number":4378,"type":4099,"author":4040,"provisional":3755,"depends":4212,"platform":4374,"contact":4379,"extension":4380,"proposal":3755},218,"Dzmitry Malyshau @kvark","VK_EXT_metal_surface",{"number":4382,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4118,"extension":4383,"proposal":3755},393,"VK_EXT_multi_draw",{"number":4385,"type":3978,"author":4040,"provisional":3755,"depends":4386,"contact":4178,"extension":4387,"proposal":3950},377,"(VK_KHR_create_renderpass2+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_EXT_multisampled_render_to_single_sampled",{"number":4389,"type":3978,"author":4040,"provisional":3755,"depends":4390,"specialuse":4170,"contact":4391,"extension":4392,"proposal":3950},495,"VK_KHR_maintenance3","Joshua Ashton @Joshua-Ashton,Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_mutable_descriptor_type",{"number":4394,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":4131,"extension":4395,"proposal":3755},452,"VK_EXT_nested_command_buffer",{"number":4397,"type":3978,"author":4040,"provisional":3755,"depends":3995,"specialuse":4398,"contact":4399,"extension":4400,"proposal":3950},423,"d3demulation,glemulation","Georg Lehmann @DadSchoorse","VK_EXT_non_seamless_cube_map",{"number":4402,"type":3978,"author":4040,"provisional":3755,"depends":4403,"ratified":4117,"contact":4404,"extension":4405,"proposal":3950},397,"VK_KHR_acceleration_structure+(VK_KHR_synchronization2,VK_VERSION_1_3)","Christoph Kubisch @pixeljetstream, Eric Werness","VK_EXT_opacity_micromap",{"number":4407,"type":3978,"author":4040,"provisional":3755,"depends":4366,"contact":4131,"extension":4408,"proposal":3755},413,"VK_EXT_pageable_device_local_memory",{"number":4410,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4143,"contact":4000,"extension":4411,"proposal":3755},213,"VK_EXT_pci_bus_info",{"number":4413,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4414,"extension":4415,"proposal":3755},354,"Simon Ser @emersion","VK_EXT_physical_device_drm",{"number":4417,"type":3978,"author":3979,"promotedto":4093,"provisional":3755,"depends":3995,"contact":4418,"extension":4419,"proposal":3755},298,"Gregory Grebe @grgrebe_amd","VK_EXT_pipeline_creation_cache_control",{"number":4421,"type":3978,"author":4163,"promotedto":4093,"provisional":3755,"specialuse":3990,"contact":4422,"extension":4423,"proposal":3755},193,"Jean-Francois Roy @jfroy","VK_EXT_pipeline_creation_feedback",{"number":4425,"type":3978,"author":4040,"provisional":3755,"depends":4426,"contact":4427,"extension":4428,"proposal":3950},499,"VK_KHR_ray_tracing_pipeline+VK_KHR_pipeline_library","Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_pipeline_library_group_handles",{"number":4430,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4431,"extension":4432,"proposal":3755},373,"Mukund Keshava @mkeshavanv","VK_EXT_pipeline_properties",{"number":4434,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4178,"extension":4435,"proposal":3950},467,"VK_EXT_pipeline_protected_access",{"number":4437,"type":3978,"author":4438,"provisional":3755,"depends":3995,"contact":4439,"extension":4440,"proposal":3755},69,"IMG","Jarred Davies","VK_EXT_pipeline_robustness",{"number":4442,"type":3978,"author":4105,"provisional":3755,"ratified":4117,"contact":4443,"extension":4444,"proposal":3755},156,"Daniel Koch @dgkoch","VK_EXT_post_depth_coverage",{"number":4446,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":4063,"contact":4178,"extension":4447,"proposal":3755},357,"VK_EXT_primitive_topology_list_restart",{"number":4449,"type":3978,"author":4040,"provisional":3755,"depends":4450,"specialuse":4063,"contact":4178,"extension":4451,"proposal":3950},383,"VK_EXT_transform_feedback","VK_EXT_primitives_generated_query",{"number":4453,"type":3978,"author":4105,"promotedto":4093,"provisional":3755,"depends":3995,"contact":4454,"extension":4455,"proposal":3755},296,"Matthew Rusch @mattruschnv","VK_EXT_private_data",{"number":4457,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":4063,"contact":4458,"extension":4459,"proposal":3755},255,"Jesse Hall @jessehall","VK_EXT_provoking_vertex",{"number":4461,"type":3978,"author":4040,"provisional":3755,"depends":4242,"ratified":4143,"contact":4243,"extension":4462,"proposal":3755},127,"VK_EXT_queue_family_foreign",{"number":4464,"type":3978,"author":4072,"provisional":3755,"depends":3995,"contact":4074,"extension":4073,"proposal":3950},464,{"number":4466,"type":3978,"author":4040,"provisional":3755,"depends":4467,"contact":4074,"extension":4468,"proposal":3755},345,"VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1","VK_EXT_rgba10x6_formats",{"number":4470,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4143,"contact":4155,"extension":4471,"proposal":3755},287,"VK_EXT_robustness2",{"number":4473,"type":3978,"author":3979,"provisional":3755,"depends":3995,"ratified":4143,"contact":3991,"extension":4474,"proposal":3755},144,"VK_EXT_sample_locations",{"number":4476,"type":3978,"author":4105,"promotedto":4191,"provisional":3755,"depends":3995,"contact":4125,"extension":4477,"proposal":3755},131,"VK_EXT_sampler_filter_minmax",{"number":4479,"type":3978,"author":4040,"promotedto":4191,"provisional":3755,"depends":3995,"contact":3982,"extension":4480,"proposal":3755},222,"VK_EXT_scalar_block_layout",{"number":4482,"type":3978,"author":4040,"promotedto":4191,"provisional":3755,"contact":3991,"extension":4483,"proposal":3755},247,"VK_EXT_separate_stencil_usage",{"number":4485,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4143,"contact":4235,"extension":4486,"proposal":3755},261,"VK_EXT_shader_atomic_float",{"number":4488,"type":3978,"author":4040,"provisional":3755,"depends":4486,"ratified":4117,"contact":4359,"extension":4489,"proposal":3755},274,"VK_EXT_shader_atomic_float2",{"number":4491,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4125,"extension":4492,"proposal":3755},277,"VK_EXT_shader_demote_to_helper_invocation",{"number":4494,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":3982,"extension":4495,"proposal":3755},235,"VK_EXT_shader_image_atomic_int64",{"number":4497,"type":3978,"author":4040,"provisional":3755,"depends":4498,"contact":4427,"extension":4499,"proposal":3950},463,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_pipeline_creation_cache_control),VK_VERSION_1_3","VK_EXT_shader_module_identifier",{"number":4501,"type":3978,"author":4040,"provisional":3755,"depends":4228,"ratified":4117,"contact":4502,"extension":4503,"proposal":3950},483,"Daniel Story @daniel-story","VK_EXT_shader_object",{"number":4505,"type":3978,"author":4040,"provisional":3755,"ratified":4117,"contact":4083,"extension":4506,"proposal":3950},565,"VK_EXT_shader_replicated_composites",{"number":4508,"type":3978,"author":4040,"provisional":3755,"ratified":4143,"contact":4006,"extension":4509,"proposal":3755},141,"VK_EXT_shader_stencil_export",{"number":4511,"type":3978,"author":4105,"deprecatedby":4191,"provisional":3755,"contact":4443,"extension":4512,"proposal":3755},65,"VK_EXT_shader_subgroup_ballot",{"number":4514,"type":3978,"author":4105,"deprecatedby":4089,"provisional":3755,"contact":4443,"extension":4515,"proposal":3755},66,"VK_EXT_shader_subgroup_vote",{"number":4517,"type":3978,"author":4040,"provisional":3755,"depends":4093,"ratified":4117,"contact":4074,"extension":4518,"proposal":3950},396,"VK_EXT_shader_tile_image",{"number":4520,"type":3978,"author":4105,"promotedto":4191,"provisional":3755,"contact":4443,"extension":4521,"proposal":3755},163,"VK_EXT_shader_viewport_index_layer",{"number":4523,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":4089,"ratified":4094,"contact":4524,"extension":4525,"proposal":3755},226,"Neil Henning @sheredom","VK_EXT_subgroup_size_control",{"number":4527,"type":3978,"author":4040,"provisional":3755,"depends":3995,"contact":4528,"extension":4529,"proposal":3950},459,"Ting Wei @catweiting","VK_EXT_subpass_merge_feedback",{"number":4531,"type":4099,"author":4040,"provisional":3755,"depends":4532,"contact":4178,"extension":4533,"proposal":3950},275,"VK_KHR_surface+VK_KHR_get_surface_capabilities2","VK_EXT_surface_maintenance1",{"number":4535,"type":4099,"author":4163,"provisional":3755,"depends":4212,"contact":4164,"extension":4536,"proposal":3755},105,"VK_EXT_swapchain_colorspace",{"number":4538,"type":3978,"author":4040,"provisional":3755,"depends":4539,"contact":4178,"extension":4540,"proposal":3950},276,"VK_KHR_swapchain+VK_EXT_surface_maintenance1+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_swapchain_maintenance1",{"number":4542,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4125,"extension":4543,"proposal":3755},282,"VK_EXT_texel_buffer_alignment",{"number":4545,"type":3978,"author":4072,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4094,"contact":4074,"extension":4546,"proposal":3755},67,"VK_EXT_texture_compression_astc_hdr",{"number":4548,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"contact":3982,"extension":4549,"proposal":3755},246,"VK_EXT_tooling_info",{"number":3866,"type":3978,"author":4105,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":4551,"contact":4131,"extension":4450,"proposal":3755},"glemulation,d3demulation,devtools",{"number":4553,"type":3978,"author":4163,"provisional":3755,"contact":4554,"extension":4555,"proposal":3755},161,"Cort Stratton @cdwfs","VK_EXT_validation_cache",{"number":4557,"type":4099,"author":4558,"deprecatedby":4339,"provisional":3755,"specialuse":3946,"contact":4559,"extension":4560,"proposal":3755},248,"LUNARG","Karl Schultz @karl-lunarg","VK_EXT_validation_features",{"number":4562,"type":4099,"author":4163,"deprecatedby":4339,"provisional":3755,"specialuse":3946,"contact":4563,"extension":4564,"proposal":3755},62,"Tobin Ehlis @tobine","VK_EXT_validation_flags",{"number":4566,"type":3978,"author":4105,"promotedto":4567,"provisional":3755,"depends":3995,"contact":4148,"extension":4568,"proposal":3755},191,"VK_KHR_vertex_attribute_divisor","VK_EXT_vertex_attribute_divisor",{"number":4570,"type":3978,"author":4040,"provisional":3755,"depends":3995,"ratified":4117,"contact":4131,"extension":4345,"proposal":3755},353,{"number":4572,"type":3978,"author":4040,"promotedto":4093,"provisional":3755,"depends":4467,"ratified":4094,"contact":4573,"extension":4574,"proposal":3755},331,"Tony Zlatinski @tzlatinski","VK_EXT_ycbcr_2plane_444_formats",{"number":4576,"type":3978,"author":4040,"provisional":3755,"depends":4467,"ratified":4143,"contact":4131,"extension":4577,"proposal":3755},253,"VK_EXT_ycbcr_image_arrays",{"number":4579,"type":3978,"author":4580,"provisional":3755,"depends":4581,"platform":4582,"contact":4583,"extension":4584,"proposal":3755},367,"FUCHSIA","VK_FUCHSIA_external_memory+(VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1)","fuchsia","John Rosasco @rosasco","VK_FUCHSIA_buffer_collection",{"number":4586,"type":3978,"author":4580,"provisional":3755,"depends":4587,"platform":4582,"contact":4583,"extension":4588,"proposal":3755},365,"(VK_KHR_external_memory_capabilities+VK_KHR_external_memory),VK_VERSION_1_1","VK_FUCHSIA_external_memory",{"number":4590,"type":3978,"author":4580,"provisional":3755,"depends":4591,"platform":4582,"contact":4583,"extension":4592,"proposal":3755},366,"VK_KHR_external_semaphore_capabilities+VK_KHR_external_semaphore","VK_FUCHSIA_external_semaphore",{"number":4594,"type":4099,"author":4580,"provisional":3755,"depends":4212,"platform":4582,"contact":4595,"extension":4596,"proposal":3755},215,"Craig Stout @cdotstout","VK_FUCHSIA_imagepipe_surface",{"number":4598,"type":3978,"author":4599,"provisional":3755,"depends":4600,"platform":4601,"contact":4422,"extension":4602,"proposal":3755},192,"GGP","VK_KHR_swapchain+VK_GGP_stream_descriptor_surface","ggp","VK_GGP_frame_token",{"number":4604,"type":4099,"author":4599,"provisional":3755,"depends":4212,"platform":4601,"contact":4422,"extension":4605,"proposal":3755},50,"VK_GGP_stream_descriptor_surface",{"number":4607,"type":3978,"author":4163,"provisional":3755,"contact":4608,"extension":4609,"proposal":3755},225,"Hai Nguyen @chaoticbob","VK_GOOGLE_decorate_string",{"number":4611,"type":3978,"author":4163,"provisional":3755,"depends":4290,"contact":4612,"extension":4613,"proposal":3755},93,"Ian Elliott @ianelliottus","VK_GOOGLE_display_timing",{"number":4615,"type":3978,"author":4163,"provisional":3755,"contact":4608,"extension":4616,"proposal":3755},224,"VK_GOOGLE_hlsl_functionality1",{"number":4618,"type":4099,"author":4163,"provisional":3755,"depends":4212,"specialuse":4063,"contact":4178,"extension":4619,"proposal":3950},434,"VK_GOOGLE_surfaceless_query",{"number":4621,"type":3978,"author":4163,"provisional":3755,"contact":4622,"extension":4623,"proposal":3755},290,"Kaye Mason @chaleur","VK_GOOGLE_user_type",{"number":4625,"type":3978,"author":4626,"provisional":3755,"depends":3995,"contact":4627,"extension":4628,"proposal":3950},405,"HUAWEI","Yuchang Wang @richard_Wang2","VK_HUAWEI_cluster_culling_shader",{"number":4630,"type":3978,"author":4631,"provisional":3755,"depends":4632,"contact":4633,"extension":4634,"proposal":3950},371,"Huawei","VK_KHR_ray_tracing_pipeline+(VK_KHR_synchronization2,VK_VERSION_1_3)","Pan Gao @PanGao-h","VK_HUAWEI_invocation_mask",{"number":4636,"type":3978,"author":4626,"provisional":3755,"depends":4637,"contact":4633,"extension":4638,"proposal":3755},370,"((VK_KHR_create_renderpass2,VK_VERSION_1_2)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_HUAWEI_subpass_shading",{"number":3814,"type":3978,"author":4438,"provisional":3755,"contact":3982,"extension":4640,"proposal":3755},"VK_IMG_filter_cubic",{"number":4642,"type":3978,"author":4438,"deprecatedby":4643,"provisional":3755,"contact":4644,"extension":4645,"proposal":3755},55,null,"Stuart Smith","VK_IMG_format_pvrtc",{"number":4647,"type":3978,"author":4438,"provisional":3755,"depends":3995,"specialuse":4063,"contact":4268,"extension":4648,"proposal":3755},111,"VK_IMG_relaxed_line_rasterization",{"number":4650,"type":3978,"author":4651,"provisional":3755,"specialuse":3990,"contact":4652,"extension":4653,"proposal":3755},211,"INTEL","Lionel Landwerlin @llandwerlin","VK_INTEL_performance_query",{"number":4655,"type":3978,"author":4651,"provisional":3755,"depends":3995,"contact":4656,"extension":4657,"proposal":3755},210,"Ian Romanick @ianromanick","VK_INTEL_shader_integer_functions2",{"number":4659,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4661,"ratified":4117,"contact":4074,"extension":4662,"proposal":3755},84,"KHR","(VK_KHR_get_physical_device_properties2+VK_KHR_storage_buffer_storage_class),VK_VERSION_1_1","VK_KHR_16bit_storage",{"number":4664,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4661,"ratified":4117,"contact":4665,"extension":4666,"proposal":3755},178,"Alexander Galazin @alegal-arm","VK_KHR_8bit_storage",{"number":4668,"type":3978,"author":4660,"provisional":3755,"depends":4669,"ratified":4117,"contact":4443,"extension":4670,"proposal":3755},151,"((VK_VERSION_1_1+VK_EXT_descriptor_indexing+VK_KHR_buffer_device_address),VK_VERSION_1_2)+VK_KHR_deferred_host_operations","VK_KHR_acceleration_structure",{"number":3786,"type":4099,"author":4660,"provisional":3755,"depends":4212,"platform":4062,"ratified":4117,"contact":4069,"extension":4672,"proposal":3755},"VK_KHR_android_surface",{"number":4674,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":3982,"extension":4675,"proposal":3755},158,"VK_KHR_bind_memory2",{"number":4677,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4678,"ratified":4117,"contact":4125,"extension":4135,"proposal":3755},258,"(VK_KHR_get_physical_device_properties2+VK_KHR_device_group),VK_VERSION_1_1",{"number":4680,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":4334,"extension":4139,"proposal":3755},544,{"number":4682,"type":3978,"author":4660,"provisional":3755,"depends":4683,"ratified":4117,"contact":4684,"extension":4685,"proposal":3950},512,"VK_KHR_get_physical_device_properties2","Jean-Noe Morissette @MagicPoncho","VK_KHR_compute_shader_derivatives",{"number":4687,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"contact":4083,"extension":4688,"proposal":3950},507,"VK_KHR_cooperative_matrix",{"number":4690,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4143,"contact":4255,"extension":4691,"proposal":3755},338,"VK_KHR_copy_commands2",{"number":4693,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4694,"ratified":4117,"contact":4695,"extension":4696,"proposal":3755},110,"(VK_KHR_multiview+VK_KHR_maintenance2),VK_VERSION_1_1","Tobias Hector @tobias","VK_KHR_create_renderpass2",{"number":4698,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4699,"ratified":4117,"contact":4107,"extension":4700,"proposal":3755},128,"VK_KHR_get_memory_requirements2,VK_VERSION_1_1","VK_KHR_dedicated_allocation",{"number":4702,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4703,"extension":4704,"proposal":3755},269,"Josh Barczak @jbarczak","VK_KHR_deferred_host_operations",{"number":4706,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4707,"ratified":4117,"contact":4708,"extension":4709,"proposal":3755},200,"VK_KHR_create_renderpass2,VK_VERSION_1_2","Jan-Harald Fredriksen @janharald","VK_KHR_depth_stencil_resolve",{"number":4711,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4712,"extension":4713,"proposal":3755},86,"Markus Tavenrath @mtavenrath","VK_KHR_descriptor_update_template",{"number":4715,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4716,"ratified":4117,"contact":4125,"extension":4717,"proposal":3755},61,"VK_KHR_device_group_creation","VK_KHR_device_group",{"number":4719,"type":4099,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4125,"extension":4716,"proposal":3755},71,{"number":3730,"type":4099,"author":4660,"provisional":3755,"depends":4212,"ratified":4143,"contact":4721,"extension":4209,"proposal":3755},"James Jones @cubanismo,Norbert Nopper @FslNopper",{"number":3766,"type":3978,"author":4660,"provisional":3755,"depends":4723,"ratified":4143,"contact":4107,"extension":4724,"proposal":3755},"VK_KHR_swapchain+VK_KHR_display","VK_KHR_display_swapchain",{"number":4726,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"ratified":4117,"contact":4131,"extension":4003,"proposal":3755},170,{"number":4728,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":3991,"extension":4729,"proposal":3755},197,"VK_KHR_driver_properties",{"number":3928,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":4731,"ratified":4117,"contact":3982,"extension":4732,"proposal":3950},"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_KHR_dynamic_rendering",{"number":4734,"type":3978,"author":3979,"provisional":3755,"depends":4735,"ratified":4117,"contact":3982,"extension":4736,"proposal":3950},233,"VK_KHR_dynamic_rendering,VK_VERSION_1_3","VK_KHR_dynamic_rendering_local_read",{"number":4738,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4739,"ratified":4117,"contact":4069,"extension":4740,"proposal":3755},114,"VK_KHR_external_fence_capabilities","VK_KHR_external_fence",{"number":4742,"type":4099,"author":4660,"promotedto":4089,"provisional":3755,"depends":3995,"ratified":4117,"contact":4069,"extension":4739,"proposal":3755},113,{"number":4744,"type":3978,"author":4660,"provisional":3755,"depends":4745,"ratified":4143,"contact":4069,"extension":4746,"proposal":3755},116,"VK_KHR_external_fence,VK_VERSION_1_1","VK_KHR_external_fence_fd",{"number":4748,"type":3978,"author":4660,"provisional":3755,"depends":4740,"platform":4273,"ratified":4117,"contact":4069,"extension":4749,"proposal":3755},115,"VK_KHR_external_fence_win32",{"number":4751,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4752,"ratified":4117,"contact":4107,"extension":4753,"proposal":3755},73,"VK_KHR_external_memory_capabilities,VK_VERSION_1_1","VK_KHR_external_memory",{"number":4755,"type":4099,"author":4660,"promotedto":4089,"provisional":3755,"depends":3995,"ratified":4117,"contact":4107,"extension":4756,"proposal":3755},72,"VK_KHR_external_memory_capabilities",{"number":4758,"type":3978,"author":4660,"provisional":3755,"depends":4242,"ratified":4143,"contact":4107,"extension":4247,"proposal":3755},75,{"number":4760,"type":3978,"author":4660,"provisional":3755,"depends":4242,"platform":4273,"ratified":4117,"contact":4107,"extension":4761,"proposal":3755},74,"VK_KHR_external_memory_win32",{"number":4763,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4764,"ratified":4117,"contact":4107,"extension":4765,"proposal":3755},78,"VK_KHR_external_semaphore_capabilities","VK_KHR_external_semaphore",{"number":4767,"type":4099,"author":4660,"promotedto":4089,"provisional":3755,"depends":3995,"ratified":4117,"contact":4107,"extension":4764,"proposal":3755},77,{"number":4769,"type":3978,"author":4660,"provisional":3755,"depends":4770,"ratified":4143,"contact":4107,"extension":4771,"proposal":3755},80,"VK_KHR_external_semaphore,VK_VERSION_1_1","VK_KHR_external_semaphore_fd",{"number":4773,"type":3978,"author":4660,"provisional":3755,"depends":4765,"platform":4273,"ratified":4117,"contact":4107,"extension":4774,"proposal":3755},79,"VK_KHR_external_semaphore_win32",{"number":4776,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4117,"contact":4652,"extension":4777,"proposal":3755},361,"VK_KHR_format_feature_flags2",{"number":4779,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"contact":3986,"extension":4780,"proposal":3950},323,"VK_KHR_fragment_shader_barycentric",{"number":4782,"type":3978,"author":4660,"provisional":3755,"depends":4783,"ratified":4143,"contact":3982,"extension":4784,"proposal":3950},227,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_create_renderpass2),VK_VERSION_1_2","VK_KHR_fragment_shading_rate",{"number":4786,"type":4099,"author":4660,"provisional":3755,"depends":4209,"ratified":4143,"contact":4107,"extension":4787,"proposal":3755},122,"VK_KHR_get_display_properties2",{"number":4789,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4359,"extension":4790,"proposal":3755},147,"VK_KHR_get_memory_requirements2",{"number":4792,"type":4099,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4125,"extension":4683,"proposal":3755},60,{"number":4794,"type":4099,"author":4660,"provisional":3755,"depends":4212,"ratified":4143,"contact":4107,"extension":4795,"proposal":3755},120,"VK_KHR_get_surface_capabilities2",{"number":4797,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":3982,"extension":4277,"proposal":3755},189,{"number":4799,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"ratified":4117,"contact":4359,"extension":4800,"proposal":3755},148,"VK_KHR_image_format_list",{"number":4802,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4803,"ratified":4117,"contact":4695,"extension":4804,"proposal":3755},109,"(((VK_KHR_get_physical_device_properties2+VK_KHR_maintenance2),VK_VERSION_1_1)+VK_KHR_image_format_list),VK_VERSION_1_2","VK_KHR_imageless_framebuffer",{"number":4806,"type":3978,"author":4660,"provisional":3755,"depends":4290,"ratified":4143,"contact":4612,"extension":4807,"proposal":3755},85,"VK_KHR_incremental_present",{"number":4809,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":4131,"extension":4329,"proposal":3755},534,{"number":4811,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":4131,"extension":4349,"proposal":3755},535,{"number":4813,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4178,"extension":4354,"proposal":3950},527,{"number":4815,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4131,"extension":4023,"proposal":3755},70,{"number":4817,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4818,"extension":4819,"proposal":3755},118,"Michael Worcester @michaelworcester","VK_KHR_maintenance2",{"number":4821,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4390,"proposal":3755},169,{"number":4823,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":4089,"ratified":4117,"contact":4131,"extension":4824,"proposal":3755},414,"VK_KHR_maintenance4",{"number":4826,"type":3978,"author":4660,"provisional":3755,"depends":4827,"ratified":4117,"contact":4828,"extension":4829,"proposal":3950},471,"(VK_VERSION_1_1+VK_KHR_dynamic_rendering),VK_VERSION_1_3","Stu Smith @stu-s","VK_KHR_maintenance5",{"number":4831,"type":3978,"author":4660,"provisional":3755,"depends":4089,"ratified":4117,"contact":4832,"extension":4833,"proposal":3950},546,"Jon Leech @oddhack","VK_KHR_maintenance6",{"number":4835,"type":3978,"author":4660,"provisional":3755,"depends":4089,"ratified":4117,"contact":4118,"extension":4836,"proposal":3950},563,"VK_KHR_maintenance7",{"number":4838,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4359,"extension":4358,"proposal":3950},272,{"number":4840,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4841,"proposal":3755},54,"VK_KHR_multiview",{"extension":4843,"proposal":3755},"VK_KHR_object_refresh",{"number":4845,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"specialuse":3990,"contact":4846,"extension":4847,"proposal":3755},117,"Alon Or-bach @alonorbach","VK_KHR_performance_query",{"number":4849,"type":3978,"author":4660,"provisional":3755,"depends":4829,"ratified":4117,"contact":4828,"extension":4850,"proposal":3950},484,"VK_KHR_pipeline_binary",{"number":4852,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"specialuse":3990,"contact":4359,"extension":4853,"proposal":3755},270,"VK_KHR_pipeline_executable_properties",{"number":4855,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4370,"extension":4856,"proposal":3755},291,"VK_KHR_pipeline_library",{"number":4858,"type":4099,"author":4660,"provisional":3755,"ratified":4117,"contact":4859,"extension":4860,"proposal":3755},395,"Charles Giessen @charles-lunarg","VK_KHR_portability_enumeration",{"number":4862,"type":3978,"author":4660,"provisional":3950,"depends":3995,"platform":3981,"ratified":4117,"contact":4375,"extension":4863,"proposal":3755},164,"VK_KHR_portability_subset",{"number":4865,"type":3978,"author":4660,"provisional":3755,"depends":4866,"ratified":4117,"contact":4867,"extension":4868,"proposal":3755},295,"VK_KHR_swapchain+VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","Keith Packard @keithp","VK_KHR_present_id",{"number":4870,"type":3978,"author":4660,"provisional":3755,"depends":4871,"ratified":4117,"contact":4867,"extension":4872,"proposal":3755},249,"VK_KHR_swapchain+VK_KHR_present_id","VK_KHR_present_wait",{"number":4874,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":4875,"proposal":3755},81,"VK_KHR_push_descriptor",{"number":4877,"type":3978,"author":4660,"provisional":3755,"depends":4878,"ratified":4117,"contact":4443,"extension":4879,"proposal":3755},349,"VK_KHR_spirv_1_4+VK_KHR_acceleration_structure","VK_KHR_ray_query",{"number":4881,"type":3978,"author":4660,"provisional":3755,"depends":4670,"ratified":4117,"contact":4443,"extension":4882,"proposal":3755},387,"VK_KHR_ray_tracing_maintenance1",{"number":4884,"type":3978,"author":4660,"provisional":3755,"depends":4878,"ratified":4117,"contact":4443,"extension":4885,"proposal":3755},348,"VK_KHR_ray_tracing_pipeline",{"number":4887,"type":3978,"author":4660,"provisional":3755,"depends":4670,"ratified":4117,"contact":4888,"extension":4889,"proposal":3950},482,"Eric Werness","VK_KHR_ray_tracing_position_fetch",{"number":4891,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4892,"extension":4893,"proposal":3755},145,"John Kessenich @johnkslang","VK_KHR_relaxed_block_layout",{"number":3810,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"ratified":4117,"contact":3982,"extension":4895,"proposal":3755},"VK_KHR_sampler_mirror_clamp_to_edge",{"number":4897,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4898,"ratified":4117,"contact":4899,"extension":4900,"proposal":3755},157,"(VK_KHR_maintenance1+VK_KHR_bind_memory2+VK_KHR_get_memory_requirements2+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","Andrew Garrard @fluppeteer","VK_KHR_sampler_ycbcr_conversion",{"number":4902,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4783,"ratified":4117,"contact":4131,"extension":4903,"proposal":3755},242,"VK_KHR_separate_depth_stencil_layouts",{"number":4905,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4906,"extension":4907,"proposal":3755},181,"Aaron Hagan @ahagan","VK_KHR_shader_atomic_int64",{"number":4909,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":4906,"extension":4910,"proposal":3755},182,"VK_KHR_shader_clock",{"number":4912,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4443,"extension":4913,"proposal":3755},64,"VK_KHR_shader_draw_parameters",{"number":4915,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"contact":4083,"extension":4916,"proposal":3950},545,"VK_KHR_shader_expect_assume",{"number":4918,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4665,"extension":4009,"proposal":3755},83,{"number":4920,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4665,"extension":4921,"proposal":3755},198,"VK_KHR_shader_float_controls",{"number":4923,"type":3978,"author":4660,"provisional":3755,"depends":4924,"ratified":4117,"contact":4174,"extension":4925,"proposal":3950},529,"VK_VERSION_1_1+VK_KHR_shader_float_controls","VK_KHR_shader_float_controls2",{"number":4927,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4117,"contact":4083,"extension":4928,"proposal":3950},281,"VK_KHR_shader_integer_dot_product",{"number":4930,"type":3978,"author":4660,"provisional":3755,"depends":4089,"ratified":4117,"contact":4931,"extension":4932,"proposal":3950},435,"Alan Baker @alan-baker","VK_KHR_shader_maximal_reconvergence",{"number":4934,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"ratified":4117,"contact":4160,"extension":4935,"proposal":3755},294,"VK_KHR_shader_non_semantic_info",{"number":4937,"type":3978,"author":4660,"provisional":3755,"depends":4938,"ratified":4117,"contact":3982,"extension":4939,"proposal":3950},236,"VK_VERSION_1_1+VK_KHR_vulkan_memory_model+VK_KHR_shader_maximal_reconvergence","VK_KHR_shader_quad_control",{"number":4941,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4942,"extension":4943,"proposal":3950},559,"Nathan Gauër @Keenuts","VK_KHR_shader_relaxed_extended_instruction",{"number":4945,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4089,"ratified":4117,"contact":4524,"extension":4946,"proposal":3755},176,"VK_KHR_shader_subgroup_extended_types",{"number":4948,"type":3978,"author":4660,"provisional":3755,"ratified":4117,"contact":4083,"extension":4949,"proposal":3950},417,"VK_KHR_shader_subgroup_rotate",{"number":4951,"type":3978,"author":4660,"provisional":3755,"depends":4089,"ratified":4117,"contact":4931,"extension":4952,"proposal":3755},324,"VK_KHR_shader_subgroup_uniform_control_flow",{"number":4954,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4143,"contact":4069,"extension":4955,"proposal":3755},216,"VK_KHR_shader_terminate_invocation",{"number":4957,"type":3978,"author":4660,"provisional":3755,"depends":4958,"ratified":4143,"contact":4846,"extension":4959,"proposal":3755},112,"VK_KHR_swapchain+VK_KHR_get_surface_capabilities2+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_KHR_shared_presentable_image",{"number":4961,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":4924,"ratified":4117,"contact":4069,"extension":4369,"proposal":3755},237,{"number":4963,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"ratified":4117,"contact":4665,"extension":4964,"proposal":3755},132,"VK_KHR_storage_buffer_storage_class",{"number":3488,"type":4099,"author":4660,"provisional":3755,"ratified":4143,"contact":4966,"extension":4212,"proposal":3755},"James Jones @cubanismo,Ian Elliott @ianelliottus",{"number":4968,"type":4099,"author":4660,"provisional":3755,"depends":4969,"ratified":4117,"contact":4970,"extension":4971,"proposal":3755},240,"VK_VERSION_1_1+VK_KHR_get_surface_capabilities2","Sandeep Shinde @sashinde","VK_KHR_surface_protected_capabilities",{"number":3724,"type":3978,"author":4660,"provisional":3755,"depends":4212,"ratified":4143,"contact":4966,"extension":4290,"proposal":3755},{"number":4974,"type":3978,"author":4660,"provisional":3755,"depends":4975,"ratified":4143,"contact":3991,"extension":4976,"proposal":3755},201,"VK_KHR_swapchain+(VK_KHR_maintenance2,VK_VERSION_1_1)+(VK_KHR_image_format_list,VK_VERSION_1_2)","VK_KHR_swapchain_mutable_format",{"number":4978,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4143,"contact":3982,"extension":4979,"proposal":3755},315,"VK_KHR_synchronization2",{"number":4981,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4359,"extension":4982,"proposal":3755},208,"VK_KHR_timeline_semaphore",{"number":4984,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4174,"extension":4985,"proposal":3755},254,"VK_KHR_uniform_buffer_standard_layout",{"number":4987,"type":3978,"author":4660,"promotedto":4089,"provisional":3755,"depends":4661,"ratified":4117,"contact":4069,"extension":4988,"proposal":3755},121,"VK_KHR_variable_pointers",{"number":4990,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4143,"contact":4178,"extension":4567,"proposal":3950},526,{"number":4992,"type":3978,"author":4660,"provisional":3755,"depends":4993,"ratified":4117,"contact":4334,"extension":4994,"proposal":3950},513,"VK_KHR_video_decode_queue","VK_KHR_video_decode_av1",{"number":3912,"type":3978,"author":4660,"provisional":3755,"depends":4993,"ratified":4117,"contact":4996,"extension":4997,"proposal":3950},"peter.fang@amd.com","VK_KHR_video_decode_h264",{"number":4999,"type":3978,"author":4660,"provisional":3755,"depends":4993,"ratified":4117,"contact":4996,"extension":5000,"proposal":3950},188,"VK_KHR_video_decode_h265",{"number":3850,"type":3978,"author":4660,"provisional":3755,"depends":5002,"ratified":4117,"contact":5003,"extension":4993,"proposal":3950},"VK_KHR_video_queue+(VK_KHR_synchronization2,VK_VERSION_1_3)","jake.beju@amd.com",{"number":3904,"type":3978,"author":4660,"provisional":3755,"depends":5005,"ratified":4117,"contact":5006,"extension":5007,"proposal":3950},"VK_KHR_video_encode_queue","Ahmed Abdelkhalek @aabdelkh","VK_KHR_video_encode_h264",{"number":3908,"type":3978,"author":4660,"provisional":3755,"depends":5005,"ratified":4117,"contact":5006,"extension":5009,"proposal":3950},"VK_KHR_video_encode_h265",{"number":5011,"type":3978,"author":4660,"provisional":3755,"depends":5002,"ratified":4117,"contact":5006,"extension":5005,"proposal":3950},300,{"number":5013,"type":3978,"author":4660,"provisional":3755,"depends":5014,"ratified":4117,"contact":4334,"extension":5015,"proposal":3950},516,"VK_KHR_video_queue","VK_KHR_video_maintenance1",{"number":3846,"type":3978,"author":4660,"provisional":3755,"depends":5017,"ratified":4117,"contact":4573,"extension":5014,"proposal":3950},"(VK_VERSION_1_1+VK_KHR_synchronization2),VK_VERSION_1_3",{"number":5019,"type":3978,"author":4660,"promotedto":4191,"provisional":3755,"depends":3995,"ratified":4117,"contact":4125,"extension":5020,"proposal":3755},212,"VK_KHR_vulkan_memory_model",{"number":3778,"type":4099,"author":4660,"provisional":3755,"depends":4212,"platform":5022,"ratified":4117,"contact":5023,"extension":5024,"proposal":3755},"wayland","Jesse Hall @critsec,Ian Elliott @ianelliottus","VK_KHR_wayland_surface",{"number":5026,"type":3978,"author":4660,"provisional":3755,"depends":4761,"platform":4273,"ratified":4117,"contact":5027,"extension":5028,"proposal":3755},76,"Carsten Rohde @crohde","VK_KHR_win32_keyed_mutex",{"number":3790,"type":4099,"author":4660,"provisional":3755,"depends":4212,"platform":4273,"ratified":4117,"contact":5023,"extension":5030,"proposal":3755},"VK_KHR_win32_surface",{"number":5032,"type":3978,"author":4660,"provisional":3755,"depends":3995,"ratified":4117,"contact":5033,"extension":5034,"proposal":3755},337,"Caio Marcelo de Oliveira Filho @cmarcelo","VK_KHR_workgroup_memory_explicit_layout",{"number":3774,"type":4099,"author":4660,"provisional":3755,"depends":4212,"platform":5036,"ratified":4117,"contact":5023,"extension":5037,"proposal":3755},"xcb","VK_KHR_xcb_surface",{"number":3770,"type":4099,"author":4660,"provisional":3755,"depends":4212,"platform":5039,"ratified":4117,"contact":5023,"extension":5040,"proposal":3755},"xlib","VK_KHR_xlib_surface",{"number":5042,"type":3978,"author":4660,"promotedto":4093,"provisional":3755,"depends":3995,"ratified":4117,"contact":4931,"extension":5043,"proposal":3755},326,"VK_KHR_zero_initialize_workgroup_memory",{"number":5045,"type":4099,"author":4558,"provisional":3755,"contact":4859,"extension":5046,"proposal":3950},460,"VK_LUNARG_direct_driver_loading",{"number":5048,"type":3978,"author":5049,"provisional":3755,"depends":3995,"specialuse":4170,"contact":4427,"extension":5050,"proposal":3755},576,"MESA","VK_MESA_image_alignment_control",{"number":5052,"type":3978,"author":5053,"provisional":3755,"depends":3995,"contact":5054,"extension":5055,"proposal":3950},531,"MSFT","Jesse Natalie @jenatali","VK_MSFT_layered_driver",{"number":5057,"type":4099,"author":5058,"deprecatedby":4380,"provisional":3755,"depends":4212,"platform":5059,"contact":4375,"extension":5060,"proposal":3755},123,"MVK","ios","VK_MVK_ios_surface",{"number":5062,"type":4099,"author":5058,"deprecatedby":4380,"provisional":3755,"depends":4212,"platform":5063,"contact":4375,"extension":5064,"proposal":3755},124,"macos","VK_MVK_macos_surface",{"number":5066,"type":4099,"author":5067,"provisional":3755,"depends":4212,"platform":5068,"contact":5069,"extension":5070,"proposal":3755},63,"NN","vi","Mathias Heyer gitlab:@mheyer","VK_NN_vi_surface",{"number":3870,"type":3978,"author":5072,"provisional":3755,"contact":5073,"extension":5074,"proposal":3755},"NVX","Eric Werness @ewerness-nv,Liam Middlebrook @liam-middlebrook","VK_NVX_binary_import",{"number":3874,"type":3978,"author":5072,"provisional":3755,"contact":5076,"extension":5077,"proposal":3755},"Eric Werness @ewerness-nv","VK_NVX_image_view_handle",{"number":5079,"type":3978,"author":5072,"provisional":3755,"depends":5080,"contact":4125,"extension":5081,"proposal":3755},98,"VK_KHR_multiview,VK_VERSION_1_1","VK_NVX_multiview_per_view_attributes",{"number":5083,"type":3978,"author":4105,"provisional":3755,"depends":4100,"platform":4273,"contact":5084,"extension":5085,"proposal":3755},346,"Jeff Juliano @jjuliano","VK_NV_acquire_winrt_display",{"number":5087,"type":3978,"author":4105,"provisional":3755,"contact":5076,"extension":5088,"proposal":3755},88,"VK_NV_clip_space_w_scaling",{"number":5090,"type":3978,"author":4105,"provisional":3755,"contact":5091,"extension":5092,"proposal":3755},560,"Lujin Wang @lujinwangnv","VK_NV_command_buffer_inheritance",{"number":5094,"type":3978,"author":4105,"promotedto":4685,"provisional":3755,"depends":3995,"contact":5095,"extension":5096,"proposal":3755},202,"Pat Brown @nvpbrown","VK_NV_compute_shader_derivatives",{"number":5098,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":4125,"extension":5099,"proposal":3755},250,"VK_NV_cooperative_matrix",{"number":5101,"type":3978,"author":4105,"provisional":3755,"depends":5102,"contact":4235,"extension":5103,"proposal":3755},427,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_NV_copy_memory_indirect",{"number":5105,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":4443,"extension":5106,"proposal":3755},51,"VK_NV_corner_sampled_image",{"number":5108,"type":3978,"author":4105,"provisional":3755,"depends":5109,"contact":5110,"extension":5111,"proposal":3755},251,"VK_NV_framebuffer_mixed_samples+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","Kedarnath Thangudu @kthangudu","VK_NV_coverage_reduction_mode",{"number":5113,"type":3978,"author":4105,"provisional":3950,"contact":5114,"extension":5115,"proposal":3755},308,"Tristan Lorach @tlorach","VK_NV_cuda_kernel_launch",{"number":3858,"type":3978,"author":4105,"deprecatedby":4700,"provisional":3755,"contact":4125,"extension":5117,"proposal":3755},"VK_NV_dedicated_allocation",{"number":5119,"type":3978,"author":5120,"provisional":3755,"depends":5121,"contact":5122,"extension":5123,"proposal":3755},241,"NVIDIA","(VK_KHR_dedicated_allocation+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","Nuno Subtil @nsubtil","VK_NV_dedicated_allocation_image_aliasing",{"number":5125,"type":3978,"author":4105,"provisional":3755,"depends":4089,"contact":4131,"extension":5126,"proposal":3755},547,"VK_NV_descriptor_pool_overallocation",{"number":5128,"type":3978,"author":5120,"provisional":3755,"depends":3995,"contact":5122,"extension":5129,"proposal":3755},207,"VK_NV_device_diagnostic_checkpoints",{"number":5131,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5110,"extension":5132,"proposal":3755},301,"VK_NV_device_diagnostics_config",{"number":5134,"type":3978,"author":4105,"provisional":3755,"depends":5135,"contact":4370,"extension":5136,"proposal":3755},278,"(VK_VERSION_1_1+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_NV_device_generated_commands",{"number":5138,"type":3978,"author":4105,"provisional":3755,"depends":5136,"contact":4235,"extension":5139,"proposal":3755},429,"VK_NV_device_generated_commands_compute",{"number":5141,"type":3978,"author":4105,"provisional":3950,"depends":4405,"platform":3981,"contact":5142,"extension":5143,"proposal":3755},398,"Christoph Kubisch @pixeljetstream, Eric Werness @ewerness-nv","VK_NV_displacement_micromap",{"number":5145,"type":3978,"author":4105,"provisional":3755,"contact":5146,"extension":5147,"proposal":3755},493,"Russell Chou @russellcnv","VK_NV_extended_sparse_address_space",{"number":5149,"type":3978,"author":4105,"deprecatedby":4753,"provisional":3755,"depends":5150,"contact":4107,"extension":5151,"proposal":3755},57,"VK_NV_external_memory_capabilities","VK_NV_external_memory",{"number":5153,"type":4099,"author":4105,"deprecatedby":4756,"provisional":3755,"contact":4107,"extension":5150,"proposal":3755},56,{"number":5155,"type":3978,"author":4105,"provisional":3755,"depends":4242,"contact":5027,"extension":5156,"proposal":3755},372,"VK_NV_external_memory_rdma",{"extension":5158,"proposal":3755},"VK_NV_external_memory_sci_buf",{"number":5160,"type":3978,"author":4105,"deprecatedby":4761,"provisional":3755,"depends":5151,"platform":4273,"contact":4107,"extension":5161,"proposal":3755},58,"VK_NV_external_memory_win32",{"extension":5163,"proposal":3755},"VK_NV_external_sci_sync",{"extension":5165,"proposal":3755},"VK_NV_external_sci_sync2",{"number":5167,"type":3978,"author":4105,"provisional":3755,"contact":4125,"extension":5168,"proposal":3755},154,"VK_NV_fill_rectangle",{"number":5170,"type":3978,"author":4105,"provisional":3755,"contact":4125,"extension":5171,"proposal":3755},150,"VK_NV_fragment_coverage_to_color",{"number":5173,"type":3978,"author":4105,"promotedto":4780,"provisional":3755,"depends":3995,"contact":5095,"extension":5174,"proposal":3755},204,"VK_NV_fragment_shader_barycentric",{"number":5176,"type":3978,"author":4105,"provisional":3755,"depends":4784,"contact":5095,"extension":5177,"proposal":3755},327,"VK_NV_fragment_shading_rate_enums",{"number":5179,"type":3978,"author":4105,"provisional":3755,"contact":4125,"extension":5180,"proposal":3755},153,"VK_NV_framebuffer_mixed_samples",{"number":5182,"type":3978,"author":4105,"provisional":3755,"contact":4443,"extension":5183,"proposal":3755},96,"VK_NV_geometry_shader_passthrough",{"number":3802,"type":3978,"author":4105,"deprecatedby":4643,"provisional":3755,"contact":4131,"extension":5185,"proposal":3755},"VK_NV_glsl_shader",{"number":5187,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5188,"extension":5189,"proposal":3755},279,"David Zhao Akeley @akeley98","VK_NV_inherited_viewport_scissor",{"number":5191,"type":3978,"author":5120,"provisional":3755,"depends":3995,"contact":5192,"extension":5193,"proposal":3755},431,"sourav parmar @souravpNV","VK_NV_linear_color_attachment",{"number":5195,"type":3978,"author":4105,"provisional":3755,"contact":5196,"extension":5197,"proposal":3755},311,"Charles Hansen @cshansen","VK_NV_low_latency",{"number":5199,"type":3978,"author":4105,"provisional":3755,"depends":5200,"contact":5196,"extension":5201,"proposal":3755},506,"VK_VERSION_1_2,VK_KHR_timeline_semaphore","VK_NV_low_latency2",{"number":5203,"type":3978,"author":4105,"provisional":3755,"depends":5102,"contact":4235,"extension":5204,"proposal":3755},428,"VK_NV_memory_decompression",{"number":5206,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":4370,"extension":5207,"proposal":3755},203,"VK_NV_mesh_shader",{"number":5209,"type":3978,"author":4105,"provisional":3755,"depends":5210,"contact":5027,"extension":5211,"proposal":3755},465,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_format_feature_flags2+VK_KHR_synchronization2),VK_VERSION_1_3","VK_NV_optical_flow",{"number":5213,"type":3978,"author":4105,"provisional":3755,"depends":4833,"contact":4131,"extension":5214,"proposal":3755},517,"VK_NV_per_stage_descriptor_set",{"number":5216,"type":3978,"author":4105,"provisional":3755,"depends":4272,"contact":5217,"extension":5218,"proposal":3755},293,"Liya Li @liyli","VK_NV_present_barrier",{"extension":5220,"proposal":3755},"VK_NV_private_vendor_info",{"number":5222,"type":3978,"author":4105,"provisional":3755,"contact":5223,"extension":5224,"proposal":3755},556,"Rodrigo Locatti @rlocatti","VK_NV_raw_access_chains",{"number":5226,"type":3978,"author":4105,"deprecatedby":4885,"provisional":3755,"depends":5227,"contact":5076,"extension":5228,"proposal":3755},166,"(VK_KHR_get_physical_device_properties2+VK_KHR_get_memory_requirements2),VK_VERSION_1_1","VK_NV_ray_tracing",{"number":5230,"type":3978,"author":4105,"provisional":3755,"depends":4885,"contact":5076,"extension":5231,"proposal":3755},491,"VK_NV_ray_tracing_invocation_reorder",{"number":5233,"type":3978,"author":4105,"provisional":3755,"depends":4885,"contact":4888,"extension":5234,"proposal":3755},328,"VK_NV_ray_tracing_motion_blur",{"number":5236,"type":3978,"author":4105,"provisional":3755,"contact":4235,"extension":5237,"proposal":3950},569,"VK_NV_ray_tracing_validation",{"number":5239,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5110,"extension":5240,"proposal":3755},167,"VK_NV_representative_fragment_test",{"number":5242,"type":3978,"author":4105,"provisional":3755,"contact":4131,"extension":5243,"proposal":3755},95,"VK_NV_sample_mask_override_coverage",{"number":5245,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5095,"extension":5246,"proposal":3755},206,"VK_NV_scissor_exclusive",{"number":5248,"type":3978,"author":4105,"provisional":3755,"contact":4125,"extension":5249,"proposal":3755},564,"VK_NV_shader_atomic_float16_vector",{"number":5251,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5095,"extension":5252,"proposal":3755},205,"VK_NV_shader_image_footprint",{"number":5254,"type":3978,"author":4105,"provisional":3755,"depends":4089,"contact":4443,"extension":5255,"proposal":3755},155,"VK_NV_shader_sm_builtins",{"number":5257,"type":3978,"author":4105,"provisional":3755,"depends":4089,"contact":4125,"extension":5258,"proposal":3755},199,"VK_NV_shader_subgroup_partitioned",{"number":5260,"type":3978,"author":4105,"provisional":3755,"depends":3995,"contact":5095,"extension":5261,"proposal":3755},165,"VK_NV_shading_rate_image",{"number":5263,"type":3978,"author":4105,"provisional":3755,"contact":4443,"extension":5264,"proposal":3755},97,"VK_NV_viewport_array2",{"number":5266,"type":3978,"author":4105,"provisional":3755,"contact":4131,"extension":5267,"proposal":3755},99,"VK_NV_viewport_swizzle",{"number":5269,"type":3978,"author":4105,"promotedto":5028,"provisional":3755,"depends":5161,"platform":4273,"contact":5027,"extension":5270,"proposal":3755},59,"VK_NV_win32_keyed_mutex",{"number":5272,"type":3978,"author":4254,"provisional":3755,"depends":5273,"contact":4255,"extension":5274,"proposal":3755},522,"(VK_EXT_filter_cubic)+(VK_VERSION_1_2,VK_EXT_sampler_filter_minmax)","VK_QCOM_filter_cubic_clamp",{"number":5276,"type":3978,"author":4254,"provisional":3755,"depends":4256,"contact":4255,"extension":5277,"proposal":3755},520,"VK_QCOM_filter_cubic_weights",{"number":5279,"type":3978,"author":4254,"provisional":3755,"depends":5280,"contact":4255,"extension":5281,"proposal":3755},426,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_fragment_density_map","VK_QCOM_fragment_density_map_offset",{"number":5283,"type":3978,"author":4254,"provisional":3755,"depends":5284,"contact":4255,"extension":5285,"proposal":3950},441,"VK_KHR_format_feature_flags2,VK_VERSION_1_3","VK_QCOM_image_processing",{"number":5287,"type":3978,"author":4254,"provisional":3755,"depends":5285,"contact":4255,"extension":5288,"proposal":3755},519,"VK_QCOM_image_processing2",{"number":5290,"type":3978,"author":4254,"provisional":3755,"contact":4255,"extension":5291,"proposal":3755},511,"VK_QCOM_multiview_per_view_render_areas",{"number":5293,"type":3978,"author":4254,"provisional":3755,"depends":3995,"contact":4255,"extension":5294,"proposal":3755},489,"VK_QCOM_multiview_per_view_viewports",{"number":5296,"type":3978,"author":4254,"provisional":3755,"contact":4255,"extension":5297,"proposal":3755},172,"VK_QCOM_render_pass_shader_resolve",{"number":5299,"type":3978,"author":4254,"provisional":3755,"contact":4255,"extension":5300,"proposal":3755},302,"VK_QCOM_render_pass_store_ops",{"number":5302,"type":3978,"author":4254,"provisional":3755,"contact":4255,"extension":5303,"proposal":3755},283,"VK_QCOM_render_pass_transform",{"number":5305,"type":3978,"author":4254,"provisional":3755,"depends":5306,"contact":4255,"extension":5307,"proposal":3755},334,"VK_KHR_copy_commands2,VK_VERSION_1_3","VK_QCOM_rotated_copy_commands",{"number":5309,"type":3978,"author":4254,"provisional":3755,"depends":3995,"contact":4255,"extension":5310,"proposal":3950},485,"VK_QCOM_tile_properties",{"number":5312,"type":3978,"author":4254,"provisional":3755,"contact":4255,"extension":5313,"proposal":3755},521,"VK_QCOM_ycbcr_degamma",{"number":5315,"type":3978,"author":5316,"provisional":3755,"depends":4068,"platform":5317,"contact":5318,"extension":5319,"proposal":3755},530,"QNX","screen","Mike Gorchak @mgorchak-blackberry, Aaron Ruby @aruby-blackberry","VK_QNX_external_memory_screen_buffer",{"number":5321,"type":4099,"author":5316,"provisional":3755,"depends":4212,"platform":5317,"contact":5322,"extension":5323,"proposal":3755},379,"Mike Gorchak @mgorchak-blackberry","VK_QNX_screen_surface",{"number":5325,"type":3978,"author":5326,"provisional":3755,"depends":3995,"contact":4198,"extension":5327,"proposal":3755},486,"SEC","VK_SEC_amigo_profiling",{"number":5329,"type":3978,"author":5330,"provisional":3755,"depends":3995,"specialuse":4170,"contact":4427,"extension":5331,"proposal":3755},421,"VALVE","VK_VALVE_descriptor_set_host_mapping",{"number":5333,"type":3978,"author":5330,"promotedto":4392,"provisional":3755,"depends":4390,"specialuse":4170,"contact":4391,"extension":5334,"proposal":3755},352,"VK_VALVE_mutable_descriptor_type",1725732630188]