[{"data":1,"prerenderedAt":4962},["ShallowReactive",2],{"P9nrGcN1QT":3,"VyF3Mmj32r":3392,"N9m89Rcq0G":3602},{"title":4,"description":5,"body":6,"_type":3390,"_id":3391},"Render Pass","Draw commands be recorded within a render pass\ninstance.\nEach render pass instance defines a set of image resources, referred to as\nattachments, used during rendering.",{"type":7,"children":8,"toc":3373},"root",[9,17,52,63,73,83,93,102,111,119,128,137,146,155,164,187,196,205,212,222,234,239,251,340,436,459,478,496,507,548,569,594,604,610,619,628,637,646,650,659,668,672,681,690,699,708,722,735,743,752,761,770,779,788,811,840,850,854,882,1115,1141,1297,1301,1332,1352,1364,1376,1442,1505,1525,1594,1614,1624,1911,1952,1961,1966,1974,1982,1990,1998,2006,2014,2022,2026,2035,2039,2152,2205,2283,2291,2299,2307,2316,2322,2332,2352,2363,2368,2386,2391,2396,2402,2410,2419,2427,2436,2445,2454,2463,2472,2478,2483,2504,2519,2575,2583,2592,2596,2649,2655,2660,2680,2695,2734,2742,2751,2757,2762,2802,2807,2846,2854,2863,2872,2878,2883,2891,2899,2908,2916,2925,2934,2943,2952,2961,2970,2979,2988,2997,3006,3014,3022,3030,3039,3048,3054,3063,3072,3081,3090,3099,3108,3114,3119,3126,3131,3157,3163,3184,3196,3202,3259,3265,3270,3367],{"type":10,"tag":11,"props":12,"children":14},"element","h1",{"id":13},"renderpass",[15],{"type":16,"value":4},"text",{"type":10,"tag":18,"props":19,"children":20},"p",{},[21,28,30,35,37,43,45,50],{"type":10,"tag":22,"props":23,"children":25},"a",{"href":24},"/chapters/drawing#drawing",[26],{"type":16,"value":27},"Draw commands",{"type":16,"value":29}," ",{"type":10,"tag":31,"props":32,"children":34},"normative",{"type":33},"must",[],{"type":16,"value":36}," be recorded within a ",{"type":10,"tag":38,"props":39,"children":40},"em",{},[41],{"type":16,"value":42},"render pass\ninstance",{"type":16,"value":44},".\nEach render pass instance defines a set of image resources, referred to as\n",{"type":10,"tag":38,"props":46,"children":47},{},[48],{"type":16,"value":49},"attachments",{"type":16,"value":51},", used during rendering.",{"type":10,"tag":53,"props":54,"children":57},"refpage",{"name":55,"type":56},"vkCmdBeginRendering","protos",[58],{"type":10,"tag":18,"props":59,"children":60},{},[61],{"type":16,"value":62},"Begin a dynamic render pass instance",{"type":10,"tag":53,"props":64,"children":67},{"name":65,"type":66},"VkRenderingInfo","structs",[68],{"type":10,"tag":18,"props":69,"children":70},{},[71],{"type":16,"value":72},"Structure specifying render pass instance begin info",{"type":10,"tag":53,"props":74,"children":77},{"name":75,"type":76},"VkRenderingFlagBits","enums",[78],{"type":10,"tag":18,"props":79,"children":80},{},[81],{"type":16,"value":82},"Bitmask specifying additional properties of a dynamic render pass instance",{"type":10,"tag":53,"props":84,"children":87},{"name":85,"type":86},"VkRenderingFlags","flags",[88],{"type":10,"tag":18,"props":89,"children":90},{},[91],{"type":16,"value":92},"Bitmask of VkRenderingFlagBits",{"type":10,"tag":53,"props":94,"children":96},{"name":95,"type":66},"VkRenderingAttachmentInfo",[97],{"type":10,"tag":18,"props":98,"children":99},{},[100],{"type":16,"value":101},"Structure specifying attachment information",{"type":10,"tag":53,"props":103,"children":105},{"name":104,"type":66},"VkRenderingFragmentShadingRateAttachmentInfoKHR",[106],{"type":10,"tag":18,"props":107,"children":108},{},[109],{"type":16,"value":110},"Structure specifying fragment shading rate attachment information",{"type":10,"tag":53,"props":112,"children":114},{"name":113,"type":66},"VkRenderingFragmentDensityMapAttachmentInfoEXT",[115],{"type":10,"tag":18,"props":116,"children":117},{},[118],{"type":16,"value":110},{"type":10,"tag":53,"props":120,"children":122},{"name":121,"type":56},"vkGetRenderingAreaGranularityKHR",[123],{"type":10,"tag":18,"props":124,"children":125},{},[126],{"type":16,"value":127},"Returns the granularity for dynamic rendering optimal render area",{"type":10,"tag":53,"props":129,"children":131},{"name":130,"type":66},"VkRenderingAreaInfoKHR",[132],{"type":10,"tag":18,"props":133,"children":134},{},[135],{"type":16,"value":136},"Structure describing rendering area granularity query info",{"type":10,"tag":53,"props":138,"children":140},{"name":139,"type":66},"VkRenderPassStripeBeginInfoARM",[141],{"type":10,"tag":18,"props":142,"children":143},{},[144],{"type":16,"value":145},"Structure specifying striped rendering information",{"type":10,"tag":53,"props":147,"children":149},{"name":148,"type":66},"VkRenderPassStripeInfoARM",[150],{"type":10,"tag":18,"props":151,"children":152},{},[153],{"type":16,"value":154},"Structure specifying per rendering stripe information",{"type":10,"tag":53,"props":156,"children":158},{"name":157,"type":56},"vkCmdEndRendering",[159],{"type":10,"tag":18,"props":160,"children":161},{},[162],{"type":16,"value":163},"End a dynamic render pass instance",{"type":10,"tag":165,"props":166,"children":167},"note",{},[168],{"type":10,"tag":18,"props":169,"children":170},{},[171,173,178,180,185],{"type":16,"value":172},"For more complex rendering graphs, it is possible to pre-define a static\n",{"type":10,"tag":38,"props":174,"children":175},{},[176],{"type":16,"value":177},"render pass",{"type":16,"value":179}," object, which as well as allowing draw commands, allows the\ndefinition of framebuffer-local dependencies between multiple subpasses.\nThese objects have a lot of setup cost compared to\n",{"type":10,"tag":22,"props":181,"children":183},{"href":182},"/man/vkCmdBeginRendering",[184],{"type":16,"value":55},{"type":16,"value":186},", but use of subpass dependencies can confer\nimportant performance benefits on some devices.",{"type":10,"tag":53,"props":188,"children":190},{"name":189,"type":66},"VkTilePropertiesQCOM",[191],{"type":10,"tag":18,"props":192,"children":193},{},[194],{"type":16,"value":195},"Structure holding available tile properties",{"type":10,"tag":53,"props":197,"children":199},{"name":198,"type":56},"vkGetDynamicRenderingTilePropertiesQCOM",[200],{"type":10,"tag":18,"props":201,"children":202},{},[203],{"type":16,"value":204},"Get the properties when using dynamic rendering",{"type":10,"tag":206,"props":207,"children":209},"h2",{"id":208},"renderpass-objects",[210],{"type":16,"value":211},"Render Pass Objects",{"type":10,"tag":53,"props":213,"children":216},{"name":214,"type":215},"VkRenderPass","handles",[217],{"type":10,"tag":18,"props":218,"children":219},{},[220],{"type":16,"value":221},"Opaque handle to a render pass object",{"type":10,"tag":18,"props":223,"children":224},{},[225,227,232],{"type":16,"value":226},"An ",{"type":10,"tag":38,"props":228,"children":229},{},[230],{"type":16,"value":231},"attachment description",{"type":16,"value":233}," describes the properties of an attachment\nincluding its format, sample count, and how its contents are treated at the\nbeginning and end of each render pass instance.",{"type":10,"tag":235,"props":236,"children":238},"anchor",{"id":237},"renderpass-subpass",[],{"type":10,"tag":18,"props":240,"children":241},{},[242,244,249],{"type":16,"value":243},"A ",{"type":10,"tag":38,"props":245,"children":246},{},[247],{"type":16,"value":248},"subpass",{"type":16,"value":250}," represents a phase of rendering that reads and writes a subset\nof the attachments in a render pass.\nRendering commands are recorded into a particular subpass of a render pass\ninstance.",{"type":10,"tag":18,"props":252,"children":253},{},[254,255,260,262,266,268,273,275,280,282,287,289,294,296,301,303,308,310,315,316,321,323,326,328,333,335,338],{"type":16,"value":243},{"type":10,"tag":38,"props":256,"children":257},{},[258],{"type":16,"value":259},"subpass description",{"type":16,"value":261}," describes the subset of attachments that is involved\nin the execution of a subpass.\nEach subpass ",{"type":10,"tag":31,"props":263,"children":265},{"type":264},"can",[],{"type":16,"value":267}," read from some attachments as ",{"type":10,"tag":38,"props":269,"children":270},{},[271],{"type":16,"value":272},"input attachments",{"type":16,"value":274},", write\nto some as ",{"type":10,"tag":38,"props":276,"children":277},{},[278],{"type":16,"value":279},"color attachments",{"type":16,"value":281}," or ",{"type":10,"tag":38,"props":283,"children":284},{},[285],{"type":16,"value":286},"depth/stencil attachments",{"type":16,"value":288},",\nperform ",{"type":10,"tag":38,"props":290,"children":291},{},[292],{"type":16,"value":293},"shader resolve operations",{"type":16,"value":295}," to ",{"type":10,"tag":38,"props":297,"children":298},{},[299],{"type":16,"value":300},"color_attachments",{"type":16,"value":302}," or\n",{"type":10,"tag":38,"props":304,"children":305},{},[306],{"type":16,"value":307},"depth/stencil_attachments",{"type":16,"value":309},",\nand perform ",{"type":10,"tag":38,"props":311,"children":312},{},[313],{"type":16,"value":314},"multisample resolve operations",{"type":16,"value":295},{"type":10,"tag":38,"props":317,"children":318},{},[319],{"type":16,"value":320},"resolve attachments",{"type":16,"value":322},".\nA subpass description ",{"type":10,"tag":31,"props":324,"children":325},{"type":264},[],{"type":16,"value":327}," also include a set of ",{"type":10,"tag":38,"props":329,"children":330},{},[331],{"type":16,"value":332},"preserve attachments",{"type":16,"value":334},",\nwhich are attachments that are not read or written by the subpass but whose\ncontents ",{"type":10,"tag":31,"props":336,"children":337},{"type":33},[],{"type":16,"value":339}," be preserved throughout the subpass.",{"type":10,"tag":18,"props":341,"children":342},{},[343,345,350,352,359,361,367,369,375,376,382,384,390,391,397,398,404,406,412,414,420,422,427,429,434],{"type":16,"value":344},"A subpass ",{"type":10,"tag":38,"props":346,"children":347},{},[348],{"type":16,"value":349},"uses an attachment",{"type":16,"value":351}," if the attachment is a color, depth/stencil,\nresolve,\ndepth/stencil resolve,\nfragment shading rate,\nor input attachment for that subpass (as determined by the\n",{"type":10,"tag":353,"props":354,"children":356},"code",{"className":355},[],[357],{"type":16,"value":358},"pColorAttachments",{"type":16,"value":360},", ",{"type":10,"tag":353,"props":362,"children":364},{"className":363},[],[365],{"type":16,"value":366},"pDepthStencilAttachment",{"type":16,"value":368},",\n",{"type":10,"tag":353,"props":370,"children":372},{"className":371},[],[373],{"type":16,"value":374},"pResolveAttachments",{"type":16,"value":368},{"type":10,"tag":22,"props":377,"children":379},{"href":378},"/man/VkSubpassDescriptionDepthStencilResolve",[380],{"type":16,"value":381},"VkSubpassDescriptionDepthStencilResolve",{"type":16,"value":383},"::",{"type":10,"tag":353,"props":385,"children":387},{"className":386},[],[388],{"type":16,"value":389},"pDepthStencilResolveAttachment",{"type":16,"value":368},{"type":10,"tag":22,"props":392,"children":394},{"href":393},"/man/VkFragmentShadingRateAttachmentInfoKHR",[395],{"type":16,"value":396},"VkFragmentShadingRateAttachmentInfoKHR",{"type":16,"value":383},{"type":10,"tag":353,"props":399,"children":401},{"className":400},[],[402],{"type":16,"value":403},"pFragmentShadingRateAttachment→attachment",{"type":16,"value":405},",\nand ",{"type":10,"tag":353,"props":407,"children":409},{"className":408},[],[410],{"type":16,"value":411},"pInputAttachments",{"type":16,"value":413}," members of ",{"type":10,"tag":22,"props":415,"children":417},{"href":416},"/man/VkSubpassDescription",[418],{"type":16,"value":419},"VkSubpassDescription",{"type":16,"value":421},",\nrespectively).\nA subpass does not use an attachment if that attachment is preserved by the\nsubpass.\nThe ",{"type":10,"tag":38,"props":423,"children":424},{},[425],{"type":16,"value":426},"first use of an attachment",{"type":16,"value":428}," is in the lowest numbered subpass that uses\nthat attachment.\nSimilarly, the ",{"type":10,"tag":38,"props":430,"children":431},{},[432],{"type":16,"value":433},"last use of an attachment",{"type":16,"value":435}," is in the highest numbered\nsubpass that uses that attachment.",{"type":10,"tag":18,"props":437,"children":438},{},[439,441,444,446,449,451,457],{"type":16,"value":440},"The subpasses in a render pass all render to the same dimensions, and\nfragments for pixel (x,y,layer) in one subpass ",{"type":10,"tag":31,"props":442,"children":443},{"type":264},[],{"type":16,"value":445}," only read attachment\ncontents written by previous subpasses at that same (x,y,layer) location.\nFor multi-pixel fragments, the pixel read from an input attachment is\nselected from the pixels covered by that fragment in an\nimplementation-dependent manner.\nHowever, this selection ",{"type":10,"tag":31,"props":447,"children":448},{"type":33},[],{"type":16,"value":450}," be made consistently for any fragment with the\nsame shading rate for the lifetime of the ",{"type":10,"tag":22,"props":452,"children":454},{"href":453},"/man/VkDevice",[455],{"type":16,"value":456},"VkDevice",{"type":16,"value":458},".",{"type":10,"tag":165,"props":460,"children":461},{},[462,467],{"type":10,"tag":18,"props":463,"children":464},{},[465],{"type":16,"value":466},"By describing a complete set of subpasses in advance, render passes provide\nthe implementation an opportunity to optimize the storage and transfer of\nattachment data between subpasses.",{"type":10,"tag":18,"props":468,"children":469},{},[470,472,476],{"type":16,"value":471},"In practice, this means that subpasses with a simple framebuffer-space\ndependency ",{"type":10,"tag":31,"props":473,"children":475},{"type":474},"may",[],{"type":16,"value":477}," be merged into a single tiled rendering pass, keeping the\nattachment data on-chip for the duration of a render pass instance.\nHowever, it is also quite common for a render pass to only contain a single\nsubpass.",{"type":10,"tag":18,"props":479,"children":480},{},[481,486,488,494],{"type":10,"tag":38,"props":482,"children":483},{},[484],{"type":16,"value":485},"Subpass dependencies",{"type":16,"value":487}," describe ",{"type":10,"tag":22,"props":489,"children":491},{"href":490},"/chapters/synchronization#synchronization-dependencies",[492],{"type":16,"value":493},"execution\nand memory dependencies",{"type":16,"value":495}," between subpasses.",{"type":10,"tag":18,"props":497,"children":498},{},[499,500,505],{"type":16,"value":243},{"type":10,"tag":38,"props":501,"children":502},{},[503],{"type":16,"value":504},"subpass dependency chain",{"type":16,"value":506}," is a sequence of subpass dependencies in a\nrender pass, where the source subpass of each subpass dependency (after the\nfirst) equals the destination subpass of the previous dependency.",{"type":10,"tag":18,"props":508,"children":509},{},[510,512,515,517,523,525,531,533,539,541,547],{"type":16,"value":511},"Execution of subpasses ",{"type":10,"tag":31,"props":513,"children":514},{"type":474},[],{"type":16,"value":516}," overlap or execute out of order with regards to\nother subpasses, unless otherwise enforced by an execution dependency.\nEach subpass only respects ",{"type":10,"tag":22,"props":518,"children":520},{"href":519},"/chapters/synchronization#synchronization-submission-order",[521],{"type":16,"value":522},"submission\norder",{"type":16,"value":524}," for commands recorded in the same subpass, and the\n",{"type":10,"tag":22,"props":526,"children":528},{"href":527},"/man/vkCmdBeginRenderPass",[529],{"type":16,"value":530},"vkCmdBeginRenderPass",{"type":16,"value":532}," and ",{"type":10,"tag":22,"props":534,"children":536},{"href":535},"/man/vkCmdEndRenderPass",[537],{"type":16,"value":538},"vkCmdEndRenderPass",{"type":16,"value":540}," commands that\ndelimit the render pass - commands within other subpasses are not included.\nThis affects most other ",{"type":10,"tag":22,"props":542,"children":544},{"href":543},"/chapters/synchronization#synchronization-implicit",[545],{"type":16,"value":546},"implicit ordering\nguarantees",{"type":16,"value":458},{"type":10,"tag":18,"props":549,"children":550},{},[551,553,559,561,567],{"type":16,"value":552},"A render pass describes the structure of subpasses and attachments\nindependent of any specific image views for the attachments.\nThe specific image views that will be used for the attachments, and their\ndimensions, are specified in ",{"type":10,"tag":353,"props":554,"children":556},{"className":555},[],[557],{"type":16,"value":558},"VkFramebuffer",{"type":16,"value":560}," objects.\nFramebuffers are created with respect to a specific render pass that the\nframebuffer is compatible with (see ",{"type":10,"tag":22,"props":562,"children":564},{"href":563},"/chapters/renderpass#renderpass-compatibility",[565],{"type":16,"value":566},"Render Pass\nCompatibility",{"type":16,"value":568},").\nCollectively, a render pass and a framebuffer define the complete render\ntarget state for one or more subpasses as well as the algorithmic\ndependencies between the subpasses.",{"type":10,"tag":18,"props":570,"children":571},{},[572,574,577,579,585,587,593],{"type":16,"value":573},"The various pipeline stages of the drawing commands for a given subpass ",{"type":10,"tag":31,"props":575,"children":576},{"type":474},[],{"type":16,"value":578},"\nexecute concurrently and/or out of order, both within and across drawing\ncommands, whilst still respecting ",{"type":10,"tag":22,"props":580,"children":582},{"href":581},"/chapters/synchronization#synchronization-pipeline-stages-order",[583],{"type":16,"value":584},"pipeline order",{"type":16,"value":586},".\nHowever for a given (x,y,layer,sample) sample location, certain per-sample\noperations are performed in ",{"type":10,"tag":22,"props":588,"children":590},{"href":589},"/chapters/primsrast#primsrast-order",[591],{"type":16,"value":592},"rasterization order",{"type":16,"value":458},{"type":10,"tag":53,"props":595,"children":598},{"name":596,"type":597},"VK\\_ATTACHMENT\\_UNUSED","consts",[599],{"type":10,"tag":18,"props":600,"children":601},{},[602],{"type":16,"value":603},"Unused attachment sentinel",{"type":10,"tag":206,"props":605,"children":607},{"id":606},"renderpass-creation",[608],{"type":16,"value":609},"Render Pass Creation",{"type":10,"tag":53,"props":611,"children":613},{"name":612,"type":56},"vkCreateRenderPass",[614],{"type":10,"tag":18,"props":615,"children":616},{},[617],{"type":16,"value":618},"Create a new render pass object",{"type":10,"tag":53,"props":620,"children":622},{"name":621,"type":66},"VkRenderPassCreateInfo",[623],{"type":10,"tag":18,"props":624,"children":625},{},[626],{"type":16,"value":627},"Structure specifying parameters of a newly created render pass",{"type":10,"tag":53,"props":629,"children":631},{"name":630,"type":76},"VkRenderPassCreateFlagBits",[632],{"type":10,"tag":18,"props":633,"children":634},{},[635],{"type":16,"value":636},"Bitmask specifying additional properties of a render pass",{"type":10,"tag":53,"props":638,"children":640},{"name":639,"type":86},"VkRenderPassCreateFlags",[641],{"type":10,"tag":18,"props":642,"children":643},{},[644],{"type":16,"value":645},"Bitmask of VkRenderPassCreateFlagBits",{"type":10,"tag":235,"props":647,"children":649},{"id":648},"renderpass-multiview",[],{"type":10,"tag":53,"props":651,"children":653},{"name":652,"type":66},"VkRenderPassMultiviewCreateInfo",[654],{"type":10,"tag":18,"props":655,"children":656},{},[657],{"type":16,"value":658},"Structure containing multiview information for all subpasses",{"type":10,"tag":53,"props":660,"children":662},{"name":661,"type":66},"VkMultiviewPerViewAttributesInfoNVX",[663],{"type":10,"tag":18,"props":664,"children":665},{},[666],{"type":16,"value":667},"Structure specifying the multiview per-attribute properties",{"type":10,"tag":235,"props":669,"children":671},{"id":670},"renderpass-fragmentdensitymapattachment",[],{"type":10,"tag":53,"props":673,"children":675},{"name":674,"type":66},"VkRenderPassFragmentDensityMapCreateInfoEXT",[676],{"type":10,"tag":18,"props":677,"children":678},{},[679],{"type":16,"value":680},"Structure containing fragment density map attachment for render pass",{"type":10,"tag":53,"props":682,"children":684},{"name":683,"type":66},"VkAttachmentDescription",[685],{"type":10,"tag":18,"props":686,"children":687},{},[688],{"type":16,"value":689},"Structure specifying an attachment description",{"type":10,"tag":53,"props":691,"children":693},{"name":692,"type":76},"VkAttachmentDescriptionFlagBits",[694],{"type":10,"tag":18,"props":695,"children":696},{},[697],{"type":16,"value":698},"Bitmask specifying additional properties of an attachment",{"type":10,"tag":53,"props":700,"children":702},{"name":701,"type":86},"VkAttachmentDescriptionFlags",[703],{"type":10,"tag":18,"props":704,"children":705},{},[706],{"type":16,"value":707},"Bitmask of VkAttachmentDescriptionFlagBits",{"type":10,"tag":53,"props":709,"children":711},{"name":710,"type":66},"VkRenderPassInputAttachmentAspectCreateInfo",[712],{"type":10,"tag":18,"props":713,"children":714},{},[715,717,720],{"type":16,"value":716},"Structure specifying, for a given subpass/input attachment pair, which aspect ",{"type":10,"tag":31,"props":718,"children":719},{"type":264},[],{"type":16,"value":721}," be read.",{"type":10,"tag":53,"props":723,"children":725},{"name":724,"type":66},"VkInputAttachmentAspectReference",[726],{"type":10,"tag":18,"props":727,"children":728},{},[729,731,734],{"type":16,"value":730},"Structure specifying a subpass/input attachment pair and an aspect mask that ",{"type":10,"tag":31,"props":732,"children":733},{"type":264},[],{"type":16,"value":721},{"type":10,"tag":53,"props":736,"children":737},{"name":419,"type":66},[738],{"type":10,"tag":18,"props":739,"children":740},{},[741],{"type":16,"value":742},"Structure specifying a subpass description",{"type":10,"tag":53,"props":744,"children":746},{"name":745,"type":76},"VkSubpassDescriptionFlagBits",[747],{"type":10,"tag":18,"props":748,"children":749},{},[750],{"type":16,"value":751},"Bitmask specifying usage of a subpass",{"type":10,"tag":53,"props":753,"children":755},{"name":754,"type":86},"VkSubpassDescriptionFlags",[756],{"type":10,"tag":18,"props":757,"children":758},{},[759],{"type":16,"value":760},"Bitmask of VkSubpassDescriptionFlagBits",{"type":10,"tag":53,"props":762,"children":764},{"name":763,"type":66},"VkAttachmentReference",[765],{"type":10,"tag":18,"props":766,"children":767},{},[768],{"type":16,"value":769},"Structure specifying an attachment reference",{"type":10,"tag":53,"props":771,"children":773},{"name":772,"type":597},"VK\\_SUBPASS\\_EXTERNAL",[774],{"type":10,"tag":18,"props":775,"children":776},{},[777],{"type":16,"value":778},"Subpass index sentinel expanding synchronization scope outside a subpass",{"type":10,"tag":53,"props":780,"children":782},{"name":781,"type":66},"VkSubpassDependency",[783],{"type":10,"tag":18,"props":784,"children":785},{},[786],{"type":16,"value":787},"Structure specifying a subpass dependency",{"type":10,"tag":18,"props":789,"children":790},{},[791,793,796,798,801,803,809],{"type":16,"value":792},"When multiview is enabled, the execution of the multiple views of one\nsubpass ",{"type":10,"tag":31,"props":794,"children":795},{"type":474},[],{"type":16,"value":797}," not occur simultaneously or even back-to-back, and rather ",{"type":10,"tag":31,"props":799,"children":800},{"type":474},[],{"type":16,"value":802},"\nbe interleaved with the execution of other subpasses.\nThe load and store operations apply to attachments on a per-view basis.\nFor example, an attachment using ",{"type":10,"tag":353,"props":804,"children":806},{"className":805},[],[807],{"type":16,"value":808},"VK_ATTACHMENT_LOAD_OP_CLEAR",{"type":16,"value":810}," will have\neach view cleared on first use, but the first use of one view may be\ntemporally distant from the first use of another view.",{"type":10,"tag":165,"props":812,"children":813},{},[814,827],{"type":10,"tag":18,"props":815,"children":816},{},[817,819,825],{"type":16,"value":818},"A good mental model for multiview is to think of a multiview subpass as if\nit were a collection of individual (per-view) subpasses that are logically\ngrouped together and described as a single multiview subpass in the API.\nSimilarly, a multiview attachment can be thought of like several individual\nattachments that happen to be layers in a single image.\nA view-local dependency between two multiview subpasses acts like a set of\none-to-one dependencies between corresponding pairs of per-view subpasses.\nA view-global dependency between two multiview subpasses acts like a set of\nN × M dependencies between all pairs of per-view subpasses in\nthe source and destination.\nThus, it is a more compact representation which also makes clear the\ncommonality and reuse that is present between views in a subpass.\nThis interpretation motivates the answers to questions like ",{"type":10,"tag":353,"props":820,"children":822},{"className":821},[],[823],{"type":16,"value":824},"when does the load op apply",{"type":16,"value":826}," - it is on the first use of each view of an attachment, as\nif each view was a separate attachment.",{"type":10,"tag":18,"props":828,"children":829},{},[830,832,838],{"type":16,"value":831},"The content of each view follows the description in\n",{"type":10,"tag":22,"props":833,"children":835},{"href":834},"/man/VkSubpassDescription#renderpass-attachment-contents",[836],{"type":16,"value":837},"attachment content behavior",{"type":16,"value":839},".\nIn particular, if an attachment is preserved, all views within the\nattachment are preserved.",{"type":10,"tag":18,"props":841,"children":842},{},[843,845,848],{"type":16,"value":844},"If any two subpasses of a render pass activate transform feedback to the\nsame bound transform feedback buffers, a subpass dependency ",{"type":10,"tag":31,"props":846,"children":847},{"type":33},[],{"type":16,"value":849}," be\nincluded (either directly or via some intermediate subpasses) between them.",{"type":10,"tag":235,"props":851,"children":853},{"id":852},"renderpass-implicit-dependencies",[],{"type":10,"tag":18,"props":855,"children":856},{},[857,859,865,867,872,874,880],{"type":16,"value":858},"If there is no subpass dependency from ",{"type":10,"tag":353,"props":860,"children":862},{"className":861},[],[863],{"type":16,"value":864},"VK_SUBPASS_EXTERNAL",{"type":16,"value":866}," to the\nfirst subpass that uses an attachment, then an implicit subpass dependency\nexists from ",{"type":10,"tag":353,"props":868,"children":870},{"className":869},[],[871],{"type":16,"value":864},{"type":16,"value":873}," to the first subpass it is used in.\nThe implicit subpass dependency only exists if there exists an automatic\nlayout transition away from ",{"type":10,"tag":353,"props":875,"children":877},{"className":876},[],[878],{"type":16,"value":879},"initialLayout",{"type":16,"value":881},".\nThe subpass dependency operates as if defined with the following parameters:",{"type":10,"tag":883,"props":884,"children":889},"pre",{"className":885,"code":886,"language":887,"meta":888,"style":888},"language-c shiki shiki-themes github-light-default github-dark-default","VkSubpassDependency implicitDependency = {\n .srcSubpass = VK_SUBPASS_EXTERNAL,\n .dstSubpass = firstSubpass, // First subpass attachment is used in\n .srcStageMask = VK_PIPELINE_STAGE_NONE,\n .dstStageMask = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,\n .srcAccessMask = 0,\n .dstAccessMask = VK_ACCESS_INPUT_ATTACHMENT_READ_BIT |\n VK_ACCESS_COLOR_ATTACHMENT_READ_BIT |\n VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT |\n VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT |\n VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,\n .dependencyFlags = 0\n};\n","c","",[890],{"type":10,"tag":353,"props":891,"children":892},{"__ignoreMap":888},[893,916,934,958,976,994,1017,1040,1053,1066,1079,1088,1106],{"type":10,"tag":894,"props":895,"children":898},"span",{"class":896,"line":897},"line",1,[899,905,911],{"type":10,"tag":894,"props":900,"children":902},{"style":901},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[903],{"type":16,"value":904},"VkSubpassDependency implicitDependency ",{"type":10,"tag":894,"props":906,"children":908},{"style":907},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[909],{"type":16,"value":910},"=",{"type":10,"tag":894,"props":912,"children":913},{"style":901},[914],{"type":16,"value":915}," {\n",{"type":10,"tag":894,"props":917,"children":919},{"class":896,"line":918},2,[920,925,929],{"type":10,"tag":894,"props":921,"children":922},{"style":901},[923],{"type":16,"value":924}," .srcSubpass ",{"type":10,"tag":894,"props":926,"children":927},{"style":907},[928],{"type":16,"value":910},{"type":10,"tag":894,"props":930,"children":931},{"style":901},[932],{"type":16,"value":933}," VK_SUBPASS_EXTERNAL,\n",{"type":10,"tag":894,"props":935,"children":937},{"class":896,"line":936},3,[938,943,947,952],{"type":10,"tag":894,"props":939,"children":940},{"style":901},[941],{"type":16,"value":942}," .dstSubpass ",{"type":10,"tag":894,"props":944,"children":945},{"style":907},[946],{"type":16,"value":910},{"type":10,"tag":894,"props":948,"children":949},{"style":901},[950],{"type":16,"value":951}," firstSubpass,",{"type":10,"tag":894,"props":953,"children":955},{"style":954},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[956],{"type":16,"value":957}," // First subpass attachment is used in\n",{"type":10,"tag":894,"props":959,"children":961},{"class":896,"line":960},4,[962,967,971],{"type":10,"tag":894,"props":963,"children":964},{"style":901},[965],{"type":16,"value":966}," .srcStageMask ",{"type":10,"tag":894,"props":968,"children":969},{"style":907},[970],{"type":16,"value":910},{"type":10,"tag":894,"props":972,"children":973},{"style":901},[974],{"type":16,"value":975}," VK_PIPELINE_STAGE_NONE,\n",{"type":10,"tag":894,"props":977,"children":979},{"class":896,"line":978},5,[980,985,989],{"type":10,"tag":894,"props":981,"children":982},{"style":901},[983],{"type":16,"value":984}," .dstStageMask ",{"type":10,"tag":894,"props":986,"children":987},{"style":907},[988],{"type":16,"value":910},{"type":10,"tag":894,"props":990,"children":991},{"style":901},[992],{"type":16,"value":993}," VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,\n",{"type":10,"tag":894,"props":995,"children":997},{"class":896,"line":996},6,[998,1003,1007,1013],{"type":10,"tag":894,"props":999,"children":1000},{"style":901},[1001],{"type":16,"value":1002}," .srcAccessMask ",{"type":10,"tag":894,"props":1004,"children":1005},{"style":907},[1006],{"type":16,"value":910},{"type":10,"tag":894,"props":1008,"children":1010},{"style":1009},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[1011],{"type":16,"value":1012}," 0",{"type":10,"tag":894,"props":1014,"children":1015},{"style":901},[1016],{"type":16,"value":368},{"type":10,"tag":894,"props":1018,"children":1020},{"class":896,"line":1019},7,[1021,1026,1030,1035],{"type":10,"tag":894,"props":1022,"children":1023},{"style":901},[1024],{"type":16,"value":1025}," .dstAccessMask ",{"type":10,"tag":894,"props":1027,"children":1028},{"style":907},[1029],{"type":16,"value":910},{"type":10,"tag":894,"props":1031,"children":1032},{"style":901},[1033],{"type":16,"value":1034}," VK_ACCESS_INPUT_ATTACHMENT_READ_BIT ",{"type":10,"tag":894,"props":1036,"children":1037},{"style":907},[1038],{"type":16,"value":1039},"|\n",{"type":10,"tag":894,"props":1041,"children":1043},{"class":896,"line":1042},8,[1044,1049],{"type":10,"tag":894,"props":1045,"children":1046},{"style":901},[1047],{"type":16,"value":1048}," VK_ACCESS_COLOR_ATTACHMENT_READ_BIT ",{"type":10,"tag":894,"props":1050,"children":1051},{"style":907},[1052],{"type":16,"value":1039},{"type":10,"tag":894,"props":1054,"children":1056},{"class":896,"line":1055},9,[1057,1062],{"type":10,"tag":894,"props":1058,"children":1059},{"style":901},[1060],{"type":16,"value":1061}," VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT ",{"type":10,"tag":894,"props":1063,"children":1064},{"style":907},[1065],{"type":16,"value":1039},{"type":10,"tag":894,"props":1067,"children":1069},{"class":896,"line":1068},10,[1070,1075],{"type":10,"tag":894,"props":1071,"children":1072},{"style":901},[1073],{"type":16,"value":1074}," VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT ",{"type":10,"tag":894,"props":1076,"children":1077},{"style":907},[1078],{"type":16,"value":1039},{"type":10,"tag":894,"props":1080,"children":1082},{"class":896,"line":1081},11,[1083],{"type":10,"tag":894,"props":1084,"children":1085},{"style":901},[1086],{"type":16,"value":1087}," VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,\n",{"type":10,"tag":894,"props":1089,"children":1091},{"class":896,"line":1090},12,[1092,1097,1101],{"type":10,"tag":894,"props":1093,"children":1094},{"style":901},[1095],{"type":16,"value":1096}," .dependencyFlags ",{"type":10,"tag":894,"props":1098,"children":1099},{"style":907},[1100],{"type":16,"value":910},{"type":10,"tag":894,"props":1102,"children":1103},{"style":1009},[1104],{"type":16,"value":1105}," 0\n",{"type":10,"tag":894,"props":1107,"children":1109},{"class":896,"line":1108},13,[1110],{"type":10,"tag":894,"props":1111,"children":1112},{"style":901},[1113],{"type":16,"value":1114},"};\n",{"type":10,"tag":18,"props":1116,"children":1117},{},[1118,1120,1125,1127,1132,1134,1140],{"type":16,"value":1119},"Similarly, if there is no subpass dependency from the last subpass that uses\nan attachment to ",{"type":10,"tag":353,"props":1121,"children":1123},{"className":1122},[],[1124],{"type":16,"value":864},{"type":16,"value":1126},", then an implicit subpass\ndependency exists from the last subpass it is used in to\n",{"type":10,"tag":353,"props":1128,"children":1130},{"className":1129},[],[1131],{"type":16,"value":864},{"type":16,"value":1133},".\nThe implicit subpass dependency only exists if there exists an automatic\nlayout transition into ",{"type":10,"tag":353,"props":1135,"children":1137},{"className":1136},[],[1138],{"type":16,"value":1139},"finalLayout",{"type":16,"value":881},{"type":10,"tag":883,"props":1142,"children":1144},{"className":885,"code":1143,"language":887,"meta":888,"style":888},"VkSubpassDependency implicitDependency = {\n .srcSubpass = lastSubpass, // Last subpass attachment is used in\n .dstSubpass = VK_SUBPASS_EXTERNAL,\n .srcStageMask = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,\n .dstStageMask = VK_PIPELINE_STAGE_NONE,\n .srcAccessMask = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT |\n VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,\n .dstAccessMask = 0,\n .dependencyFlags = 0\n};\n",[1145],{"type":10,"tag":353,"props":1146,"children":1147},{"__ignoreMap":888},[1148,1163,1184,1199,1214,1229,1249,1256,1275,1290],{"type":10,"tag":894,"props":1149,"children":1150},{"class":896,"line":897},[1151,1155,1159],{"type":10,"tag":894,"props":1152,"children":1153},{"style":901},[1154],{"type":16,"value":904},{"type":10,"tag":894,"props":1156,"children":1157},{"style":907},[1158],{"type":16,"value":910},{"type":10,"tag":894,"props":1160,"children":1161},{"style":901},[1162],{"type":16,"value":915},{"type":10,"tag":894,"props":1164,"children":1165},{"class":896,"line":918},[1166,1170,1174,1179],{"type":10,"tag":894,"props":1167,"children":1168},{"style":901},[1169],{"type":16,"value":924},{"type":10,"tag":894,"props":1171,"children":1172},{"style":907},[1173],{"type":16,"value":910},{"type":10,"tag":894,"props":1175,"children":1176},{"style":901},[1177],{"type":16,"value":1178}," lastSubpass,",{"type":10,"tag":894,"props":1180,"children":1181},{"style":954},[1182],{"type":16,"value":1183}," // Last subpass attachment is used in\n",{"type":10,"tag":894,"props":1185,"children":1186},{"class":896,"line":936},[1187,1191,1195],{"type":10,"tag":894,"props":1188,"children":1189},{"style":901},[1190],{"type":16,"value":942},{"type":10,"tag":894,"props":1192,"children":1193},{"style":907},[1194],{"type":16,"value":910},{"type":10,"tag":894,"props":1196,"children":1197},{"style":901},[1198],{"type":16,"value":933},{"type":10,"tag":894,"props":1200,"children":1201},{"class":896,"line":960},[1202,1206,1210],{"type":10,"tag":894,"props":1203,"children":1204},{"style":901},[1205],{"type":16,"value":966},{"type":10,"tag":894,"props":1207,"children":1208},{"style":907},[1209],{"type":16,"value":910},{"type":10,"tag":894,"props":1211,"children":1212},{"style":901},[1213],{"type":16,"value":993},{"type":10,"tag":894,"props":1215,"children":1216},{"class":896,"line":978},[1217,1221,1225],{"type":10,"tag":894,"props":1218,"children":1219},{"style":901},[1220],{"type":16,"value":984},{"type":10,"tag":894,"props":1222,"children":1223},{"style":907},[1224],{"type":16,"value":910},{"type":10,"tag":894,"props":1226,"children":1227},{"style":901},[1228],{"type":16,"value":975},{"type":10,"tag":894,"props":1230,"children":1231},{"class":896,"line":996},[1232,1236,1240,1245],{"type":10,"tag":894,"props":1233,"children":1234},{"style":901},[1235],{"type":16,"value":1002},{"type":10,"tag":894,"props":1237,"children":1238},{"style":907},[1239],{"type":16,"value":910},{"type":10,"tag":894,"props":1241,"children":1242},{"style":901},[1243],{"type":16,"value":1244}," VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT ",{"type":10,"tag":894,"props":1246,"children":1247},{"style":907},[1248],{"type":16,"value":1039},{"type":10,"tag":894,"props":1250,"children":1251},{"class":896,"line":1019},[1252],{"type":10,"tag":894,"props":1253,"children":1254},{"style":901},[1255],{"type":16,"value":1087},{"type":10,"tag":894,"props":1257,"children":1258},{"class":896,"line":1042},[1259,1263,1267,1271],{"type":10,"tag":894,"props":1260,"children":1261},{"style":901},[1262],{"type":16,"value":1025},{"type":10,"tag":894,"props":1264,"children":1265},{"style":907},[1266],{"type":16,"value":910},{"type":10,"tag":894,"props":1268,"children":1269},{"style":1009},[1270],{"type":16,"value":1012},{"type":10,"tag":894,"props":1272,"children":1273},{"style":901},[1274],{"type":16,"value":368},{"type":10,"tag":894,"props":1276,"children":1277},{"class":896,"line":1055},[1278,1282,1286],{"type":10,"tag":894,"props":1279,"children":1280},{"style":901},[1281],{"type":16,"value":1096},{"type":10,"tag":894,"props":1283,"children":1284},{"style":907},[1285],{"type":16,"value":910},{"type":10,"tag":894,"props":1287,"children":1288},{"style":1009},[1289],{"type":16,"value":1105},{"type":10,"tag":894,"props":1291,"children":1292},{"class":896,"line":1068},[1293],{"type":10,"tag":894,"props":1294,"children":1295},{"style":901},[1296],{"type":16,"value":1114},{"type":10,"tag":235,"props":1298,"children":1300},{"id":1299},"renderpass-layout-transitions",[],{"type":10,"tag":18,"props":1302,"children":1303},{},[1304,1306,1309,1311,1315,1317,1320,1322,1325,1327,1330],{"type":16,"value":1305},"As subpasses ",{"type":10,"tag":31,"props":1307,"children":1308},{"type":474},[],{"type":16,"value":1310}," overlap or execute out of order with regards to other\nsubpasses unless a subpass dependency chain describes otherwise, the layout\ntransitions required between subpasses ",{"type":10,"tag":31,"props":1312,"children":1314},{"type":1313},"cannot",[],{"type":16,"value":1316}," be known to an application.\nInstead, an application provides the layout that each attachment ",{"type":10,"tag":31,"props":1318,"children":1319},{"type":33},[],{"type":16,"value":1321}," be in\nat the start and end of a render pass, and the layout it ",{"type":10,"tag":31,"props":1323,"children":1324},{"type":33},[],{"type":16,"value":1326}," be in during\neach subpass it is used in.\nThe implementation then ",{"type":10,"tag":31,"props":1328,"children":1329},{"type":33},[],{"type":16,"value":1331}," execute layout transitions between subpasses\nin order to guarantee that the images are in the layouts required by each\nsubpass, and in the final layout at the end of the render pass.",{"type":10,"tag":18,"props":1333,"children":1334},{},[1335,1337,1343,1344,1350],{"type":16,"value":1336},"Automatic layout transitions apply to the entire image subresource attached\nto the framebuffer.\nIf\nmultiview is not enabled and\nthe attachment is a view of a 1D or 2D image, the automatic layout\ntransitions apply to the number of layers specified by\n",{"type":10,"tag":22,"props":1338,"children":1340},{"href":1339},"/man/VkFramebufferCreateInfo",[1341],{"type":16,"value":1342},"VkFramebufferCreateInfo",{"type":16,"value":383},{"type":10,"tag":353,"props":1345,"children":1347},{"className":1346},[],[1348],{"type":16,"value":1349},"layers",{"type":16,"value":1351},".\nIf multiview is enabled and the attachment is a view of a 1D or 2D image,\nthe automatic layout transitions apply to the layers corresponding to views\nwhich are used by some subpass in the render pass, even if that subpass does\nnot reference the given attachment.\nIf the attachment view is a 2D or 2D array view of a 3D image, even if the\nattachment view only refers to a subset of the slices of the selected mip\nlevel of the 3D image, automatic layout transitions apply to the entire\nsubresource referenced which is the entire mip level in this case.",{"type":10,"tag":18,"props":1353,"children":1354},{},[1355,1357,1363],{"type":16,"value":1356},"Automatic layout transitions away from the layout used in a subpass\nhappen-after the availability operations for all dependencies with that\nsubpass as the ",{"type":10,"tag":353,"props":1358,"children":1360},{"className":1359},[],[1361],{"type":16,"value":1362},"srcSubpass",{"type":16,"value":458},{"type":10,"tag":18,"props":1365,"children":1366},{},[1367,1369,1375],{"type":16,"value":1368},"Automatic layout transitions into the layout used in a subpass happen-before\nthe visibility operations for all dependencies with that subpass as the\n",{"type":10,"tag":353,"props":1370,"children":1372},{"className":1371},[],[1373],{"type":16,"value":1374},"dstSubpass",{"type":16,"value":458},{"type":10,"tag":18,"props":1377,"children":1378},{},[1379,1381,1386,1388,1393,1395,1400,1402,1407,1409,1415,1417,1422,1423,1428,1429,1434,1435,1440],{"type":16,"value":1380},"Automatic layout transitions away from ",{"type":10,"tag":353,"props":1382,"children":1384},{"className":1383},[],[1385],{"type":16,"value":879},{"type":16,"value":1387}," happen-after the\navailability operations for all dependencies with a ",{"type":10,"tag":353,"props":1389,"children":1391},{"className":1390},[],[1392],{"type":16,"value":1362},{"type":16,"value":1394}," equal\nto ",{"type":10,"tag":353,"props":1396,"children":1398},{"className":1397},[],[1399],{"type":16,"value":864},{"type":16,"value":1401},", where ",{"type":10,"tag":353,"props":1403,"children":1405},{"className":1404},[],[1406],{"type":16,"value":1374},{"type":16,"value":1408}," uses the attachment\nthat will be transitioned.\nFor attachments created with ",{"type":10,"tag":353,"props":1410,"children":1412},{"className":1411},[],[1413],{"type":16,"value":1414},"VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT",{"type":16,"value":1416},",\nautomatic layout transitions away from ",{"type":10,"tag":353,"props":1418,"children":1420},{"className":1419},[],[1421],{"type":16,"value":879},{"type":16,"value":1387},{"type":10,"tag":353,"props":1424,"children":1426},{"className":1425},[],[1427],{"type":16,"value":1362},{"type":16,"value":1394},{"type":10,"tag":353,"props":1430,"children":1432},{"className":1431},[],[1433],{"type":16,"value":864},{"type":16,"value":1401},{"type":10,"tag":353,"props":1436,"children":1438},{"className":1437},[],[1439],{"type":16,"value":1374},{"type":16,"value":1441}," uses any aliased\nattachment.",{"type":10,"tag":18,"props":1443,"children":1444},{},[1445,1447,1452,1454,1459,1461,1466,1467,1472,1474,1479,1481,1486,1487,1492,1493,1498,1499,1504],{"type":16,"value":1446},"Automatic layout transitions into ",{"type":10,"tag":353,"props":1448,"children":1450},{"className":1449},[],[1451],{"type":16,"value":1139},{"type":16,"value":1453}," happen-before the\nvisibility operations for all dependencies with a ",{"type":10,"tag":353,"props":1455,"children":1457},{"className":1456},[],[1458],{"type":16,"value":1374},{"type":16,"value":1460}," equal to\n",{"type":10,"tag":353,"props":1462,"children":1464},{"className":1463},[],[1465],{"type":16,"value":864},{"type":16,"value":1401},{"type":10,"tag":353,"props":1468,"children":1470},{"className":1469},[],[1471],{"type":16,"value":1362},{"type":16,"value":1473}," uses the attachment that\nwill be transitioned.\nFor attachments created with ",{"type":10,"tag":353,"props":1475,"children":1477},{"className":1476},[],[1478],{"type":16,"value":1414},{"type":16,"value":1480},",\nautomatic layout transitions into ",{"type":10,"tag":353,"props":1482,"children":1484},{"className":1483},[],[1485],{"type":16,"value":1139},{"type":16,"value":1453},{"type":10,"tag":353,"props":1488,"children":1490},{"className":1489},[],[1491],{"type":16,"value":1374},{"type":16,"value":1460},{"type":10,"tag":353,"props":1494,"children":1496},{"className":1495},[],[1497],{"type":16,"value":864},{"type":16,"value":1401},{"type":10,"tag":353,"props":1500,"children":1502},{"className":1501},[],[1503],{"type":16,"value":1362},{"type":16,"value":1441},{"type":10,"tag":18,"props":1506,"children":1507},{},[1508,1510,1516,1518,1524],{"type":16,"value":1509},"The image layout of the depth aspect of a depth/stencil attachment referring\nto an image created with\n",{"type":10,"tag":353,"props":1511,"children":1513},{"className":1512},[],[1514],{"type":16,"value":1515},"VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT",{"type":16,"value":1517}," is dependent\non the last sample locations used to render to the attachment, thus\nautomatic layout transitions use the sample locations state specified in\n",{"type":10,"tag":22,"props":1519,"children":1521},{"href":1520},"/man/VkRenderPassSampleLocationsBeginInfoEXT",[1522],{"type":16,"value":1523},"VkRenderPassSampleLocationsBeginInfoEXT",{"type":16,"value":458},{"type":10,"tag":18,"props":1526,"children":1527},{},[1528,1530,1535,1537,1543,1545,1550,1551,1557,1559,1565,1567,1572,1573,1578,1579,1585,1586,1592],{"type":16,"value":1529},"Automatic layout transitions of an attachment referring to a depth/stencil\nimage created with\n",{"type":10,"tag":353,"props":1531,"children":1533},{"className":1532},[],[1534],{"type":16,"value":1515},{"type":16,"value":1536}," use the\nsample locations the image subresource range referenced by the attachment\nwas last rendered with.\nIf the current render pass does not use the attachment as a depth/stencil\nattachment in any subpass that happens-before, the automatic layout\ntransition uses the sample locations state specified in the\n",{"type":10,"tag":353,"props":1538,"children":1540},{"className":1539},[],[1541],{"type":16,"value":1542},"sampleLocationsInfo",{"type":16,"value":1544}," member of the element of the\n",{"type":10,"tag":353,"props":1546,"children":1548},{"className":1547},[],[1549],{"type":16,"value":1523},{"type":16,"value":383},{"type":10,"tag":353,"props":1552,"children":1554},{"className":1553},[],[1555],{"type":16,"value":1556},"pAttachmentInitialSampleLocations",{"type":16,"value":1558},"\narray for which the ",{"type":10,"tag":353,"props":1560,"children":1562},{"className":1561},[],[1563],{"type":16,"value":1564},"attachmentIndex",{"type":16,"value":1566}," member equals the attachment index\nof the attachment, if one is specified.\nOtherwise, the automatic layout transition uses the sample locations state\nspecified in the ",{"type":10,"tag":353,"props":1568,"children":1570},{"className":1569},[],[1571],{"type":16,"value":1542},{"type":16,"value":1544},{"type":10,"tag":353,"props":1574,"children":1576},{"className":1575},[],[1577],{"type":16,"value":1523},{"type":16,"value":383},{"type":10,"tag":353,"props":1580,"children":1582},{"className":1581},[],[1583],{"type":16,"value":1584},"pPostSubpassSampleLocations",{"type":16,"value":1558},{"type":10,"tag":353,"props":1587,"children":1589},{"className":1588},[],[1590],{"type":16,"value":1591},"subpassIndex",{"type":16,"value":1593}," member equals the index of the\nsubpass that last used the attachment as a depth/stencil attachment, if one\nis specified.",{"type":10,"tag":18,"props":1595,"children":1596},{},[1597,1599,1604,1606,1612],{"type":16,"value":1598},"If no sample locations state has been specified for an automatic layout\ntransition performed on an attachment referring to a depth/stencil image\ncreated with ",{"type":10,"tag":353,"props":1600,"children":1602},{"className":1601},[],[1603],{"type":16,"value":1515},{"type":16,"value":1605},"\nthe contents of the depth aspect of the depth/stencil attachment become\nundefined: as if the layout of the attachment was transitioned from the\n",{"type":10,"tag":353,"props":1607,"children":1609},{"className":1608},[],[1610],{"type":16,"value":1611},"VK_IMAGE_LAYOUT_UNDEFINED",{"type":16,"value":1613}," layout.",{"type":10,"tag":18,"props":1615,"children":1616},{},[1617,1619,1622],{"type":16,"value":1618},"If two subpasses use the same attachment, and both subpasses use the\nattachment in a read-only layout, no subpass dependency needs to be\nspecified between those subpasses.\nIf an implementation treats those layouts separately, it ",{"type":10,"tag":31,"props":1620,"children":1621},{"type":33},[],{"type":16,"value":1623}," insert an\nimplicit subpass dependency between those subpasses to separate the uses in\neach layout.\nThe subpass dependency operates as if defined with the following parameters:",{"type":10,"tag":883,"props":1625,"children":1627},{"className":885,"code":1626,"language":887,"meta":888,"style":888},"// Used for input attachments\nVkPipelineStageFlags inputAttachmentStages = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;\nVkAccessFlags inputAttachmentDstAccess = VK_ACCESS_INPUT_ATTACHMENT_READ_BIT;\n\n// Used for depth/stencil attachments\nVkPipelineStageFlags depthStencilAttachmentStages = VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT | VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT;\nVkAccessFlags depthStencilAttachmentDstAccess = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT;\n\nVkSubpassDependency implicitDependency = {\n .srcSubpass = firstSubpass;\n .dstSubpass = secondSubpass;\n .srcStageMask = inputAttachmentStages | depthStencilAttachmentStages;\n .dstStageMask = inputAttachmentStages | depthStencilAttachmentStages;\n .srcAccessMask = 0;\n .dstAccessMask = inputAttachmentDstAccess | depthStencilAttachmentDstAccess;\n .dependencyFlags = 0;\n};\n",[1628],{"type":10,"tag":353,"props":1629,"children":1630},{"__ignoreMap":888},[1631,1639,1656,1673,1682,1690,1717,1734,1741,1756,1772,1788,1813,1836,1857,1883,1903],{"type":10,"tag":894,"props":1632,"children":1633},{"class":896,"line":897},[1634],{"type":10,"tag":894,"props":1635,"children":1636},{"style":954},[1637],{"type":16,"value":1638},"// Used for input attachments\n",{"type":10,"tag":894,"props":1640,"children":1641},{"class":896,"line":918},[1642,1647,1651],{"type":10,"tag":894,"props":1643,"children":1644},{"style":901},[1645],{"type":16,"value":1646},"VkPipelineStageFlags inputAttachmentStages ",{"type":10,"tag":894,"props":1648,"children":1649},{"style":907},[1650],{"type":16,"value":910},{"type":10,"tag":894,"props":1652,"children":1653},{"style":901},[1654],{"type":16,"value":1655}," VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;\n",{"type":10,"tag":894,"props":1657,"children":1658},{"class":896,"line":936},[1659,1664,1668],{"type":10,"tag":894,"props":1660,"children":1661},{"style":901},[1662],{"type":16,"value":1663},"VkAccessFlags inputAttachmentDstAccess ",{"type":10,"tag":894,"props":1665,"children":1666},{"style":907},[1667],{"type":16,"value":910},{"type":10,"tag":894,"props":1669,"children":1670},{"style":901},[1671],{"type":16,"value":1672}," VK_ACCESS_INPUT_ATTACHMENT_READ_BIT;\n",{"type":10,"tag":894,"props":1674,"children":1675},{"class":896,"line":960},[1676],{"type":10,"tag":894,"props":1677,"children":1679},{"emptyLinePlaceholder":1678},true,[1680],{"type":16,"value":1681},"\n",{"type":10,"tag":894,"props":1683,"children":1684},{"class":896,"line":978},[1685],{"type":10,"tag":894,"props":1686,"children":1687},{"style":954},[1688],{"type":16,"value":1689},"// Used for depth/stencil attachments\n",{"type":10,"tag":894,"props":1691,"children":1692},{"class":896,"line":996},[1693,1698,1702,1707,1712],{"type":10,"tag":894,"props":1694,"children":1695},{"style":901},[1696],{"type":16,"value":1697},"VkPipelineStageFlags depthStencilAttachmentStages ",{"type":10,"tag":894,"props":1699,"children":1700},{"style":907},[1701],{"type":16,"value":910},{"type":10,"tag":894,"props":1703,"children":1704},{"style":901},[1705],{"type":16,"value":1706}," VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT ",{"type":10,"tag":894,"props":1708,"children":1709},{"style":907},[1710],{"type":16,"value":1711},"|",{"type":10,"tag":894,"props":1713,"children":1714},{"style":901},[1715],{"type":16,"value":1716}," VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT;\n",{"type":10,"tag":894,"props":1718,"children":1719},{"class":896,"line":1019},[1720,1725,1729],{"type":10,"tag":894,"props":1721,"children":1722},{"style":901},[1723],{"type":16,"value":1724},"VkAccessFlags depthStencilAttachmentDstAccess ",{"type":10,"tag":894,"props":1726,"children":1727},{"style":907},[1728],{"type":16,"value":910},{"type":10,"tag":894,"props":1730,"children":1731},{"style":901},[1732],{"type":16,"value":1733}," VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT;\n",{"type":10,"tag":894,"props":1735,"children":1736},{"class":896,"line":1042},[1737],{"type":10,"tag":894,"props":1738,"children":1739},{"emptyLinePlaceholder":1678},[1740],{"type":16,"value":1681},{"type":10,"tag":894,"props":1742,"children":1743},{"class":896,"line":1055},[1744,1748,1752],{"type":10,"tag":894,"props":1745,"children":1746},{"style":901},[1747],{"type":16,"value":904},{"type":10,"tag":894,"props":1749,"children":1750},{"style":907},[1751],{"type":16,"value":910},{"type":10,"tag":894,"props":1753,"children":1754},{"style":901},[1755],{"type":16,"value":915},{"type":10,"tag":894,"props":1757,"children":1758},{"class":896,"line":1068},[1759,1763,1767],{"type":10,"tag":894,"props":1760,"children":1761},{"style":901},[1762],{"type":16,"value":924},{"type":10,"tag":894,"props":1764,"children":1765},{"style":907},[1766],{"type":16,"value":910},{"type":10,"tag":894,"props":1768,"children":1769},{"style":901},[1770],{"type":16,"value":1771}," firstSubpass;\n",{"type":10,"tag":894,"props":1773,"children":1774},{"class":896,"line":1081},[1775,1779,1783],{"type":10,"tag":894,"props":1776,"children":1777},{"style":901},[1778],{"type":16,"value":942},{"type":10,"tag":894,"props":1780,"children":1781},{"style":907},[1782],{"type":16,"value":910},{"type":10,"tag":894,"props":1784,"children":1785},{"style":901},[1786],{"type":16,"value":1787}," secondSubpass;\n",{"type":10,"tag":894,"props":1789,"children":1790},{"class":896,"line":1090},[1791,1795,1799,1804,1808],{"type":10,"tag":894,"props":1792,"children":1793},{"style":901},[1794],{"type":16,"value":966},{"type":10,"tag":894,"props":1796,"children":1797},{"style":907},[1798],{"type":16,"value":910},{"type":10,"tag":894,"props":1800,"children":1801},{"style":901},[1802],{"type":16,"value":1803}," inputAttachmentStages ",{"type":10,"tag":894,"props":1805,"children":1806},{"style":907},[1807],{"type":16,"value":1711},{"type":10,"tag":894,"props":1809,"children":1810},{"style":901},[1811],{"type":16,"value":1812}," depthStencilAttachmentStages;\n",{"type":10,"tag":894,"props":1814,"children":1815},{"class":896,"line":1108},[1816,1820,1824,1828,1832],{"type":10,"tag":894,"props":1817,"children":1818},{"style":901},[1819],{"type":16,"value":984},{"type":10,"tag":894,"props":1821,"children":1822},{"style":907},[1823],{"type":16,"value":910},{"type":10,"tag":894,"props":1825,"children":1826},{"style":901},[1827],{"type":16,"value":1803},{"type":10,"tag":894,"props":1829,"children":1830},{"style":907},[1831],{"type":16,"value":1711},{"type":10,"tag":894,"props":1833,"children":1834},{"style":901},[1835],{"type":16,"value":1812},{"type":10,"tag":894,"props":1837,"children":1839},{"class":896,"line":1838},14,[1840,1844,1848,1852],{"type":10,"tag":894,"props":1841,"children":1842},{"style":901},[1843],{"type":16,"value":1002},{"type":10,"tag":894,"props":1845,"children":1846},{"style":907},[1847],{"type":16,"value":910},{"type":10,"tag":894,"props":1849,"children":1850},{"style":1009},[1851],{"type":16,"value":1012},{"type":10,"tag":894,"props":1853,"children":1854},{"style":901},[1855],{"type":16,"value":1856},";\n",{"type":10,"tag":894,"props":1858,"children":1860},{"class":896,"line":1859},15,[1861,1865,1869,1874,1878],{"type":10,"tag":894,"props":1862,"children":1863},{"style":901},[1864],{"type":16,"value":1025},{"type":10,"tag":894,"props":1866,"children":1867},{"style":907},[1868],{"type":16,"value":910},{"type":10,"tag":894,"props":1870,"children":1871},{"style":901},[1872],{"type":16,"value":1873}," inputAttachmentDstAccess ",{"type":10,"tag":894,"props":1875,"children":1876},{"style":907},[1877],{"type":16,"value":1711},{"type":10,"tag":894,"props":1879,"children":1880},{"style":901},[1881],{"type":16,"value":1882}," depthStencilAttachmentDstAccess;\n",{"type":10,"tag":894,"props":1884,"children":1886},{"class":896,"line":1885},16,[1887,1891,1895,1899],{"type":10,"tag":894,"props":1888,"children":1889},{"style":901},[1890],{"type":16,"value":1096},{"type":10,"tag":894,"props":1892,"children":1893},{"style":907},[1894],{"type":16,"value":910},{"type":10,"tag":894,"props":1896,"children":1897},{"style":1009},[1898],{"type":16,"value":1012},{"type":10,"tag":894,"props":1900,"children":1901},{"style":901},[1902],{"type":16,"value":1856},{"type":10,"tag":894,"props":1904,"children":1906},{"class":896,"line":1905},17,[1907],{"type":10,"tag":894,"props":1908,"children":1909},{"style":901},[1910],{"type":16,"value":1114},{"type":10,"tag":18,"props":1912,"children":1913},{},[1914,1916,1922,1924,1930,1932,1938,1939,1945,1947,1950],{"type":16,"value":1915},"When\ndrawing using ",{"type":10,"tag":22,"props":1917,"children":1919},{"href":1918},"/chapters/shaders#shaders-objects",[1920],{"type":16,"value":1921},"shader objects",{"type":16,"value":1923},",\nor when\nthe graphics pipeline is created with\n",{"type":10,"tag":353,"props":1925,"children":1927},{"className":1926},[],[1928],{"type":16,"value":1929},"VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT",{"type":16,"value":1931}," set in\n",{"type":10,"tag":22,"props":1933,"children":1935},{"href":1934},"/man/VkPipelineDynamicStateCreateInfo",[1936],{"type":16,"value":1937},"VkPipelineDynamicStateCreateInfo",{"type":16,"value":383},{"type":10,"tag":353,"props":1940,"children":1942},{"className":1941},[],[1943],{"type":16,"value":1944},"pDynamicStates",{"type":16,"value":1946},", the\napplication ",{"type":10,"tag":31,"props":1948,"children":1949},{"type":33},[],{"type":16,"value":1951}," specify which types of attachments that are written to\nduring a render pass will also be accessed as non-attachments in the render\npass.",{"type":10,"tag":53,"props":1953,"children":1955},{"name":1954,"type":56},"vkCmdSetAttachmentFeedbackLoopEnableEXT",[1956],{"type":10,"tag":18,"props":1957,"children":1958},{},[1959],{"type":16,"value":1960},"Specify whether attachment feedback loops are enabled dynamically on a command buffer",{"type":10,"tag":18,"props":1962,"children":1963},{},[1964],{"type":16,"value":1965},"A more extensible version of render pass creation is also defined below.",{"type":10,"tag":53,"props":1967,"children":1969},{"name":1968,"type":56},"vkCreateRenderPass2",[1970],{"type":10,"tag":18,"props":1971,"children":1972},{},[1973],{"type":16,"value":618},{"type":10,"tag":53,"props":1975,"children":1977},{"name":1976,"type":66},"VkRenderPassCreateInfo2",[1978],{"type":10,"tag":18,"props":1979,"children":1980},{},[1981],{"type":16,"value":627},{"type":10,"tag":53,"props":1983,"children":1985},{"name":1984,"type":66},"VkAttachmentDescription2",[1986],{"type":10,"tag":18,"props":1987,"children":1988},{},[1989],{"type":16,"value":689},{"type":10,"tag":53,"props":1991,"children":1993},{"name":1992,"type":66},"VkAttachmentDescriptionStencilLayout",[1994],{"type":10,"tag":18,"props":1995,"children":1996},{},[1997],{"type":16,"value":689},{"type":10,"tag":53,"props":1999,"children":2001},{"name":2000,"type":66},"VkSubpassDescription2",[2002],{"type":10,"tag":18,"props":2003,"children":2004},{},[2005],{"type":16,"value":742},{"type":10,"tag":53,"props":2007,"children":2008},{"name":381,"type":66},[2009],{"type":10,"tag":18,"props":2010,"children":2011},{},[2012],{"type":16,"value":2013},"Structure specifying depth/stencil resolve operations for a subpass",{"type":10,"tag":53,"props":2015,"children":2016},{"name":396,"type":66},[2017],{"type":10,"tag":18,"props":2018,"children":2019},{},[2020],{"type":16,"value":2021},"Structure specifying a fragment shading rate attachment for a subpass",{"type":10,"tag":235,"props":2023,"children":2025},{"id":2024},"subpass-multisampledrendertosinglesampled",[],{"type":10,"tag":53,"props":2027,"children":2029},{"name":2028,"type":66},"VkMultisampledRenderToSingleSampledInfoEXT",[2030],{"type":10,"tag":18,"props":2031,"children":2032},{},[2033],{"type":16,"value":2034},"Structure containing info for multisampled rendering to single-sampled attachments in a subpass",{"type":10,"tag":235,"props":2036,"children":2038},{"id":2037},"multisampled-render-to-single-sampled",[],{"type":10,"tag":18,"props":2040,"children":2041},{},[2042,2044,2050,2052,2057,2059,2064,2066,2071,2073,2079,2081,2087,2089,2092,2094,2100,2101,2107,2108,2112,2113,2118,2120,2123,2125,2131,2133,2138,2140,2144,2145,2150],{"type":16,"value":2043},"If the ",{"type":10,"tag":353,"props":2045,"children":2047},{"className":2046},[],[2048],{"type":16,"value":2049},"pNext",{"type":16,"value":2051}," chain of ",{"type":10,"tag":22,"props":2053,"children":2055},{"href":2054},"/man/VkSubpassDescription2",[2056],{"type":16,"value":2000},{"type":16,"value":2058},"\nor ",{"type":10,"tag":22,"props":2060,"children":2062},{"href":2061},"/man/VkRenderingInfo",[2063],{"type":16,"value":65},{"type":16,"value":2065},"\nincludes a ",{"type":10,"tag":22,"props":2067,"children":2069},{"href":2068},"/man/VkMultisampledRenderToSingleSampledInfoEXT",[2070],{"type":16,"value":2028},{"type":16,"value":2072}," structure whose\n",{"type":10,"tag":353,"props":2074,"children":2076},{"className":2075},[],[2077],{"type":16,"value":2078},"multisampledRenderToSingleSampledEnable",{"type":16,"value":2080}," field is ",{"type":10,"tag":353,"props":2082,"children":2084},{"className":2083},[],[2085],{"type":16,"value":2086},"VK_TRUE",{"type":16,"value":2088},", the\ngraphics pipelines ",{"type":10,"tag":31,"props":2090,"children":2091},{"type":33},[],{"type":16,"value":2093}," have\n",{"type":10,"tag":22,"props":2095,"children":2097},{"href":2096},"/man/VkGraphicsPipelineCreateInfo",[2098],{"type":16,"value":2099},"VkGraphicsPipelineCreateInfo",{"type":16,"value":383},{"type":10,"tag":353,"props":2102,"children":2104},{"className":2103},[],[2105],{"type":16,"value":2106},"rasterizationSamples",{"type":16,"value":1460},{"type":10,"tag":22,"props":2109,"children":2110},{"href":2068},[2111],{"type":16,"value":2028},{"type":16,"value":383},{"type":10,"tag":353,"props":2114,"children":2116},{"className":2115},[],[2117],{"type":16,"value":2106},{"type":16,"value":2119},",\nand the subpass attachments ",{"type":10,"tag":31,"props":2121,"children":2122},{"type":264},[],{"type":16,"value":2124}," have a sample count of\n",{"type":10,"tag":353,"props":2126,"children":2128},{"className":2127},[],[2129],{"type":16,"value":2130},"VK_SAMPLE_COUNT_1_BIT",{"type":16,"value":2132},".\nFor attachments with a sample count of ",{"type":10,"tag":353,"props":2134,"children":2136},{"className":2135},[],[2137],{"type":16,"value":2130},{"type":16,"value":2139},",\nmultisampled rendering is performed to an intermediate multisampled image\nwith\n",{"type":10,"tag":22,"props":2141,"children":2142},{"href":2068},[2143],{"type":16,"value":2028},{"type":16,"value":383},{"type":10,"tag":353,"props":2146,"children":2148},{"className":2147},[],[2149],{"type":16,"value":2106},{"type":16,"value":2151},"\nsamples, implicitly allocated by the implementation for the duration of the\nsubpass.\nFor such attachments:",{"type":10,"tag":2153,"props":2154,"children":2155},"ul",{},[2156,2178],{"type":10,"tag":2157,"props":2158,"children":2159},"li",{},[2160,2162,2168,2170,2176],{"type":16,"value":2161},"If ",{"type":10,"tag":353,"props":2163,"children":2165},{"className":2164},[],[2166],{"type":16,"value":2167},"loadOp",{"type":16,"value":2169}," equals to ",{"type":10,"tag":353,"props":2171,"children":2173},{"className":2172},[],[2174],{"type":16,"value":2175},"VK_ATTACHMENT_LOAD_OP_LOAD",{"type":16,"value":2177},", samples of\nthe implicit image are initialized by replicating the value from the\ncorresponding pixel in the attachment.",{"type":10,"tag":2157,"props":2179,"children":2180},{},[2181,2182,2188,2189,2195,2197,2203],{"type":16,"value":2161},{"type":10,"tag":353,"props":2183,"children":2185},{"className":2184},[],[2186],{"type":16,"value":2187},"storeOp",{"type":16,"value":281},{"type":10,"tag":353,"props":2190,"children":2192},{"className":2191},[],[2193],{"type":16,"value":2194},"stencilStoreOp",{"type":16,"value":2196}," is equal to\n",{"type":10,"tag":353,"props":2198,"children":2200},{"className":2199},[],[2201],{"type":16,"value":2202},"VK_ATTACHMENT_STORE_OP_STORE",{"type":16,"value":2204},", the implicit image is implicitly\nresolved prior to storage in the attachment.",{"type":10,"tag":18,"props":2206,"children":2207},{},[2208,2210,2213,2215,2220,2221,2226,2227,2232,2234,2239,2240,2246,2247,2252,2254,2258,2260,2265,2267,2270,2272,2276,2277,2282],{"type":16,"value":2209},"Memory constraints due to high primitive counts ",{"type":10,"tag":31,"props":2211,"children":2212},{"type":474},[],{"type":16,"value":2214}," result in an implicit\nsplit of the subpass.\nThis is the equivalent of partial rasterization of geometry in a render pass\nthat ends in ",{"type":10,"tag":353,"props":2216,"children":2218},{"className":2217},[],[2219],{"type":16,"value":2187},{"type":16,"value":532},{"type":10,"tag":353,"props":2222,"children":2224},{"className":2223},[],[2225],{"type":16,"value":2194},{"type":16,"value":1460},{"type":10,"tag":353,"props":2228,"children":2230},{"className":2229},[],[2231],{"type":16,"value":2202},{"type":16,"value":2233},", followed by another render pass with\n",{"type":10,"tag":353,"props":2235,"children":2237},{"className":2236},[],[2238],{"type":16,"value":2167},{"type":16,"value":532},{"type":10,"tag":353,"props":2241,"children":2243},{"className":2242},[],[2244],{"type":16,"value":2245},"stencilLoadOp",{"type":16,"value":1460},{"type":10,"tag":353,"props":2248,"children":2250},{"className":2249},[],[2251],{"type":16,"value":2175},{"type":16,"value":2253}," with appropriate barriers in between.\nWhen ",{"type":10,"tag":22,"props":2255,"children":2256},{"href":2068},[2257],{"type":16,"value":2028},{"type":16,"value":2259}," is used, the\nimplementation is allowed to resolve attachments with a sample count of\n",{"type":10,"tag":353,"props":2261,"children":2263},{"className":2262},[],[2264],{"type":16,"value":2130},{"type":16,"value":2266}," and lose multisampled data on such splits.\nThe implementation ",{"type":10,"tag":31,"props":2268,"children":2269},{"type":474},[],{"type":16,"value":2271}," similarly split the render pass at subpass\nboundaries even if they use the same value for\n",{"type":10,"tag":22,"props":2273,"children":2274},{"href":2068},[2275],{"type":16,"value":2028},{"type":16,"value":383},{"type":10,"tag":353,"props":2278,"children":2280},{"className":2279},[],[2281],{"type":16,"value":2106},{"type":16,"value":458},{"type":10,"tag":53,"props":2284,"children":2286},{"name":2285,"type":66},"VkAttachmentReference2",[2287],{"type":10,"tag":18,"props":2288,"children":2289},{},[2290],{"type":16,"value":769},{"type":10,"tag":53,"props":2292,"children":2294},{"name":2293,"type":66},"VkAttachmentReferenceStencilLayout",[2295],{"type":10,"tag":18,"props":2296,"children":2297},{},[2298],{"type":16,"value":689},{"type":10,"tag":53,"props":2300,"children":2302},{"name":2301,"type":66},"VkSubpassDependency2",[2303],{"type":10,"tag":18,"props":2304,"children":2305},{},[2306],{"type":16,"value":787},{"type":10,"tag":53,"props":2308,"children":2310},{"name":2309,"type":56},"vkDestroyRenderPass",[2311],{"type":10,"tag":18,"props":2312,"children":2313},{},[2314],{"type":16,"value":2315},"Destroy a render pass object",{"type":10,"tag":206,"props":2317,"children":2319},{"id":2318},"renderpass-compatibility",[2320],{"type":16,"value":2321},"Render Pass Compatibility",{"type":10,"tag":18,"props":2323,"children":2324},{},[2325,2327,2330],{"type":16,"value":2326},"Framebuffers and graphics pipelines are created based on a specific render\npass object.\nThey ",{"type":10,"tag":31,"props":2328,"children":2329},{"type":33},[],{"type":16,"value":2331}," only be used with that render pass object, or one compatible with\nit.",{"type":10,"tag":18,"props":2333,"children":2334},{},[2335,2337,2343,2345,2351],{"type":16,"value":2336},"Two attachment references are compatible if they have matching format and\nsample count, or are both ",{"type":10,"tag":353,"props":2338,"children":2340},{"className":2339},[],[2341],{"type":16,"value":2342},"VK_ATTACHMENT_UNUSED",{"type":16,"value":2344}," or the pointer that\nwould contain the reference is ",{"type":10,"tag":353,"props":2346,"children":2348},{"className":2347},[],[2349],{"type":16,"value":2350},"NULL",{"type":16,"value":458},{"type":10,"tag":18,"props":2353,"children":2354},{},[2355,2357,2362],{"type":16,"value":2356},"Two arrays of attachment references are compatible if all corresponding\npairs of attachments are compatible.\nIf the arrays are of different lengths, attachment references not present in\nthe smaller array are treated as ",{"type":10,"tag":353,"props":2358,"children":2360},{"className":2359},[],[2361],{"type":16,"value":2342},{"type":16,"value":458},{"type":10,"tag":18,"props":2364,"children":2365},{},[2366],{"type":16,"value":2367},"Two render passes are compatible if their corresponding color, input,\nresolve, and depth/stencil attachment references are compatible and if they\nare otherwise identical except for:",{"type":10,"tag":2153,"props":2369,"children":2370},{},[2371,2376,2381],{"type":10,"tag":2157,"props":2372,"children":2373},{},[2374],{"type":16,"value":2375},"Initial and final image layout in attachment descriptions",{"type":10,"tag":2157,"props":2377,"children":2378},{},[2379],{"type":16,"value":2380},"Load and store operations in attachment descriptions",{"type":10,"tag":2157,"props":2382,"children":2383},{},[2384],{"type":16,"value":2385},"Image layout in attachment references",{"type":10,"tag":18,"props":2387,"children":2388},{},[2389],{"type":16,"value":2390},"As an additional special case, if two render passes have a single subpass,\nthe resolve attachment reference\nand depth/stencil resolve mode\ncompatibility requirements are ignored.",{"type":10,"tag":18,"props":2392,"children":2393},{},[2394],{"type":16,"value":2395},"A framebuffer is compatible with a render pass if it was created using the\nsame render pass or a compatible render pass.",{"type":10,"tag":206,"props":2397,"children":2399},{"id":2398},"_framebuffers",[2400],{"type":16,"value":2401},"Framebuffers",{"type":10,"tag":53,"props":2403,"children":2404},{"name":558,"type":215},[2405],{"type":10,"tag":18,"props":2406,"children":2407},{},[2408],{"type":16,"value":2409},"Opaque handle to a framebuffer object",{"type":10,"tag":53,"props":2411,"children":2413},{"name":2412,"type":56},"vkCreateFramebuffer",[2414],{"type":10,"tag":18,"props":2415,"children":2416},{},[2417],{"type":16,"value":2418},"Create a new framebuffer object",{"type":10,"tag":53,"props":2420,"children":2421},{"name":1342,"type":66},[2422],{"type":10,"tag":18,"props":2423,"children":2424},{},[2425],{"type":16,"value":2426},"Structure specifying parameters of a newly created framebuffer",{"type":10,"tag":53,"props":2428,"children":2430},{"name":2429,"type":66},"VkFramebufferAttachmentsCreateInfo",[2431],{"type":10,"tag":18,"props":2432,"children":2433},{},[2434],{"type":16,"value":2435},"Structure specifying parameters of images that will be used with a framebuffer",{"type":10,"tag":53,"props":2437,"children":2439},{"name":2438,"type":66},"VkFramebufferAttachmentImageInfo",[2440],{"type":10,"tag":18,"props":2441,"children":2442},{},[2443],{"type":16,"value":2444},"Structure specifying parameters of an image that will be used with a framebuffer",{"type":10,"tag":53,"props":2446,"children":2448},{"name":2447,"type":76},"VkFramebufferCreateFlagBits",[2449],{"type":10,"tag":18,"props":2450,"children":2451},{},[2452],{"type":16,"value":2453},"Bitmask specifying framebuffer properties",{"type":10,"tag":53,"props":2455,"children":2457},{"name":2456,"type":86},"VkFramebufferCreateFlags",[2458],{"type":10,"tag":18,"props":2459,"children":2460},{},[2461],{"type":16,"value":2462},"Bitmask of VkFramebufferCreateFlagBits",{"type":10,"tag":53,"props":2464,"children":2466},{"name":2465,"type":56},"vkDestroyFramebuffer",[2467],{"type":10,"tag":18,"props":2468,"children":2469},{},[2470],{"type":16,"value":2471},"Destroy a framebuffer object",{"type":10,"tag":206,"props":2473,"children":2475},{"id":2474},"renderpass-load-operations",[2476],{"type":16,"value":2477},"Render Pass Load Operations",{"type":10,"tag":18,"props":2479,"children":2480},{},[2481],{"type":16,"value":2482},"Render pass load operations define the initial values of an attachment\nduring a render pass instance.",{"type":10,"tag":18,"props":2484,"children":2485},{},[2486,2488,2494,2496,2502],{"type":16,"value":2487},"Load operations for attachments with a depth/stencil format execute in the\n",{"type":10,"tag":353,"props":2489,"children":2491},{"className":2490},[],[2492],{"type":16,"value":2493},"VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT",{"type":16,"value":2495}," pipeline stage.\nLoad operations for attachments with a color format execute in the\n",{"type":10,"tag":353,"props":2497,"children":2499},{"className":2498},[],[2500],{"type":16,"value":2501},"VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT",{"type":16,"value":2503}," pipeline stage.\nThe load operation for each sample in an attachment happens-before any\nrecorded command which accesses the sample in that render pass instance via\nthat attachment or an alias.",{"type":10,"tag":165,"props":2505,"children":2506},{},[2507],{"type":10,"tag":18,"props":2508,"children":2509},{},[2510,2512,2518],{"type":16,"value":2511},"Because load operations always happen first, external synchronization with\nattachment access only needs to synchronize the load operations with\nprevious commands; not the operations within the render pass instance.\nThis does not apply when using ",{"type":10,"tag":353,"props":2513,"children":2515},{"className":2514},[],[2516],{"type":16,"value":2517},"VK_ATTACHMENT_LOAD_OP_NONE_KHR",{"type":16,"value":458},{"type":10,"tag":18,"props":2520,"children":2521},{},[2522,2524,2527,2529,2535,2537,2547,2549,2555,2557,2560,2562,2568,2570,2573],{"type":16,"value":2523},"Load operations only update values within the defined render area for the\nrender pass instance.\nHowever, any writes performed by a load operation (as defined by its access\nmasks) to a given attachment ",{"type":10,"tag":31,"props":2525,"children":2526},{"type":474},[],{"type":16,"value":2528}," read and write back any memory locations\nwithin the image subresource bound for that attachment.\nFor depth/stencil images,\nif ",{"type":10,"tag":22,"props":2530,"children":2532},{"href":2531},"/man/VkPhysicalDeviceMaintenance7FeaturesKHR#features-maintenance7",[2533],{"type":16,"value":2534},"maintenance7",{"type":16,"value":2536}," is not enabled on the device or\n",{"type":10,"tag":22,"props":2538,"children":2540},{"href":2539},"/man/VkPhysicalDeviceMaintenance7PropertiesKHR#limits-separateDepthStencilAttachmentAccess",[2541],{"type":10,"tag":353,"props":2542,"children":2544},{"className":2543},[],[2545],{"type":16,"value":2546},"separateDepthStencilAttachmentAccess",{"type":16,"value":2548},"\nis ",{"type":10,"tag":353,"props":2550,"children":2552},{"className":2551},[],[2553],{"type":16,"value":2554},"VK_FALSE",{"type":16,"value":2556},",\nwrites to one aspect ",{"type":10,"tag":31,"props":2558,"children":2559},{"type":474},[],{"type":16,"value":2561}," also result in read-modify-write operations for\nthe other aspect.\nIf the subresource is in the\n",{"type":10,"tag":353,"props":2563,"children":2565},{"className":2564},[],[2566],{"type":16,"value":2567},"VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT",{"type":16,"value":2569}," layout,\nimplementations ",{"type":10,"tag":31,"props":2571,"children":2572},{"type":33},[],{"type":16,"value":2574}," not access pixels outside of the render area.",{"type":10,"tag":165,"props":2576,"children":2577},{},[2578],{"type":10,"tag":18,"props":2579,"children":2580},{},[2581],{"type":16,"value":2582},"As entire subresources could be accessed by load operations, applications\ncannot safely access values outside of the render area during a render pass\ninstance when a load operation that modifies values is used.",{"type":10,"tag":53,"props":2584,"children":2586},{"name":2585,"type":76},"VkAttachmentLoadOp",[2587],{"type":10,"tag":18,"props":2588,"children":2589},{},[2590],{"type":16,"value":2591},"Specify how contents of an attachment are treated at the beginning of the subpass where it is first used",{"type":10,"tag":235,"props":2593,"children":2595},{"id":2594},"renderpass-precision",[],{"type":10,"tag":18,"props":2597,"children":2598},{},[2599,2601,2604,2606,2609,2611,2614,2616,2621,2623,2626,2628,2633,2635,2641,2642,2648],{"type":16,"value":2600},"During a render pass instance, input and color attachments with color\nformats that have a component size of 8, 16, or 32 bits ",{"type":10,"tag":31,"props":2602,"children":2603},{"type":33},[],{"type":16,"value":2605}," be represented\nin the attachment’s format throughout the instance.\nAttachments with other floating- or fixed-point color formats, or with depth\ncomponents ",{"type":10,"tag":31,"props":2607,"children":2608},{"type":474},[],{"type":16,"value":2610}," be represented in a format with a precision higher than the\nattachment format, but ",{"type":10,"tag":31,"props":2612,"children":2613},{"type":33},[],{"type":16,"value":2615}," be represented with the same range.\nWhen such a component is loaded via the ",{"type":10,"tag":353,"props":2617,"children":2619},{"className":2618},[],[2620],{"type":16,"value":2167},{"type":16,"value":2622},", it will be converted\ninto an implementation-dependent format used by the render pass.\nSuch components ",{"type":10,"tag":31,"props":2624,"children":2625},{"type":33},[],{"type":16,"value":2627}," be converted from the render pass format, to the\nformat of the attachment, before they are resolved or stored at the end of a\nrender pass instance via ",{"type":10,"tag":353,"props":2629,"children":2631},{"className":2630},[],[2632],{"type":16,"value":2187},{"type":16,"value":2634},".\nConversions occur as described in ",{"type":10,"tag":22,"props":2636,"children":2638},{"href":2637},"/chapters/fundamentals#fundamentals-numerics",[2639],{"type":16,"value":2640},"Numeric\nRepresentation and Computation",{"type":16,"value":532},{"type":10,"tag":22,"props":2643,"children":2645},{"href":2644},"/chapters/fundamentals#fundamentals-fixedconv",[2646],{"type":16,"value":2647},"Fixed-Point\nData Conversions",{"type":16,"value":458},{"type":10,"tag":206,"props":2650,"children":2652},{"id":2651},"renderpass-store-operations",[2653],{"type":16,"value":2654},"Render Pass Store Operations",{"type":10,"tag":18,"props":2656,"children":2657},{},[2658],{"type":16,"value":2659},"Render pass store operations define how values written to an attachment\nduring a render pass instance are stored to memory.",{"type":10,"tag":18,"props":2661,"children":2662},{},[2663,2665,2671,2673,2678],{"type":16,"value":2664},"Store operations for attachments with a depth/stencil format execute in the\n",{"type":10,"tag":353,"props":2666,"children":2668},{"className":2667},[],[2669],{"type":16,"value":2670},"VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT",{"type":16,"value":2672}," pipeline stage.\nStore operations for attachments with a color format execute in the\n",{"type":10,"tag":353,"props":2674,"children":2676},{"className":2675},[],[2677],{"type":16,"value":2501},{"type":16,"value":2679}," pipeline stage.\nThe store operation for each sample in an attachment happens-after any\nrecorded command which accesses the sample via that attachment or an alias.",{"type":10,"tag":165,"props":2681,"children":2682},{},[2683],{"type":10,"tag":18,"props":2684,"children":2685},{},[2686,2688,2694],{"type":16,"value":2687},"Because store operations always happen after other accesses in a render pass\ninstance, external synchronization with attachment access in an earlier\nrender pass only needs to synchronize with the store operations; not the\noperations within the render pass instance.\nThis does not apply when using ",{"type":10,"tag":353,"props":2689,"children":2691},{"className":2690},[],[2692],{"type":16,"value":2693},"VK_ATTACHMENT_STORE_OP_NONE",{"type":16,"value":458},{"type":10,"tag":18,"props":2696,"children":2697},{},[2698,2700,2703,2705,2713,2714,2719,2720,2723,2724,2729,2730,2733],{"type":16,"value":2699},"Store operations only update values within the defined render area for the\nrender pass instance.\nHowever, any writes performed by a store operation (as defined by its access\nmasks) to a given attachment ",{"type":10,"tag":31,"props":2701,"children":2702},{"type":474},[],{"type":16,"value":2704}," read and write back any memory locations\nwithin the image subresource bound for that attachment.\nFor depth/stencil images,\nif\n",{"type":10,"tag":22,"props":2706,"children":2707},{"href":2539},[2708],{"type":10,"tag":353,"props":2709,"children":2711},{"className":2710},[],[2712],{"type":16,"value":2546},{"type":16,"value":2548},{"type":10,"tag":353,"props":2715,"children":2717},{"className":2716},[],[2718],{"type":16,"value":2554},{"type":16,"value":2556},{"type":10,"tag":31,"props":2721,"children":2722},{"type":474},[],{"type":16,"value":2561},{"type":10,"tag":353,"props":2725,"children":2727},{"className":2726},[],[2728],{"type":16,"value":2567},{"type":16,"value":2569},{"type":10,"tag":31,"props":2731,"children":2732},{"type":33},[],{"type":16,"value":2574},{"type":10,"tag":165,"props":2735,"children":2736},{},[2737],{"type":10,"tag":18,"props":2738,"children":2739},{},[2740],{"type":16,"value":2741},"As entire subresources could be accessed by store operations, applications\ncannot safely access values outside of the render area via aliased resources\nduring a render pass instance when a store operation that modifies values is\nused.",{"type":10,"tag":53,"props":2743,"children":2745},{"name":2744,"type":76},"VkAttachmentStoreOp",[2746],{"type":10,"tag":18,"props":2747,"children":2748},{},[2749],{"type":16,"value":2750},"Specify how contents of an attachment are treated at the end of the subpass where it is last used",{"type":10,"tag":206,"props":2752,"children":2754},{"id":2753},"renderpass-resolve-operations",[2755],{"type":16,"value":2756},"Render Pass Multisample Resolve Operations",{"type":10,"tag":18,"props":2758,"children":2759},{},[2760],{"type":16,"value":2761},"Render pass multisample resolve operations combine sample values from a\nsingle pixel in a multisample attachment and store the result to the\ncorresponding pixel in a single sample attachment.",{"type":10,"tag":18,"props":2763,"children":2764},{},[2765,2767,2772,2774,2777,2779,2785,2787,2792,2794,2800],{"type":16,"value":2766},"Multisample resolve operations for attachments execute in the\n",{"type":10,"tag":353,"props":2768,"children":2770},{"className":2769},[],[2771],{"type":16,"value":2501},{"type":16,"value":2773}," pipeline stage.\nA final resolve operation for all pixels in the render area happens-after\nany recorded command which writes a pixel via the multisample attachment to\nbe resolved or an explicit alias of it in the subpass that it is specified.\nAny single sample attachment specified for use in a multisample resolve\noperation ",{"type":10,"tag":31,"props":2775,"children":2776},{"type":474},[],{"type":16,"value":2778}," have its contents modified at any point once rendering begins\nfor the render pass instance.\nReads from the multisample attachment can be synchronized with\n",{"type":10,"tag":353,"props":2780,"children":2782},{"className":2781},[],[2783],{"type":16,"value":2784},"VK_ACCESS_COLOR_ATTACHMENT_READ_BIT",{"type":16,"value":2786},".\nAccess to the single sample attachment can be synchronized with\n",{"type":10,"tag":353,"props":2788,"children":2790},{"className":2789},[],[2791],{"type":16,"value":2784},{"type":16,"value":2793}," and\n",{"type":10,"tag":353,"props":2795,"children":2797},{"className":2796},[],[2798],{"type":16,"value":2799},"VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT",{"type":16,"value":2801},".\nThese pipeline stage and access types are used whether the attachments are\ncolor or depth/stencil attachments.",{"type":10,"tag":18,"props":2803,"children":2804},{},[2805],{"type":16,"value":2806},"When using render pass objects, a subpass dependency specified with the\nabove pipeline stages and access flags will ensure synchronization with\nmultisample resolve operations for any attachments that were last accessed\nby that subpass.\nThis allows later subpasses to read resolved values as input attachments.",{"type":10,"tag":18,"props":2808,"children":2809},{},[2810,2812,2815,2817,2825,2826,2831,2832,2835,2836,2841,2842,2845],{"type":16,"value":2811},"Resolve operations only update values within the defined render area for the\nrender pass instance.\nHowever, any writes performed by a resolve operation (as defined by its\naccess masks) to a given attachment ",{"type":10,"tag":31,"props":2813,"children":2814},{"type":474},[],{"type":16,"value":2816}," read and write back any memory\nlocations within the image subresource bound for that attachment.\nFor depth/stencil images,\nif\n",{"type":10,"tag":22,"props":2818,"children":2819},{"href":2539},[2820],{"type":10,"tag":353,"props":2821,"children":2823},{"className":2822},[],[2824],{"type":16,"value":2546},{"type":16,"value":2548},{"type":10,"tag":353,"props":2827,"children":2829},{"className":2828},[],[2830],{"type":16,"value":2554},{"type":16,"value":2556},{"type":10,"tag":31,"props":2833,"children":2834},{"type":474},[],{"type":16,"value":2561},{"type":10,"tag":353,"props":2837,"children":2839},{"className":2838},[],[2840],{"type":16,"value":2567},{"type":16,"value":2569},{"type":10,"tag":31,"props":2843,"children":2844},{"type":33},[],{"type":16,"value":2574},{"type":10,"tag":165,"props":2847,"children":2848},{},[2849],{"type":10,"tag":18,"props":2850,"children":2851},{},[2852],{"type":16,"value":2853},"As entire subresources could be accessed by multisample resolve operations,\napplications cannot safely access values outside of the render area via\naliased resources during a render pass instance when a multisample resolve\noperation is performed.",{"type":10,"tag":53,"props":2855,"children":2857},{"name":2856,"type":76},"VkResolveModeFlagBits",[2858],{"type":10,"tag":18,"props":2859,"children":2860},{},[2861],{"type":16,"value":2862},"Bitmask indicating supported depth and stencil resolve modes",{"type":10,"tag":53,"props":2864,"children":2866},{"name":2865,"type":86},"VkResolveModeFlags",[2867],{"type":10,"tag":18,"props":2868,"children":2869},{},[2870],{"type":16,"value":2871},"Bitmask of VkResolveModeFlagBits",{"type":10,"tag":206,"props":2873,"children":2875},{"id":2874},"renderpass-commands",[2876],{"type":16,"value":2877},"Render Pass Commands",{"type":10,"tag":18,"props":2879,"children":2880},{},[2881],{"type":16,"value":2882},"An application records the commands for a render pass instance one subpass\nat a time, by beginning a render pass instance, iterating over the subpasses\nto record commands for that subpass, and then ending the render pass\ninstance.",{"type":10,"tag":53,"props":2884,"children":2885},{"name":530,"type":56},[2886],{"type":10,"tag":18,"props":2887,"children":2888},{},[2889],{"type":16,"value":2890},"Begin a new render pass",{"type":10,"tag":53,"props":2892,"children":2894},{"name":2893,"type":56},"vkCmdBeginRenderPass2",[2895],{"type":10,"tag":18,"props":2896,"children":2897},{},[2898],{"type":16,"value":2890},{"type":10,"tag":53,"props":2900,"children":2902},{"name":2901,"type":66},"VkRenderPassBeginInfo",[2903],{"type":10,"tag":18,"props":2904,"children":2905},{},[2906],{"type":16,"value":2907},"Structure specifying render pass begin information",{"type":10,"tag":53,"props":2909,"children":2910},{"name":1523,"type":66},[2911],{"type":10,"tag":18,"props":2912,"children":2913},{},[2914],{"type":16,"value":2915},"Structure specifying sample locations to use for the layout transition of custom sample locations compatible depth/stencil attachments",{"type":10,"tag":53,"props":2917,"children":2919},{"name":2918,"type":66},"VkAttachmentSampleLocationsEXT",[2920],{"type":10,"tag":18,"props":2921,"children":2922},{},[2923],{"type":16,"value":2924},"Structure specifying the sample locations state to use in the initial layout transition of attachments",{"type":10,"tag":53,"props":2926,"children":2928},{"name":2927,"type":66},"VkSubpassSampleLocationsEXT",[2929],{"type":10,"tag":18,"props":2930,"children":2931},{},[2932],{"type":16,"value":2933},"Structure specifying the sample locations state to use for layout transitions of attachments performed after a given subpass",{"type":10,"tag":53,"props":2935,"children":2937},{"name":2936,"type":66},"VkRenderPassTransformBeginInfoQCOM",[2938],{"type":10,"tag":18,"props":2939,"children":2940},{},[2941],{"type":16,"value":2942},"Structure describing transform parameters of a render pass instance",{"type":10,"tag":53,"props":2944,"children":2946},{"name":2945,"type":66},"VkSubpassBeginInfo",[2947],{"type":10,"tag":18,"props":2948,"children":2949},{},[2950],{"type":16,"value":2951},"Structure specifying subpass begin information",{"type":10,"tag":53,"props":2953,"children":2955},{"name":2954,"type":76},"VkSubpassContents",[2956],{"type":10,"tag":18,"props":2957,"children":2958},{},[2959],{"type":16,"value":2960},"Specify how commands in the first subpass of a render pass are provided",{"type":10,"tag":53,"props":2962,"children":2964},{"name":2963,"type":66},"VkDeviceGroupRenderPassBeginInfo",[2965],{"type":10,"tag":18,"props":2966,"children":2967},{},[2968],{"type":16,"value":2969},"Set the initial device mask and render areas for a render pass instance",{"type":10,"tag":53,"props":2971,"children":2973},{"name":2972,"type":66},"VkRenderPassAttachmentBeginInfo",[2974],{"type":10,"tag":18,"props":2975,"children":2976},{},[2977],{"type":16,"value":2978},"Structure specifying images to be used as framebuffer attachments",{"type":10,"tag":53,"props":2980,"children":2982},{"name":2981,"type":66},"VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM",[2983],{"type":10,"tag":18,"props":2984,"children":2985},{},[2986],{"type":16,"value":2987},"Set the multiview per view render areas for a render pass instance",{"type":10,"tag":53,"props":2989,"children":2991},{"name":2990,"type":56},"vkGetRenderAreaGranularity",[2992],{"type":10,"tag":18,"props":2993,"children":2994},{},[2995],{"type":16,"value":2996},"Returns the granularity for optimal render area",{"type":10,"tag":53,"props":2998,"children":3000},{"name":2999,"type":56},"vkCmdNextSubpass",[3001],{"type":10,"tag":18,"props":3002,"children":3003},{},[3004],{"type":16,"value":3005},"Transition to the next subpass of a render pass",{"type":10,"tag":53,"props":3007,"children":3009},{"name":3008,"type":56},"vkCmdNextSubpass2",[3010],{"type":10,"tag":18,"props":3011,"children":3012},{},[3013],{"type":16,"value":3005},{"type":10,"tag":53,"props":3015,"children":3016},{"name":538,"type":56},[3017],{"type":10,"tag":18,"props":3018,"children":3019},{},[3020],{"type":16,"value":3021},"End the current render pass",{"type":10,"tag":53,"props":3023,"children":3025},{"name":3024,"type":56},"vkCmdEndRenderPass2",[3026],{"type":10,"tag":18,"props":3027,"children":3028},{},[3029],{"type":16,"value":3021},{"type":10,"tag":53,"props":3031,"children":3033},{"name":3032,"type":66},"VkSubpassEndInfo",[3034],{"type":10,"tag":18,"props":3035,"children":3036},{},[3037],{"type":16,"value":3038},"Structure specifying subpass end information",{"type":10,"tag":53,"props":3040,"children":3042},{"name":3041,"type":66},"VkSubpassFragmentDensityMapOffsetEndInfoQCOM",[3043],{"type":10,"tag":18,"props":3044,"children":3045},{},[3046],{"type":16,"value":3047},"Structure specifying fragment density map offset subpass end information",{"type":10,"tag":206,"props":3049,"children":3051},{"id":3050},"renderpass-creation-feedback",[3052],{"type":16,"value":3053},"Render Pass Creation Feedback",{"type":10,"tag":53,"props":3055,"children":3057},{"name":3056,"type":66},"VkRenderPassCreationControlEXT",[3058],{"type":10,"tag":18,"props":3059,"children":3060},{},[3061],{"type":16,"value":3062},"Control about the creation of render pass or subpass",{"type":10,"tag":53,"props":3064,"children":3066},{"name":3065,"type":66},"VkRenderPassCreationFeedbackCreateInfoEXT",[3067],{"type":10,"tag":18,"props":3068,"children":3069},{},[3070],{"type":16,"value":3071},"Request feedback about the creation of render pass",{"type":10,"tag":53,"props":3073,"children":3075},{"name":3074,"type":66},"VkRenderPassCreationFeedbackInfoEXT",[3076],{"type":10,"tag":18,"props":3077,"children":3078},{},[3079],{"type":16,"value":3080},"Feedback about the creation of a render pass",{"type":10,"tag":53,"props":3082,"children":3084},{"name":3083,"type":66},"VkRenderPassSubpassFeedbackCreateInfoEXT",[3085],{"type":10,"tag":18,"props":3086,"children":3087},{},[3088],{"type":16,"value":3089},"Request for feedback about the creation of subpass",{"type":10,"tag":53,"props":3091,"children":3093},{"name":3092,"type":66},"VkRenderPassSubpassFeedbackInfoEXT",[3094],{"type":10,"tag":18,"props":3095,"children":3096},{},[3097],{"type":16,"value":3098},"Feedback about the creation of subpass",{"type":10,"tag":53,"props":3100,"children":3102},{"name":3101,"type":76},"VkSubpassMergeStatusEXT",[3103],{"type":10,"tag":18,"props":3104,"children":3105},{},[3106],{"type":16,"value":3107},"Specify a subpass merging status",{"type":10,"tag":206,"props":3109,"children":3111},{"id":3110},"_common_render_pass_data_races_informative",[3112],{"type":16,"value":3113},"Common Render Pass Data Races (Informative)",{"type":10,"tag":18,"props":3115,"children":3116},{},[3117],{"type":16,"value":3118},"Due to the complexity of how rendering is performed, there are several ways\nan application can accidentally introduce a data race, usually by doing\nsomething that may seem benign but actually cannot be supported.\nThis section indicates a number of the more common cases as guidelines to\nhelp avoid them.",{"type":10,"tag":3120,"props":3121,"children":3123},"h3",{"id":3122},"_sampling_from_a_read_only_attachment",[3124],{"type":16,"value":3125},"Sampling From a Read-only Attachment",{"type":10,"tag":18,"props":3127,"children":3128},{},[3129],{"type":16,"value":3130},"Vulkan includes read-only layouts for depth/stencil images, that allow the\nimages to be both read during a render pass for the purposes of\ndepth/stencil tests, and read as a non-attachment.",{"type":10,"tag":18,"props":3132,"children":3133},{},[3134,3136,3141,3142,3148,3150,3155],{"type":16,"value":3135},"However, because ",{"type":10,"tag":353,"props":3137,"children":3139},{"className":3138},[],[3140],{"type":16,"value":2202},{"type":16,"value":2793},{"type":10,"tag":353,"props":3143,"children":3145},{"className":3144},[],[3146],{"type":16,"value":3147},"VK_ATTACHMENT_STORE_OP_DONT_CARE",{"type":16,"value":3149}," may perform write operations, even if\nno recorded command writes to an attachment, reading from an image while\nalso using it as an attachment with these store operations can result in a\ndata race.\nIf the reads from the non-attachment are performed in a fragment shader\nwhere the accessed samples match those covered by the fragment shader, no\ndata race will occur as store operations are guaranteed to operate after\nfragment shader execution for the set of samples the fragment covers.\nNotably, input attachments can also be used for this case.\nReading other samples or in any other shader stage can result in unexpected\nbehavior due to the potential for a data race, and validation errors should\nbe generated for doing so.\nIn practice, many applications have shipped reading samples outside of the\ncovered fragment without any observable issue, but there is no guarantee\nthat this will always work, and it is not advisable to rely on this in new\nor re-worked code bases.\nAs ",{"type":10,"tag":353,"props":3151,"children":3153},{"className":3152},[],[3154],{"type":16,"value":2693},{"type":16,"value":3156}," is guaranteed to perform no writes,\napplications wishing to read an image as both an attachment and a\nnon-attachment should make use of this store operation, coupled with a load\noperation that also performs no writes.",{"type":10,"tag":3120,"props":3158,"children":3160},{"id":3159},"_non_overlapping_access_between_resources",[3161],{"type":16,"value":3162},"Non-overlapping Access Between Resources",{"type":10,"tag":18,"props":3164,"children":3165},{},[3166,3168,3174,3176,3182],{"type":16,"value":3167},"When relying on non-overlapping accesses between attachments and other\nresources, it is important to note that ",{"type":10,"tag":22,"props":3169,"children":3171},{"href":3170},"/chapters/renderpass#renderpass-load-operations",[3172],{"type":16,"value":3173},"load",{"type":16,"value":3175},"\nand ",{"type":10,"tag":22,"props":3177,"children":3179},{"href":3178},"/chapters/renderpass#renderpass-store-operations",[3180],{"type":16,"value":3181},"store",{"type":16,"value":3183}," operations have fairly wide\nalignment requirements - potentially affecting entire subresources and\nadjacent depth/stencil aspects.\nThis makes it invalid to access a non-attachment subresource that is\nsimultaneously being used as an attachment where either access performs a\nwrite operation.",{"type":10,"tag":18,"props":3185,"children":3186},{},[3187,3189,3194],{"type":16,"value":3188},"The only exception to this is if a subresource is in the\n",{"type":10,"tag":353,"props":3190,"children":3192},{"className":3191},[],[3193],{"type":16,"value":2567},{"type":16,"value":3195}," image layout, in\nwhich case the overlap is defined to occur at a per-pixel granularity, and\napplications can read data from pixels outside the render area without\nintroducing a data race.",{"type":10,"tag":3120,"props":3197,"children":3199},{"id":3198},"_depthstencil_and_input_attachments",[3200],{"type":16,"value":3201},"Depth/Stencil and Input Attachments",{"type":10,"tag":18,"props":3203,"children":3204},{},[3205,3207,3210,3212,3215,3217,3220,3222,3228,3230,3233,3235,3238,3240,3246,3248,3251,3253,3258],{"type":16,"value":3206},"When rendering to only the depth OR stencil aspect of an image, an input\nattachment accessing the other aspect will\nnot cause a data race only under very specific conditions.\nTo avoid a data race, the aspect not being written ",{"type":10,"tag":31,"props":3208,"children":3209},{"type":33},[],{"type":16,"value":3211}," be in a read-only\nlayout, and writes to it ",{"type":10,"tag":31,"props":3213,"children":3214},{"type":33},[],{"type":16,"value":3216}," be disabled in the draw state.\nFor example, to read from stencil while writing depth, the attachment ",{"type":10,"tag":31,"props":3218,"children":3219},{"type":33},[],{"type":16,"value":3221},"\nbe in ",{"type":10,"tag":353,"props":3223,"children":3225},{"className":3224},[],[3226],{"type":16,"value":3227},"VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL",{"type":16,"value":3229}," (or\nequivalent), and the stencil write mask ",{"type":10,"tag":31,"props":3231,"children":3232},{"type":33},[],{"type":16,"value":3234}," be set to 0.\nSimilarly to read from depth while writing stencil, the attachment ",{"type":10,"tag":31,"props":3236,"children":3237},{"type":33},[],{"type":16,"value":3239}," be\nin ",{"type":10,"tag":353,"props":3241,"children":3243},{"className":3242},[],[3244],{"type":16,"value":3245},"VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL",{"type":16,"value":3247}," (or\nequivalent), and depth write enable ",{"type":10,"tag":31,"props":3249,"children":3250},{"type":33},[],{"type":16,"value":3252}," be ",{"type":10,"tag":353,"props":3254,"children":3256},{"className":3255},[],[3257],{"type":16,"value":2554},{"type":16,"value":458},{"type":10,"tag":3120,"props":3260,"children":3262},{"id":3261},"_synchronization_options",[3263],{"type":16,"value":3264},"Synchronization Options",{"type":10,"tag":18,"props":3266,"children":3267},{},[3268],{"type":16,"value":3269},"There are several synchronization options available to synchronize between\naccesses to resources within a render pass.\nSome of the options are outlined below:",{"type":10,"tag":2153,"props":3271,"children":3272},{},[3273,3292,3304,3321,3332,3343,3354],{"type":10,"tag":2157,"props":3274,"children":3275},{},[3276,3277,3282,3284,3290],{"type":16,"value":243},{"type":10,"tag":22,"props":3278,"children":3280},{"href":3279},"/man/VkSubpassDependency",[3281],{"type":16,"value":781},{"type":16,"value":3283}," in a render pass object can synchronize\nattachment writes and ",{"type":10,"tag":22,"props":3285,"children":3287},{"href":3286},"/chapters/renderpass#renderpass-resolve-operations",[3288],{"type":16,"value":3289},"multisample\nresolve operations",{"type":16,"value":3291}," from a prior subpass for subsequent input\nattachment reads.",{"type":10,"tag":2157,"props":3293,"children":3294},{},[3295,3296,3302],{"type":16,"value":243},{"type":10,"tag":22,"props":3297,"children":3299},{"href":3298},"/man/vkCmdPipelineBarrier",[3300],{"type":16,"value":3301},"vkCmdPipelineBarrier",{"type":16,"value":3303}," inside a subpass can synchronize prior\nattachment writes in the subpass with subsequent input attachment reads.",{"type":10,"tag":2157,"props":3305,"children":3306},{},[3307,3308,3312,3314,3319],{"type":16,"value":243},{"type":10,"tag":22,"props":3309,"children":3310},{"href":3298},[3311],{"type":16,"value":3301},{"type":16,"value":3313}," inside a subpass can synchronize prior\nattachment writes in the subpass with subsequent non-attachment reads if\nthe attachment is in the\n",{"type":10,"tag":353,"props":3315,"children":3317},{"className":3316},[],[3318],{"type":16,"value":2567},{"type":16,"value":3320}," image layout.",{"type":10,"tag":2157,"props":3322,"children":3323},{},[3324,3326],{"type":16,"value":3325},"If a subresource is used as a color and input attachment, and the\npipeline performing the read was created with\n",{"type":10,"tag":353,"props":3327,"children":3329},{"className":3328},[],[3330],{"type":16,"value":3331},"VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT",{"type":10,"tag":2157,"props":3333,"children":3334},{},[3335,3337],{"type":16,"value":3336},"If a subresource is used as a depth and input attachment, and the\npipeline performing the read was created with\n",{"type":10,"tag":353,"props":3338,"children":3340},{"className":3339},[],[3341],{"type":16,"value":3342},"VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT",{"type":10,"tag":2157,"props":3344,"children":3345},{},[3346,3348],{"type":16,"value":3347},"If a subresource is used as a stencil and input attachment, and the\npipeline performing the read was created with\n",{"type":10,"tag":353,"props":3349,"children":3351},{"className":3350},[],[3352],{"type":16,"value":3353},"VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT",{"type":10,"tag":2157,"props":3355,"children":3356},{},[3357,3359,3365],{"type":16,"value":3358},"If a subresource is used as two separate non-attachment resources,\nwrites to a pixel or individual sample in a fragment shader can be\nsynchronized with access to the same pixel or sample in another fragment\nshader by using one of the ",{"type":10,"tag":22,"props":3360,"children":3362},{"href":3361},"/chapters/shaders#shaders-scope-fragment-interlock",[3363],{"type":16,"value":3364},"fragment\ninterlock",{"type":16,"value":3366}," execution modes.",{"type":10,"tag":3368,"props":3369,"children":3370},"style",{},[3371],{"type":16,"value":3372},"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":888,"searchDepth":918,"depth":918,"links":3374},[3375,3376,3377,3378,3379,3380,3381,3382,3383,3384],{"id":208,"depth":918,"text":211},{"id":606,"depth":918,"text":609},{"id":2318,"depth":918,"text":2321},{"id":2398,"depth":918,"text":2401},{"id":2474,"depth":918,"text":2477},{"id":2651,"depth":918,"text":2654},{"id":2753,"depth":918,"text":2756},{"id":2874,"depth":918,"text":2877},{"id":3050,"depth":918,"text":3053},{"id":3110,"depth":918,"text":3113,"children":3385},[3386,3387,3388,3389],{"id":3122,"depth":936,"text":3125},{"id":3159,"depth":936,"text":3162},{"id":3198,"depth":936,"text":3201},{"id":3261,"depth":936,"text":3264},"markdown","chapters-renderpass",[3393,3398,3401,3404,3407,3410,3413,3416,3417,3420,3423,3426,3429,3432,3435,3438,3441,3444,3447,3451,3455,3459,3463,3467,3471,3475,3479,3483,3487,3491,3495,3499,3503,3507,3511,3515,3519,3523,3527,3531,3535,3539,3543,3547,3551,3555,3559,3563,3567,3571,3575,3578,3581,3584,3587,3590,3593,3596,3599],{"index":3394,"title":3395,"id":3396,"appendix":3397},0,"Preamble","preamble",false,{"index":897,"title":3399,"id":3400,"appendix":3397},"Introduction","introduction",{"index":918,"title":3402,"id":3403,"appendix":3397},"Fundamentals","fundamentals",{"index":936,"title":3405,"id":3406,"appendix":3397},"Initialization","initialization",{"index":960,"title":3408,"id":3409,"appendix":3397},"Devices and Queues","devsandqueues",{"index":978,"title":3411,"id":3412,"appendix":3397},"Command Buffers","commandbuffers",{"index":996,"title":3414,"id":3415,"appendix":3397},"Synchronization and Cache Control","synchronization",{"index":1019,"title":4,"id":13,"appendix":3397},{"index":1042,"title":3418,"id":3419,"appendix":3397},"Shaders","shaders",{"index":1055,"title":3421,"id":3422,"appendix":3397},"Pipelines","pipelines",{"index":1068,"title":3424,"id":3425,"appendix":3397},"Memory Allocation","memory",{"index":1081,"title":3427,"id":3428,"appendix":3397},"Resource Creation","resources",{"index":1090,"title":3430,"id":3431,"appendix":3397},"Samplers","samplers",{"index":1108,"title":3433,"id":3434,"appendix":3397},"Resource Descriptors","descriptorsets",{"index":1838,"title":3436,"id":3437,"appendix":3397},"Shader Interfaces","interfaces",{"index":1859,"title":3439,"id":3440,"appendix":3397},"Image Operations","textures",{"index":1885,"title":3442,"id":3443,"appendix":3397},"Fragment Density Map Operations","fragmentdensitymapops",{"index":1905,"title":3445,"id":3446,"appendix":3397},"Queries","queries",{"index":3448,"title":3449,"id":3450,"appendix":3397},18,"Clear Commands","clears",{"index":3452,"title":3453,"id":3454,"appendix":3397},19,"Copy Commands","copies",{"index":3456,"title":3457,"id":3458,"appendix":3397},20,"Drawing Commands","drawing",{"index":3460,"title":3461,"id":3462,"appendix":3397},21,"Fixed-Function Vertex Processing","fxvertex",{"index":3464,"title":3465,"id":3466,"appendix":3397},22,"Tessellation","tessellation",{"index":3468,"title":3469,"id":3470,"appendix":3397},23,"Geometry Shading","geometry",{"index":3472,"title":3473,"id":3474,"appendix":3397},24,"Mesh Shading","mesh",{"index":3476,"title":3477,"id":3478,"appendix":3397},25,"Cluster Culling Shading","cluster-culling",{"index":3480,"title":3481,"id":3482,"appendix":3397},26,"Fixed-Function Vertex Post-Processing","vertexpostproc",{"index":3484,"title":3485,"id":3486,"appendix":3397},27,"Rasterization","primsrast",{"index":3488,"title":3489,"id":3490,"appendix":3397},28,"Fragment Operations","fragops",{"index":3492,"title":3493,"id":3494,"appendix":3397},29,"The Framebuffer","framebuffer",{"index":3496,"title":3497,"id":3498,"appendix":3397},30,"Dispatching Commands","dispatch",{"index":3500,"title":3501,"id":3502,"appendix":3397},31,"Device-Generated Commands","device-generated-commands",{"index":3504,"title":3505,"id":3506,"appendix":3397},32,"Sparse Resources","sparsememory",{"index":3508,"title":3509,"id":3510,"appendix":3397},33,"Window System Integration (WSI)","wsi",{"index":3512,"title":3513,"id":3514,"appendix":3397},34,"Deferred Host Operations","deferred-host-operations",{"index":3516,"title":3517,"id":3518,"appendix":3397},35,"Private Data","private-data",{"index":3520,"title":3521,"id":3522,"appendix":3397},36,"Acceleration Structures","acceleration-structure",{"index":3524,"title":3525,"id":3526,"appendix":3397},37,"Micromap","micromap",{"index":3528,"title":3529,"id":3530,"appendix":3397},38,"Ray Traversal","ray-traversal",{"index":3532,"title":3533,"id":3534,"appendix":3397},39,"Ray Tracing","ray-tracing",{"index":3536,"title":3537,"id":3538,"appendix":3397},40,"Memory Decompression","memory-decompression",{"index":3540,"title":3541,"id":3542,"appendix":3397},41,"Video Coding","video-coding",{"index":3544,"title":3545,"id":3546,"appendix":3397},42,"Optical Flow","opticalflow",{"index":3548,"title":3549,"id":3550,"appendix":3397},43,"Execution Graphs","executiongraphs",{"index":3552,"title":3553,"id":3554,"appendix":3397},44,"Extending Vulkan","extendingvulkan",{"index":3556,"title":3557,"id":3558,"appendix":3397},45,"Features","features",{"index":3560,"title":3561,"id":3562,"appendix":3397},46,"Limits","limits",{"index":3564,"title":3565,"id":3566,"appendix":3397},47,"Formats","formats",{"index":3568,"title":3569,"id":3570,"appendix":3397},48,"Additional Capabilities","capabilities",{"index":3572,"title":3573,"id":3574,"appendix":3397},49,"Debugging","debugging",{"index":3394,"title":3576,"id":3577,"appendix":1678},"Vulkan Environment for SPIR-V","spirvenv",{"index":897,"title":3579,"id":3580,"appendix":1678},"Memory Model","memory-model",{"index":918,"title":3582,"id":3583,"appendix":1678},"Compressed Image Formats","compressed_image_formats",{"index":936,"title":3585,"id":3586,"appendix":1678},"Core Revisions (Informative)","versions",{"index":960,"title":3588,"id":3589,"appendix":1678},"Layers & Extensions (Informative)","extensions",{"index":978,"title":3591,"id":3592,"appendix":1678},"API Boilerplate","boilerplate",{"index":996,"title":3594,"id":3595,"appendix":1678},"Invariance","invariance",{"index":1019,"title":3597,"id":3598,"appendix":1678},"Lexicon","lexicon",{"index":1042,"title":3600,"id":3601,"appendix":1678},"Credits (Informative)","credits",[3603,3611,3615,3620,3624,3629,3632,3635,3638,3642,3646,3649,3652,3655,3657,3659,3662,3665,3669,3671,3675,3677,3680,3682,3685,3693,3697,3703,3707,3712,3714,3718,3724,3730,3736,3738,3741,3747,3750,3754,3760,3764,3768,3773,3777,3780,3783,3789,3792,3795,3799,3803,3807,3810,3812,3816,3821,3827,3830,3834,3837,3843,3846,3850,3853,3857,3860,3864,3867,3872,3876,3879,3884,3887,3890,3893,3897,3902,3907,3911,3915,3919,3923,3927,3931,3935,3938,3941,3945,3948,3951,3954,3958,3963,3967,3970,3974,3979,3983,3988,3991,3994,3999,4004,4008,4011,4015,4020,4023,4028,4033,4036,4039,4043,4047,4051,4056,4060,4063,4068,4072,4075,4079,4083,4087,4090,4092,4096,4099,4102,4105,4108,4111,4114,4117,4120,4123,4127,4131,4134,4137,4140,4143,4146,4149,4153,4157,4161,4164,4168,4171,4174,4177,4179,4183,4188,4192,4196,4198,4202,4205,4212,4216,4220,4224,4230,4233,4237,4241,4244,4247,4251,4256,4262,4266,4268,4273,4276,4281,4285,4290,4294,4298,4300,4303,4306,4308,4313,4316,4319,4324,4328,4332,4337,4341,4345,4347,4349,4352,4354,4357,4360,4364,4368,4370,4374,4377,4381,4384,4386,4389,4393,4395,4399,4402,4405,4408,4412,4415,4418,4420,4423,4425,4428,4432,4435,4437,4439,4441,4443,4447,4449,4452,4457,4461,4464,4466,4469,4471,4475,4478,4481,4484,4488,4491,4496,4500,4503,4507,4510,4513,4517,4521,4523,4528,4531,4535,4538,4541,4544,4546,4549,4553,4556,4560,4563,4567,4571,4574,4577,4580,4583,4587,4589,4592,4594,4599,4600,4604,4607,4610,4613,4616,4618,4622,4625,4628,4631,4635,4637,4639,4643,4645,4648,4652,4656,4658,4662,4665,4668,4671,4674,4678,4683,4688,4692,4698,4702,4705,4709,4713,4716,4720,4724,4727,4731,4734,4739,4743,4745,4751,4754,4757,4760,4764,4767,4771,4775,4779,4781,4784,4786,4789,4791,4793,4796,4799,4802,4805,4808,4811,4813,4817,4821,4825,4829,4832,4835,4839,4842,4846,4848,4852,4856,4859,4862,4865,4868,4871,4874,4877,4880,4883,4886,4889,4892,4895,4898,4902,4905,4909,4913,4916,4919,4922,4925,4928,4931,4935,4938,4941,4947,4951,4955,4959],{"number":3604,"type":3605,"author":3606,"provisional":1678,"depends":3607,"platform":3608,"contact":3609,"extension":3610,"proposal":1678},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":3612,"type":3605,"author":3606,"provisional":3397,"contact":3613,"extension":3614,"proposal":1678},477,"Stu Smith","VK_AMD_anti_lag",{"number":3616,"type":3605,"author":3606,"provisional":3397,"specialuse":3617,"contact":3618,"extension":3619,"proposal":3397},180,"devtools","Daniel Rakos @drakos-amd","VK_AMD_buffer_marker",{"number":3621,"type":3605,"author":3606,"provisional":3397,"depends":3622,"contact":3609,"extension":3623,"proposal":3397},230,"VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","VK_AMD_device_coherent_memory",{"number":3625,"type":3605,"author":3606,"provisional":3397,"depends":3626,"contact":3627,"extension":3628,"proposal":3397},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":3512,"type":3605,"author":3606,"promotedto":3630,"provisional":3397,"contact":3618,"extension":3631,"proposal":3397},"VK_KHR_draw_indirect_count","VK_AMD_draw_indirect_count",{"number":3480,"type":3605,"author":3606,"provisional":3397,"contact":3633,"extension":3634,"proposal":3397},"Dominik Witczak @dominikwitczakamd","VK_AMD_gcn_shader",{"number":3524,"type":3605,"author":3606,"deprecatedby":3636,"provisional":3397,"contact":3633,"extension":3637,"proposal":3397},"VK_KHR_shader_float16_int8","VK_AMD_gpu_shader_half_float",{"number":3639,"type":3605,"author":3606,"deprecatedby":3636,"provisional":3397,"contact":3640,"extension":3641,"proposal":3397},133,"Qun Lin @linqun","VK_AMD_gpu_shader_int16",{"number":3643,"type":3605,"author":3606,"provisional":3397,"contact":3644,"extension":3645,"proposal":3397},190,"Martin Dinkov @mdinkov","VK_AMD_memory_overallocation_behavior",{"number":3647,"type":3605,"author":3606,"provisional":3397,"contact":3627,"extension":3648,"proposal":3397},137,"VK_AMD_mixed_attachment_samples",{"number":3520,"type":3605,"author":3606,"obsoletedby":3650,"provisional":3397,"contact":3627,"extension":3651,"proposal":3397},"VK_KHR_maintenance1","VK_AMD_negative_viewport_height",{"number":3653,"type":3605,"author":3606,"provisional":3397,"contact":3627,"extension":3654,"proposal":3397},184,"VK_AMD_pipeline_compiler_control",{"number":3452,"type":3605,"author":3606,"provisional":3397,"contact":3618,"extension":3656,"proposal":3397},"VK_AMD_rasterization_order",{"number":3528,"type":3605,"author":3606,"provisional":3397,"contact":3633,"extension":3658,"proposal":3397},"VK_AMD_shader_ballot",{"number":3660,"type":3605,"author":3606,"provisional":3397,"depends":3622,"contact":3644,"extension":3661,"proposal":3397},186,"VK_AMD_shader_core_properties",{"number":3663,"type":3605,"author":3606,"provisional":3397,"depends":3661,"contact":3627,"extension":3664,"proposal":3397},228,"VK_AMD_shader_core_properties2",{"number":3666,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3609,"extension":3668,"proposal":1678},322,"EXT","VK_AMD_shader_early_and_late_fragment_tests",{"number":3464,"type":3605,"author":3606,"provisional":3397,"contact":3640,"extension":3670,"proposal":3397},"VK_AMD_shader_explicit_vertex_parameter",{"number":3672,"type":3605,"author":3606,"provisional":3397,"contact":3673,"extension":3674,"proposal":3397},138,"Aaron Hagan @AaronHaganAMD","VK_AMD_shader_fragment_mask",{"number":3564,"type":3605,"author":3606,"provisional":3397,"contact":3633,"extension":3676,"proposal":3397},"VK_AMD_shader_image_load_store_lod",{"number":3548,"type":3605,"author":3606,"provisional":3397,"specialuse":3617,"contact":3678,"extension":3679,"proposal":3397},"Jaakko Konttinen @jaakkoamd","VK_AMD_shader_info",{"number":3460,"type":3605,"author":3606,"provisional":3397,"contact":3640,"extension":3681,"proposal":3397},"VK_AMD_shader_trinary_minmax",{"number":3544,"type":3605,"author":3606,"provisional":3397,"depends":3622,"contact":3683,"extension":3684,"proposal":3397},"Rex Xu @amdrexu","VK_AMD_texture_gather_bias_lod",{"number":3686,"type":3605,"author":3687,"provisional":3397,"depends":3688,"platform":3689,"specialuse":3690,"contact":3691,"extension":3692,"proposal":1678},469,"ANDROID","VK_ANDROID_external_memory_android_hardware_buffer","android","glemulation","Chris Forbes @chrisforbes","VK_ANDROID_external_format_resolve",{"number":3694,"type":3605,"author":3687,"provisional":3397,"depends":3695,"platform":3689,"contact":3696,"extension":3688,"proposal":3397},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":3698,"type":3605,"author":3699,"promotedto":3700,"provisional":3397,"depends":3622,"contact":3701,"extension":3702,"proposal":3397},343,"ARM","VK_EXT_rasterization_order_attachment_access","Jan-Harald Fredriksen @janharaldfredriksen-arm","VK_ARM_rasterization_order_attachment_access",{"number":3704,"type":3605,"author":3699,"provisional":3397,"depends":3705,"contact":3701,"extension":3706,"proposal":1678},425,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_ARM_render_pass_striped",{"number":3708,"type":3605,"author":3699,"provisional":3397,"depends":3709,"contact":3710,"extension":3711,"proposal":3397},418,"VK_ARM_shader_core_builtins","Kevin Petit @kpet","VK_ARM_scheduling_controls",{"number":3713,"type":3605,"author":3699,"provisional":3397,"depends":3622,"contact":3710,"extension":3709,"proposal":3397},498,{"number":3715,"type":3605,"author":3699,"provisional":3397,"depends":3716,"contact":3701,"extension":3717,"proposal":3397},416,"VK_VERSION_1_1","VK_ARM_shader_core_properties",{"number":3719,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3722,"extension":3723,"proposal":3397},341,"VK_VERSION_1_3","vulkansc","Joshua Ashton @Joshua-Ashton","VK_EXT_4444_formats",{"number":3725,"type":3726,"author":3667,"provisional":3397,"depends":3727,"contact":3728,"extension":3729,"proposal":3397},286,"instance","VK_EXT_direct_mode_display","Drew DeVault sir@cmpwn.com","VK_EXT_acquire_drm_display",{"number":3731,"type":3726,"author":3732,"provisional":3397,"depends":3727,"platform":3733,"contact":3734,"extension":3735,"proposal":3397},90,"NV","xlib_xrandr","James Jones @cubanismo","VK_EXT_acquire_xlib_display",{"extension":3737,"proposal":3397},"VK_EXT_application_parameters",{"number":3739,"type":3605,"author":3699,"provisional":3397,"depends":3622,"contact":3701,"extension":3740,"proposal":3397},68,"VK_EXT_astc_decode_mode",{"number":3742,"type":3605,"author":3667,"provisional":3397,"depends":3743,"ratified":3744,"contact":3745,"extension":3746,"proposal":1678},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":3748,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3722,"extension":3749,"proposal":1678},340,"VK_EXT_attachment_feedback_loop_layout",{"number":3751,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":3753,"proposal":3397},149,"Jeff Bolz @jeffbolznv","VK_EXT_blend_operation_advanced",{"number":3755,"type":3605,"author":3667,"provisional":3397,"depends":3756,"specialuse":3757,"contact":3758,"extension":3759,"proposal":3397},412,"VK_EXT_custom_border_color","glemulation,d3demulation","Piers Daniell @pdaniell-nv","VK_EXT_border_color_swizzle",{"number":3761,"type":3605,"author":3732,"deprecatedby":3762,"provisional":3397,"depends":3622,"contact":3752,"extension":3763,"proposal":3397},245,"VK_KHR_buffer_device_address","VK_EXT_buffer_device_address",{"number":3765,"type":3605,"author":3667,"promotedto":3766,"provisional":3397,"depends":3622,"contact":3618,"extension":3767,"proposal":1678},185,"VK_KHR_calibrated_timestamps","VK_EXT_calibrated_timestamps",{"number":3769,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3770,"contact":3771,"extension":3772,"proposal":3397},382,"vulkan,vulkansc","Sharif Elcott @selcott","VK_EXT_color_write_enable",{"number":3774,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":3775,"extension":3776,"proposal":3397},82,"Vikram Kushwaha @vkushwaha","VK_EXT_conditional_rendering",{"number":3778,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3744,"contact":3758,"extension":3779,"proposal":3397},102,"VK_EXT_conservative_rasterization",{"number":3781,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3770,"specialuse":3757,"contact":3782,"extension":3756,"proposal":3397},288,"Liam Middlebrook @liam-middlebrook",{"number":3468,"type":3605,"author":3784,"promotedto":3785,"provisional":3397,"depends":3786,"specialuse":3574,"contact":3787,"extension":3788,"proposal":3397},"Baldur Karlsson","VK_EXT_debug_utils","VK_EXT_debug_report","Baldur Karlsson @baldurk","VK_EXT_debug_marker",{"number":1090,"type":3726,"author":3790,"deprecatedby":3785,"provisional":3397,"specialuse":3574,"contact":3791,"extension":3786,"proposal":3397},"GOOGLE","Courtney Goeltzenleuchter @courtney-g",{"number":3793,"type":3726,"author":3667,"provisional":3397,"specialuse":3574,"contact":3794,"extension":3785,"proposal":3397},129,"Mark Young @marky-lunarg",{"number":3796,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3797,"contact":3722,"extension":3798,"proposal":1678},284,"d3demulation","VK_EXT_depth_bias_control",{"number":3800,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3801,"extension":3802,"proposal":3397},422,"Graeme Leese @gnl21","VK_EXT_depth_clamp_zero_one",{"number":3804,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3690,"contact":3805,"extension":3806,"proposal":3397},356,"Shahbaz Youssefi @syoussefi","VK_EXT_depth_clip_control",{"number":3808,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3770,"specialuse":3797,"contact":3758,"extension":3809,"proposal":3397},103,"VK_EXT_depth_clip_enable",{"number":1838,"type":3605,"author":3732,"provisional":3397,"ratified":3770,"contact":3758,"extension":3811,"proposal":3397},"VK_EXT_depth_range_unrestricted",{"number":3813,"type":3605,"author":3667,"provisional":3397,"depends":3814,"contact":3609,"extension":3815,"proposal":1678},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":3817,"type":3605,"author":3732,"promotedto":3818,"provisional":3397,"depends":3819,"contact":3752,"extension":3820,"proposal":3397},162,"VK_VERSION_1_2","(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance3),VK_VERSION_1_1","VK_EXT_descriptor_indexing",{"number":3822,"type":3605,"author":3667,"provisional":3397,"depends":3823,"specialuse":3824,"contact":3825,"extension":3826,"proposal":3397},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":3828,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3825,"extension":3829,"proposal":1678},342,"VK_EXT_device_fault",{"number":3831,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3617,"contact":3832,"extension":3833,"proposal":3397},285,"Yiwei Zhang @zhangyiwei","VK_EXT_device_memory_report",{"number":3835,"type":3726,"author":3732,"provisional":3397,"depends":3836,"contact":3734,"extension":3727,"proposal":3397},89,"VK_KHR_display",{"number":3838,"type":3726,"author":3667,"provisional":3397,"depends":3839,"platform":3840,"contact":3841,"extension":3842,"proposal":3397},347,"VK_KHR_surface","directfb","Nicolas Caramelli @caramelli","VK_EXT_directfb_surface",{"number":3844,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3770,"contact":3758,"extension":3845,"proposal":3397},100,"VK_EXT_discard_rectangles",{"number":3847,"type":3605,"author":3732,"provisional":3397,"depends":3848,"ratified":3744,"contact":3734,"extension":3849,"proposal":3397},92,"VK_EXT_display_surface_counter+VK_KHR_swapchain","VK_EXT_display_control",{"number":3851,"type":3726,"author":3732,"provisional":3397,"depends":3836,"ratified":3744,"contact":3734,"extension":3852,"proposal":3397},91,"VK_EXT_display_surface_counter",{"number":3854,"type":3605,"author":3667,"provisional":3397,"depends":3855,"ratified":3744,"contact":3758,"extension":3856,"proposal":1678},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":3858,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3758,"extension":3859,"proposal":3397},268,"VK_EXT_extended_dynamic_state",{"number":3861,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3862,"extension":3863,"proposal":3397},378,"Vikram Kushwaha @vkushwaha-nv","VK_EXT_extended_dynamic_state2",{"number":3865,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3744,"contact":3758,"extension":3866,"proposal":1678},456,"VK_EXT_extended_dynamic_state3",{"number":3868,"type":3605,"author":3667,"provisional":3397,"depends":3869,"ratified":3744,"contact":3870,"extension":3871,"proposal":1678},454,"VK_KHR_external_memory,VK_VERSION_1_1","Lina Versace @versalinyaa","VK_EXT_external_memory_acquire_unmodified",{"number":3873,"type":3605,"author":3667,"provisional":3397,"depends":3874,"ratified":3770,"contact":3870,"extension":3875,"proposal":3397},126,"VK_KHR_external_memory_fd","VK_EXT_external_memory_dma_buf",{"number":3877,"type":3605,"author":3667,"provisional":3397,"depends":3869,"ratified":3770,"contact":3618,"extension":3878,"proposal":3397},179,"VK_EXT_external_memory_host",{"number":3880,"type":3605,"author":3881,"provisional":3397,"ratified":3744,"contact":3882,"extension":3883,"proposal":3397},171,"QCOM","Matthew Netsch @mnetsch","VK_EXT_filter_cubic",{"number":3885,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3882,"extension":3886,"proposal":3397},219,"VK_EXT_fragment_density_map",{"number":3888,"type":3605,"author":3667,"provisional":3397,"depends":3886,"contact":3882,"extension":3889,"proposal":3397},333,"VK_EXT_fragment_density_map2",{"number":3891,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3758,"extension":3892,"proposal":3397},252,"VK_EXT_fragment_shader_interlock",{"number":3894,"type":3605,"author":3667,"provisional":3397,"ratified":3744,"contact":3895,"extension":3896,"proposal":1678},376,"James Fitzpatrick @jamesfitzpatrick","VK_EXT_frame_boundary",{"number":3898,"type":3605,"author":3667,"provisional":3397,"depends":3899,"platform":3900,"ratified":3744,"contact":3734,"extension":3901,"proposal":3397},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":3903,"type":3605,"author":3667,"promotedto":3904,"provisional":3397,"contact":3905,"extension":3906,"proposal":3397},175,"VK_KHR_global_priority","Andres Rodriguez @lostgoat","VK_EXT_global_priority",{"number":3908,"type":3605,"author":3667,"promotedto":3904,"provisional":3397,"depends":3909,"contact":3832,"extension":3910,"proposal":3397},389,"VK_EXT_global_priority+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_global_priority_query",{"number":3912,"type":3605,"author":3606,"provisional":3397,"depends":3913,"contact":3609,"extension":3914,"proposal":1678},321,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_pipeline_library","VK_EXT_graphics_pipeline_library",{"number":3916,"type":3605,"author":3790,"provisional":3397,"depends":3917,"ratified":3770,"contact":3791,"extension":3918,"proposal":3397},106,"VK_KHR_swapchain","VK_EXT_hdr_metadata",{"number":3920,"type":3726,"author":3667,"provisional":3397,"depends":3839,"contact":3921,"extension":3922,"proposal":3397},257,"Lisa Wu @chengtianww","VK_EXT_headless_surface",{"number":3924,"type":3605,"author":3667,"provisional":3397,"depends":3925,"ratified":3744,"contact":3805,"extension":3926,"proposal":1678},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":3928,"type":3605,"author":3667,"promotedto":3818,"provisional":3397,"depends":3622,"contact":3929,"extension":3930,"proposal":3397},262,"Bas Nieuwenhuizen @BNieuwenhuizen","VK_EXT_host_query_reset",{"number":3932,"type":3605,"author":3667,"provisional":3397,"depends":3933,"specialuse":3690,"contact":3745,"extension":3934,"proposal":3397},394,"(VK_KHR_maintenance1+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","VK_EXT_image_2d_view_of_3d",{"number":3936,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3701,"extension":3937,"proposal":1678},339,"VK_EXT_image_compression_control",{"number":3939,"type":3605,"author":3667,"provisional":3397,"depends":3937,"contact":3701,"extension":3940,"proposal":3397},438,"VK_EXT_image_compression_control_swapchain",{"number":3942,"type":3605,"author":3667,"provisional":3397,"depends":3943,"ratified":3744,"contact":3870,"extension":3944,"proposal":3397},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":3946,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3801,"extension":3947,"proposal":3397},336,"VK_EXT_image_robustness",{"number":3949,"type":3605,"author":3667,"provisional":3397,"depends":3933,"specialuse":3797,"contact":3745,"extension":3950,"proposal":1678},419,"VK_EXT_image_sliced_view_of_3d",{"number":3952,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3722,"extension":3953,"proposal":3397},392,"VK_EXT_image_view_min_lod",{"number":3955,"type":3605,"author":3667,"promotedto":3956,"provisional":3397,"depends":3622,"contact":3758,"extension":3957,"proposal":3397},266,"VK_KHR_index_type_uint8","VK_EXT_index_type_uint8",{"number":3959,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3960,"contact":3961,"extension":3962,"proposal":3397},139,"(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance1),VK_VERSION_1_1","Daniel Rakos @aqnuep","VK_EXT_inline_uniform_block",{"number":3964,"type":3726,"author":3667,"provisional":3397,"ratified":3744,"contact":3965,"extension":3966,"proposal":1678},497,"Christophe Riccio @christophe","VK_EXT_layer_settings",{"number":3968,"type":3605,"author":3667,"provisional":3397,"depends":3622,"specialuse":3690,"contact":3805,"extension":3969,"proposal":1678},466,"VK_EXT_legacy_dithering",{"number":3971,"type":3605,"author":3667,"provisional":3397,"depends":3972,"ratified":3744,"specialuse":3690,"contact":3745,"extension":3973,"proposal":1678},496,"VK_EXT_vertex_input_dynamic_state","VK_EXT_legacy_vertex_attributes",{"number":3975,"type":3605,"author":3667,"promotedto":3976,"provisional":3397,"depends":3622,"specialuse":3977,"contact":3752,"extension":3978,"proposal":3397},260,"VK_KHR_line_rasterization","cadsupport","VK_EXT_line_rasterization",{"number":3980,"type":3605,"author":3667,"promotedto":3981,"provisional":3397,"ratified":3744,"contact":3805,"extension":3982,"proposal":3397},401,"VK_KHR_load_store_op_none","VK_EXT_load_store_op_none",{"number":3984,"type":3605,"author":3667,"provisional":3397,"depends":3985,"ratified":3744,"contact":3986,"extension":3987,"proposal":1678},273,"VK_KHR_map_memory2","Faith Ekstrand @gfxstrand","VK_EXT_map_memory_placed",{"number":3989,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":3990,"proposal":3397},238,"VK_EXT_memory_budget",{"number":3992,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":3993,"proposal":3397},239,"VK_EXT_memory_priority",{"number":3995,"type":3605,"author":3667,"provisional":3397,"depends":3996,"contact":3997,"extension":3998,"proposal":1678},329,"VK_KHR_spirv_1_4","Christoph Kubisch @pixeljetstream","VK_EXT_mesh_shader",{"number":4000,"type":3605,"author":3667,"provisional":3397,"platform":4001,"contact":4002,"extension":4003,"proposal":1678},312,"metal","Bill Hollings @billhollings","VK_EXT_metal_objects",{"number":4005,"type":3726,"author":3667,"provisional":3397,"depends":3839,"platform":4001,"contact":4006,"extension":4007,"proposal":3397},218,"Dzmitry Malyshau @kvark","VK_EXT_metal_surface",{"number":4009,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3745,"extension":4010,"proposal":3397},393,"VK_EXT_multi_draw",{"number":4012,"type":3605,"author":3667,"provisional":3397,"depends":4013,"contact":3805,"extension":4014,"proposal":1678},377,"(VK_KHR_create_renderpass2+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_EXT_multisampled_render_to_single_sampled",{"number":4016,"type":3605,"author":3667,"provisional":3397,"depends":4017,"specialuse":3797,"contact":4018,"extension":4019,"proposal":1678},495,"VK_KHR_maintenance3","Joshua Ashton @Joshua-Ashton,Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_mutable_descriptor_type",{"number":4021,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3758,"extension":4022,"proposal":3397},452,"VK_EXT_nested_command_buffer",{"number":4024,"type":3605,"author":3667,"provisional":3397,"depends":3622,"specialuse":4025,"contact":4026,"extension":4027,"proposal":1678},423,"d3demulation,glemulation","Georg Lehmann @DadSchoorse","VK_EXT_non_seamless_cube_map",{"number":4029,"type":3605,"author":3667,"provisional":3397,"depends":4030,"ratified":3744,"contact":4031,"extension":4032,"proposal":1678},397,"VK_KHR_acceleration_structure+(VK_KHR_synchronization2,VK_VERSION_1_3)","Christoph Kubisch @pixeljetstream, Eric Werness","VK_EXT_opacity_micromap",{"number":4034,"type":3605,"author":3667,"provisional":3397,"depends":3993,"contact":3758,"extension":4035,"proposal":3397},413,"VK_EXT_pageable_device_local_memory",{"number":4037,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3770,"contact":3627,"extension":4038,"proposal":3397},213,"VK_EXT_pci_bus_info",{"number":4040,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":4041,"extension":4042,"proposal":3397},354,"Simon Ser @emersion","VK_EXT_physical_device_drm",{"number":4044,"type":3605,"author":3606,"promotedto":3720,"provisional":3397,"depends":3622,"contact":4045,"extension":4046,"proposal":3397},298,"Gregory Grebe @grgrebe_amd","VK_EXT_pipeline_creation_cache_control",{"number":4048,"type":3605,"author":3790,"promotedto":3720,"provisional":3397,"specialuse":3617,"contact":4049,"extension":4050,"proposal":3397},193,"Jean-Francois Roy @jfroy","VK_EXT_pipeline_creation_feedback",{"number":4052,"type":3605,"author":3667,"provisional":3397,"depends":4053,"contact":4054,"extension":4055,"proposal":1678},499,"VK_KHR_ray_tracing_pipeline+VK_KHR_pipeline_library","Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_pipeline_library_group_handles",{"number":4057,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":4058,"extension":4059,"proposal":3397},373,"Mukund Keshava @mkeshavanv","VK_EXT_pipeline_properties",{"number":4061,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":3805,"extension":4062,"proposal":1678},467,"VK_EXT_pipeline_protected_access",{"number":4064,"type":3605,"author":4065,"provisional":3397,"depends":3622,"contact":4066,"extension":4067,"proposal":3397},69,"IMG","Jarred Davies","VK_EXT_pipeline_robustness",{"number":4069,"type":3605,"author":3732,"provisional":3397,"ratified":3744,"contact":4070,"extension":4071,"proposal":3397},156,"Daniel Koch @dgkoch","VK_EXT_post_depth_coverage",{"number":4073,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3690,"contact":3805,"extension":4074,"proposal":3397},357,"VK_EXT_primitive_topology_list_restart",{"number":4076,"type":3605,"author":3667,"provisional":3397,"depends":4077,"specialuse":3690,"contact":3805,"extension":4078,"proposal":1678},383,"VK_EXT_transform_feedback","VK_EXT_primitives_generated_query",{"number":4080,"type":3605,"author":3732,"promotedto":3720,"provisional":3397,"depends":3622,"contact":4081,"extension":4082,"proposal":3397},296,"Matthew Rusch @mattruschnv","VK_EXT_private_data",{"number":4084,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3690,"contact":4085,"extension":4086,"proposal":3397},255,"Jesse Hall @jessehall","VK_EXT_provoking_vertex",{"number":4088,"type":3605,"author":3667,"provisional":3397,"depends":3869,"ratified":3770,"contact":3870,"extension":4089,"proposal":3397},127,"VK_EXT_queue_family_foreign",{"number":4091,"type":3605,"author":3699,"provisional":3397,"depends":3622,"contact":3701,"extension":3700,"proposal":1678},464,{"number":4093,"type":3605,"author":3667,"provisional":3397,"depends":4094,"contact":3701,"extension":4095,"proposal":3397},345,"VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1","VK_EXT_rgba10x6_formats",{"number":4097,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3770,"contact":3782,"extension":4098,"proposal":3397},287,"VK_EXT_robustness2",{"number":4100,"type":3605,"author":3606,"provisional":3397,"depends":3622,"ratified":3770,"contact":3618,"extension":4101,"proposal":3397},144,"VK_EXT_sample_locations",{"number":4103,"type":3605,"author":3732,"promotedto":3818,"provisional":3397,"depends":3622,"contact":3752,"extension":4104,"proposal":3397},131,"VK_EXT_sampler_filter_minmax",{"number":4106,"type":3605,"author":3667,"promotedto":3818,"provisional":3397,"depends":3622,"contact":3609,"extension":4107,"proposal":3397},222,"VK_EXT_scalar_block_layout",{"number":4109,"type":3605,"author":3667,"promotedto":3818,"provisional":3397,"contact":3618,"extension":4110,"proposal":3397},247,"VK_EXT_separate_stencil_usage",{"number":4112,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3770,"contact":3862,"extension":4113,"proposal":3397},261,"VK_EXT_shader_atomic_float",{"number":4115,"type":3605,"author":3667,"provisional":3397,"depends":4113,"ratified":3744,"contact":3986,"extension":4116,"proposal":3397},274,"VK_EXT_shader_atomic_float2",{"number":4118,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3752,"extension":4119,"proposal":3397},277,"VK_EXT_shader_demote_to_helper_invocation",{"number":4121,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3609,"extension":4122,"proposal":3397},235,"VK_EXT_shader_image_atomic_int64",{"number":4124,"type":3605,"author":3667,"provisional":3397,"depends":4125,"contact":4054,"extension":4126,"proposal":1678},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":4128,"type":3605,"author":3667,"provisional":3397,"depends":3855,"ratified":3744,"contact":4129,"extension":4130,"proposal":1678},483,"Daniel Story @daniel-story","VK_EXT_shader_object",{"number":4132,"type":3605,"author":3667,"provisional":3397,"ratified":3744,"contact":3710,"extension":4133,"proposal":1678},565,"VK_EXT_shader_replicated_composites",{"number":4135,"type":3605,"author":3667,"provisional":3397,"ratified":3770,"contact":3633,"extension":4136,"proposal":3397},141,"VK_EXT_shader_stencil_export",{"number":4138,"type":3605,"author":3732,"deprecatedby":3818,"provisional":3397,"contact":4070,"extension":4139,"proposal":3397},65,"VK_EXT_shader_subgroup_ballot",{"number":4141,"type":3605,"author":3732,"deprecatedby":3716,"provisional":3397,"contact":4070,"extension":4142,"proposal":3397},66,"VK_EXT_shader_subgroup_vote",{"number":4144,"type":3605,"author":3667,"provisional":3397,"depends":3720,"ratified":3744,"contact":3701,"extension":4145,"proposal":1678},396,"VK_EXT_shader_tile_image",{"number":4147,"type":3605,"author":3732,"promotedto":3818,"provisional":3397,"contact":4070,"extension":4148,"proposal":3397},163,"VK_EXT_shader_viewport_index_layer",{"number":4150,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3716,"ratified":3721,"contact":4151,"extension":4152,"proposal":3397},226,"Neil Henning @sheredom","VK_EXT_subgroup_size_control",{"number":4154,"type":3605,"author":3667,"provisional":3397,"depends":3622,"contact":4155,"extension":4156,"proposal":1678},459,"Ting Wei @catweiting","VK_EXT_subpass_merge_feedback",{"number":4158,"type":3726,"author":3667,"provisional":3397,"depends":4159,"contact":3805,"extension":4160,"proposal":1678},275,"VK_KHR_surface+VK_KHR_get_surface_capabilities2","VK_EXT_surface_maintenance1",{"number":4162,"type":3726,"author":3790,"provisional":3397,"depends":3839,"contact":3791,"extension":4163,"proposal":3397},105,"VK_EXT_swapchain_colorspace",{"number":4165,"type":3605,"author":3667,"provisional":3397,"depends":4166,"contact":3805,"extension":4167,"proposal":1678},276,"VK_KHR_swapchain+VK_EXT_surface_maintenance1+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_swapchain_maintenance1",{"number":4169,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3752,"extension":4170,"proposal":3397},282,"VK_EXT_texel_buffer_alignment",{"number":4172,"type":3605,"author":3699,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3721,"contact":3701,"extension":4173,"proposal":3397},67,"VK_EXT_texture_compression_astc_hdr",{"number":4175,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"contact":3609,"extension":4176,"proposal":3397},246,"VK_EXT_tooling_info",{"number":3492,"type":3605,"author":3732,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":4178,"contact":3758,"extension":4077,"proposal":3397},"glemulation,d3demulation,devtools",{"number":4180,"type":3605,"author":3790,"provisional":3397,"contact":4181,"extension":4182,"proposal":3397},161,"Cort Stratton @cdwfs","VK_EXT_validation_cache",{"number":4184,"type":3726,"author":4185,"deprecatedby":3966,"provisional":3397,"specialuse":3574,"contact":4186,"extension":4187,"proposal":3397},248,"LUNARG","Karl Schultz @karl-lunarg","VK_EXT_validation_features",{"number":4189,"type":3726,"author":3790,"deprecatedby":3966,"provisional":3397,"specialuse":3574,"contact":4190,"extension":4191,"proposal":3397},62,"Tobin Ehlis @tobine","VK_EXT_validation_flags",{"number":4193,"type":3605,"author":3732,"promotedto":4194,"provisional":3397,"depends":3622,"contact":3775,"extension":4195,"proposal":3397},191,"VK_KHR_vertex_attribute_divisor","VK_EXT_vertex_attribute_divisor",{"number":4197,"type":3605,"author":3667,"provisional":3397,"depends":3622,"ratified":3744,"contact":3758,"extension":3972,"proposal":3397},353,{"number":4199,"type":3605,"author":3667,"promotedto":3720,"provisional":3397,"depends":4094,"ratified":3721,"contact":4200,"extension":4201,"proposal":3397},331,"Tony Zlatinski @tzlatinski","VK_EXT_ycbcr_2plane_444_formats",{"number":4203,"type":3605,"author":3667,"provisional":3397,"depends":4094,"ratified":3770,"contact":3758,"extension":4204,"proposal":3397},253,"VK_EXT_ycbcr_image_arrays",{"number":4206,"type":3605,"author":4207,"provisional":3397,"depends":4208,"platform":4209,"contact":4210,"extension":4211,"proposal":3397},367,"FUCHSIA","VK_FUCHSIA_external_memory+(VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1)","fuchsia","John Rosasco @rosasco","VK_FUCHSIA_buffer_collection",{"number":4213,"type":3605,"author":4207,"provisional":3397,"depends":4214,"platform":4209,"contact":4210,"extension":4215,"proposal":3397},365,"(VK_KHR_external_memory_capabilities+VK_KHR_external_memory),VK_VERSION_1_1","VK_FUCHSIA_external_memory",{"number":4217,"type":3605,"author":4207,"provisional":3397,"depends":4218,"platform":4209,"contact":4210,"extension":4219,"proposal":3397},366,"VK_KHR_external_semaphore_capabilities+VK_KHR_external_semaphore","VK_FUCHSIA_external_semaphore",{"number":4221,"type":3726,"author":4207,"provisional":3397,"depends":3839,"platform":4209,"contact":4222,"extension":4223,"proposal":3397},215,"Craig Stout @cdotstout","VK_FUCHSIA_imagepipe_surface",{"number":4225,"type":3605,"author":4226,"provisional":3397,"depends":4227,"platform":4228,"contact":4049,"extension":4229,"proposal":3397},192,"GGP","VK_KHR_swapchain+VK_GGP_stream_descriptor_surface","ggp","VK_GGP_frame_token",{"number":4231,"type":3726,"author":4226,"provisional":3397,"depends":3839,"platform":4228,"contact":4049,"extension":4232,"proposal":3397},50,"VK_GGP_stream_descriptor_surface",{"number":4234,"type":3605,"author":3790,"provisional":3397,"contact":4235,"extension":4236,"proposal":3397},225,"Hai Nguyen @chaoticbob","VK_GOOGLE_decorate_string",{"number":4238,"type":3605,"author":3790,"provisional":3397,"depends":3917,"contact":4239,"extension":4240,"proposal":3397},93,"Ian Elliott @ianelliottus","VK_GOOGLE_display_timing",{"number":4242,"type":3605,"author":3790,"provisional":3397,"contact":4235,"extension":4243,"proposal":3397},224,"VK_GOOGLE_hlsl_functionality1",{"number":4245,"type":3726,"author":3790,"provisional":3397,"depends":3839,"specialuse":3690,"contact":3805,"extension":4246,"proposal":1678},434,"VK_GOOGLE_surfaceless_query",{"number":4248,"type":3605,"author":3790,"provisional":3397,"contact":4249,"extension":4250,"proposal":3397},290,"Kaye Mason @chaleur","VK_GOOGLE_user_type",{"number":4252,"type":3605,"author":4253,"provisional":3397,"depends":3622,"contact":4254,"extension":4255,"proposal":1678},405,"HUAWEI","Yuchang Wang @richard_Wang2","VK_HUAWEI_cluster_culling_shader",{"number":4257,"type":3605,"author":4258,"provisional":3397,"depends":4259,"contact":4260,"extension":4261,"proposal":1678},371,"Huawei","VK_KHR_ray_tracing_pipeline+(VK_KHR_synchronization2,VK_VERSION_1_3)","Pan Gao @PanGao-h","VK_HUAWEI_invocation_mask",{"number":4263,"type":3605,"author":4253,"provisional":3397,"depends":4264,"contact":4260,"extension":4265,"proposal":3397},370,"((VK_KHR_create_renderpass2,VK_VERSION_1_2)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_HUAWEI_subpass_shading",{"number":1885,"type":3605,"author":4065,"provisional":3397,"contact":3609,"extension":4267,"proposal":3397},"VK_IMG_filter_cubic",{"number":4269,"type":3605,"author":4065,"deprecatedby":4270,"provisional":3397,"contact":4271,"extension":4272,"proposal":3397},55,null,"Stuart Smith","VK_IMG_format_pvrtc",{"number":4274,"type":3605,"author":4065,"provisional":3397,"depends":3622,"specialuse":3690,"contact":3895,"extension":4275,"proposal":3397},111,"VK_IMG_relaxed_line_rasterization",{"number":4277,"type":3605,"author":4278,"provisional":3397,"specialuse":3617,"contact":4279,"extension":4280,"proposal":3397},211,"INTEL","Lionel Landwerlin @llandwerlin","VK_INTEL_performance_query",{"number":4282,"type":3605,"author":4278,"provisional":3397,"depends":3622,"contact":4283,"extension":4284,"proposal":3397},210,"Ian Romanick @ianromanick","VK_INTEL_shader_integer_functions2",{"number":4286,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4288,"ratified":3744,"contact":3701,"extension":4289,"proposal":3397},84,"KHR","(VK_KHR_get_physical_device_properties2+VK_KHR_storage_buffer_storage_class),VK_VERSION_1_1","VK_KHR_16bit_storage",{"number":4291,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4288,"ratified":3744,"contact":4292,"extension":4293,"proposal":3397},178,"Alexander Galazin @alegal-arm","VK_KHR_8bit_storage",{"number":4295,"type":3605,"author":4287,"provisional":3397,"depends":4296,"ratified":3744,"contact":4070,"extension":4297,"proposal":3397},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":1055,"type":3726,"author":4287,"provisional":3397,"depends":3839,"platform":3689,"ratified":3744,"contact":3696,"extension":4299,"proposal":3397},"VK_KHR_android_surface",{"number":4301,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":3609,"extension":4302,"proposal":3397},158,"VK_KHR_bind_memory2",{"number":4304,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4305,"ratified":3744,"contact":3752,"extension":3762,"proposal":3397},258,"(VK_KHR_get_physical_device_properties2+VK_KHR_device_group),VK_VERSION_1_1",{"number":4307,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":3961,"extension":3766,"proposal":3397},544,{"number":4309,"type":3605,"author":4287,"provisional":3397,"depends":4310,"ratified":3744,"contact":4311,"extension":4312,"proposal":1678},512,"VK_KHR_get_physical_device_properties2","Jean-Noe Morissette @MagicPoncho","VK_KHR_compute_shader_derivatives",{"number":4314,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"contact":3710,"extension":4315,"proposal":1678},507,"VK_KHR_cooperative_matrix",{"number":4317,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3770,"contact":3882,"extension":4318,"proposal":3397},338,"VK_KHR_copy_commands2",{"number":4320,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4321,"ratified":3744,"contact":4322,"extension":4323,"proposal":3397},110,"(VK_KHR_multiview+VK_KHR_maintenance2),VK_VERSION_1_1","Tobias Hector @tobias","VK_KHR_create_renderpass2",{"number":4325,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4326,"ratified":3744,"contact":3734,"extension":4327,"proposal":3397},128,"VK_KHR_get_memory_requirements2,VK_VERSION_1_1","VK_KHR_dedicated_allocation",{"number":4329,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":4330,"extension":4331,"proposal":3397},269,"Josh Barczak @jbarczak","VK_KHR_deferred_host_operations",{"number":4333,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4334,"ratified":3744,"contact":4335,"extension":4336,"proposal":3397},200,"VK_KHR_create_renderpass2,VK_VERSION_1_2","Jan-Harald Fredriksen @janharald","VK_KHR_depth_stencil_resolve",{"number":4338,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":4339,"extension":4340,"proposal":3397},86,"Markus Tavenrath @mtavenrath","VK_KHR_descriptor_update_template",{"number":4342,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4343,"ratified":3744,"contact":3752,"extension":4344,"proposal":3397},61,"VK_KHR_device_group_creation","VK_KHR_device_group",{"number":4346,"type":3726,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":3752,"extension":4343,"proposal":3397},71,{"number":936,"type":3726,"author":4287,"provisional":3397,"depends":3839,"ratified":3770,"contact":4348,"extension":3836,"proposal":3397},"James Jones @cubanismo,Norbert Nopper @FslNopper",{"number":960,"type":3605,"author":4287,"provisional":3397,"depends":4350,"ratified":3770,"contact":3734,"extension":4351,"proposal":3397},"VK_KHR_swapchain+VK_KHR_display","VK_KHR_display_swapchain",{"number":4353,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"ratified":3744,"contact":3758,"extension":3630,"proposal":3397},170,{"number":4355,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":3618,"extension":4356,"proposal":3397},197,"VK_KHR_driver_properties",{"number":3556,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":4358,"ratified":3744,"contact":3609,"extension":4359,"proposal":1678},"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_KHR_dynamic_rendering",{"number":4361,"type":3605,"author":3606,"provisional":3397,"depends":4362,"ratified":3744,"contact":3609,"extension":4363,"proposal":1678},233,"VK_KHR_dynamic_rendering,VK_VERSION_1_3","VK_KHR_dynamic_rendering_local_read",{"number":4365,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4366,"ratified":3744,"contact":3696,"extension":4367,"proposal":3397},114,"VK_KHR_external_fence_capabilities","VK_KHR_external_fence",{"number":4369,"type":3726,"author":4287,"promotedto":3716,"provisional":3397,"depends":3622,"ratified":3744,"contact":3696,"extension":4366,"proposal":3397},113,{"number":4371,"type":3605,"author":4287,"provisional":3397,"depends":4372,"ratified":3770,"contact":3696,"extension":4373,"proposal":3397},116,"VK_KHR_external_fence,VK_VERSION_1_1","VK_KHR_external_fence_fd",{"number":4375,"type":3605,"author":4287,"provisional":3397,"depends":4367,"platform":3900,"ratified":3744,"contact":3696,"extension":4376,"proposal":3397},115,"VK_KHR_external_fence_win32",{"number":4378,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4379,"ratified":3744,"contact":3734,"extension":4380,"proposal":3397},73,"VK_KHR_external_memory_capabilities,VK_VERSION_1_1","VK_KHR_external_memory",{"number":4382,"type":3726,"author":4287,"promotedto":3716,"provisional":3397,"depends":3622,"ratified":3744,"contact":3734,"extension":4383,"proposal":3397},72,"VK_KHR_external_memory_capabilities",{"number":4385,"type":3605,"author":4287,"provisional":3397,"depends":3869,"ratified":3770,"contact":3734,"extension":3874,"proposal":3397},75,{"number":4387,"type":3605,"author":4287,"provisional":3397,"depends":3869,"platform":3900,"ratified":3744,"contact":3734,"extension":4388,"proposal":3397},74,"VK_KHR_external_memory_win32",{"number":4390,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4391,"ratified":3744,"contact":3734,"extension":4392,"proposal":3397},78,"VK_KHR_external_semaphore_capabilities","VK_KHR_external_semaphore",{"number":4394,"type":3726,"author":4287,"promotedto":3716,"provisional":3397,"depends":3622,"ratified":3744,"contact":3734,"extension":4391,"proposal":3397},77,{"number":4396,"type":3605,"author":4287,"provisional":3397,"depends":4397,"ratified":3770,"contact":3734,"extension":4398,"proposal":3397},80,"VK_KHR_external_semaphore,VK_VERSION_1_1","VK_KHR_external_semaphore_fd",{"number":4400,"type":3605,"author":4287,"provisional":3397,"depends":4392,"platform":3900,"ratified":3744,"contact":3734,"extension":4401,"proposal":3397},79,"VK_KHR_external_semaphore_win32",{"number":4403,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3744,"contact":4279,"extension":4404,"proposal":3397},361,"VK_KHR_format_feature_flags2",{"number":4406,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"contact":3613,"extension":4407,"proposal":1678},323,"VK_KHR_fragment_shader_barycentric",{"number":4409,"type":3605,"author":4287,"provisional":3397,"depends":4410,"ratified":3770,"contact":3609,"extension":4411,"proposal":1678},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":4413,"type":3726,"author":4287,"provisional":3397,"depends":3836,"ratified":3770,"contact":3734,"extension":4414,"proposal":3397},122,"VK_KHR_get_display_properties2",{"number":4416,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":3986,"extension":4417,"proposal":3397},147,"VK_KHR_get_memory_requirements2",{"number":4419,"type":3726,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":3752,"extension":4310,"proposal":3397},60,{"number":4421,"type":3726,"author":4287,"provisional":3397,"depends":3839,"ratified":3770,"contact":3734,"extension":4422,"proposal":3397},120,"VK_KHR_get_surface_capabilities2",{"number":4424,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":3609,"extension":3904,"proposal":3397},189,{"number":4426,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"ratified":3744,"contact":3986,"extension":4427,"proposal":3397},148,"VK_KHR_image_format_list",{"number":4429,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4430,"ratified":3744,"contact":4322,"extension":4431,"proposal":3397},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":4433,"type":3605,"author":4287,"provisional":3397,"depends":3917,"ratified":3770,"contact":4239,"extension":4434,"proposal":3397},85,"VK_KHR_incremental_present",{"number":4436,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":3758,"extension":3956,"proposal":3397},534,{"number":4438,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":3758,"extension":3976,"proposal":3397},535,{"number":4440,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":3805,"extension":3981,"proposal":1678},527,{"number":4442,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":3758,"extension":3650,"proposal":3397},70,{"number":4444,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":4445,"extension":4446,"proposal":3397},118,"Michael Worcester @michaelworcester","VK_KHR_maintenance2",{"number":4448,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":4017,"proposal":3397},169,{"number":4450,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3716,"ratified":3744,"contact":3758,"extension":4451,"proposal":3397},414,"VK_KHR_maintenance4",{"number":4453,"type":3605,"author":4287,"provisional":3397,"depends":4454,"ratified":3744,"contact":4455,"extension":4456,"proposal":1678},471,"(VK_VERSION_1_1+VK_KHR_dynamic_rendering),VK_VERSION_1_3","Stu Smith @stu-s","VK_KHR_maintenance5",{"number":4458,"type":3605,"author":4287,"provisional":3397,"depends":3716,"ratified":3744,"contact":4459,"extension":4460,"proposal":1678},546,"Jon Leech @oddhack","VK_KHR_maintenance6",{"number":4462,"type":3605,"author":4287,"provisional":3397,"depends":3716,"ratified":3744,"contact":3745,"extension":4463,"proposal":1678},563,"VK_KHR_maintenance7",{"number":4465,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":3986,"extension":3985,"proposal":1678},272,{"number":4467,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":4468,"proposal":3397},54,"VK_KHR_multiview",{"extension":4470,"proposal":3397},"VK_KHR_object_refresh",{"number":4472,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"specialuse":3617,"contact":4473,"extension":4474,"proposal":3397},117,"Alon Or-bach @alonorbach","VK_KHR_performance_query",{"number":4476,"type":3605,"author":4287,"provisional":3397,"depends":4456,"ratified":3744,"contact":4455,"extension":4477,"proposal":1678},484,"VK_KHR_pipeline_binary",{"number":4479,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"specialuse":3617,"contact":3986,"extension":4480,"proposal":3397},270,"VK_KHR_pipeline_executable_properties",{"number":4482,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":3997,"extension":4483,"proposal":3397},291,"VK_KHR_pipeline_library",{"number":4485,"type":3726,"author":4287,"provisional":3397,"ratified":3744,"contact":4486,"extension":4487,"proposal":3397},395,"Charles Giessen @charles-lunarg","VK_KHR_portability_enumeration",{"number":4489,"type":3605,"author":4287,"provisional":1678,"depends":3622,"platform":3608,"ratified":3744,"contact":4002,"extension":4490,"proposal":3397},164,"VK_KHR_portability_subset",{"number":4492,"type":3605,"author":4287,"provisional":3397,"depends":4493,"ratified":3744,"contact":4494,"extension":4495,"proposal":3397},295,"VK_KHR_swapchain+VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","Keith Packard @keithp","VK_KHR_present_id",{"number":4497,"type":3605,"author":4287,"provisional":3397,"depends":4498,"ratified":3744,"contact":4494,"extension":4499,"proposal":3397},249,"VK_KHR_swapchain+VK_KHR_present_id","VK_KHR_present_wait",{"number":4501,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":4502,"proposal":3397},81,"VK_KHR_push_descriptor",{"number":4504,"type":3605,"author":4287,"provisional":3397,"depends":4505,"ratified":3744,"contact":4070,"extension":4506,"proposal":3397},349,"VK_KHR_spirv_1_4+VK_KHR_acceleration_structure","VK_KHR_ray_query",{"number":4508,"type":3605,"author":4287,"provisional":3397,"depends":4297,"ratified":3744,"contact":4070,"extension":4509,"proposal":3397},387,"VK_KHR_ray_tracing_maintenance1",{"number":4511,"type":3605,"author":4287,"provisional":3397,"depends":4505,"ratified":3744,"contact":4070,"extension":4512,"proposal":3397},348,"VK_KHR_ray_tracing_pipeline",{"number":4514,"type":3605,"author":4287,"provisional":3397,"depends":4297,"ratified":3744,"contact":4515,"extension":4516,"proposal":1678},482,"Eric Werness","VK_KHR_ray_tracing_position_fetch",{"number":4518,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":4519,"extension":4520,"proposal":3397},145,"John Kessenich @johnkslang","VK_KHR_relaxed_block_layout",{"number":1859,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"ratified":3744,"contact":3609,"extension":4522,"proposal":3397},"VK_KHR_sampler_mirror_clamp_to_edge",{"number":4524,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4525,"ratified":3744,"contact":4526,"extension":4527,"proposal":3397},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":4529,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4410,"ratified":3744,"contact":3758,"extension":4530,"proposal":3397},242,"VK_KHR_separate_depth_stencil_layouts",{"number":4532,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":4533,"extension":4534,"proposal":3397},181,"Aaron Hagan @ahagan","VK_KHR_shader_atomic_int64",{"number":4536,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":4533,"extension":4537,"proposal":3397},182,"VK_KHR_shader_clock",{"number":4539,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":4070,"extension":4540,"proposal":3397},64,"VK_KHR_shader_draw_parameters",{"number":4542,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"contact":3710,"extension":4543,"proposal":1678},545,"VK_KHR_shader_expect_assume",{"number":4545,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":4292,"extension":3636,"proposal":3397},83,{"number":4547,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":4292,"extension":4548,"proposal":3397},198,"VK_KHR_shader_float_controls",{"number":4550,"type":3605,"author":4287,"provisional":3397,"depends":4551,"ratified":3744,"contact":3801,"extension":4552,"proposal":1678},529,"VK_VERSION_1_1+VK_KHR_shader_float_controls","VK_KHR_shader_float_controls2",{"number":4554,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3744,"contact":3710,"extension":4555,"proposal":1678},281,"VK_KHR_shader_integer_dot_product",{"number":4557,"type":3605,"author":4287,"provisional":3397,"depends":3716,"ratified":3744,"contact":4558,"extension":4559,"proposal":1678},435,"Alan Baker @alan-baker","VK_KHR_shader_maximal_reconvergence",{"number":4561,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"ratified":3744,"contact":3787,"extension":4562,"proposal":3397},294,"VK_KHR_shader_non_semantic_info",{"number":4564,"type":3605,"author":4287,"provisional":3397,"depends":4565,"ratified":3744,"contact":3609,"extension":4566,"proposal":1678},236,"VK_VERSION_1_1+VK_KHR_vulkan_memory_model+VK_KHR_shader_maximal_reconvergence","VK_KHR_shader_quad_control",{"number":4568,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":4569,"extension":4570,"proposal":1678},559,"Nathan Gauër @Keenuts","VK_KHR_shader_relaxed_extended_instruction",{"number":4572,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3716,"ratified":3744,"contact":4151,"extension":4573,"proposal":3397},176,"VK_KHR_shader_subgroup_extended_types",{"number":4575,"type":3605,"author":4287,"provisional":3397,"ratified":3744,"contact":3710,"extension":4576,"proposal":1678},417,"VK_KHR_shader_subgroup_rotate",{"number":4578,"type":3605,"author":4287,"provisional":3397,"depends":3716,"ratified":3744,"contact":4558,"extension":4579,"proposal":3397},324,"VK_KHR_shader_subgroup_uniform_control_flow",{"number":4581,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3770,"contact":3696,"extension":4582,"proposal":3397},216,"VK_KHR_shader_terminate_invocation",{"number":4584,"type":3605,"author":4287,"provisional":3397,"depends":4585,"ratified":3770,"contact":4473,"extension":4586,"proposal":3397},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":4588,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":4551,"ratified":3744,"contact":3696,"extension":3996,"proposal":3397},237,{"number":4590,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"ratified":3744,"contact":4292,"extension":4591,"proposal":3397},132,"VK_KHR_storage_buffer_storage_class",{"number":897,"type":3726,"author":4287,"provisional":3397,"ratified":3770,"contact":4593,"extension":3839,"proposal":3397},"James Jones @cubanismo,Ian Elliott @ianelliottus",{"number":4595,"type":3726,"author":4287,"provisional":3397,"depends":4596,"ratified":3744,"contact":4597,"extension":4598,"proposal":3397},240,"VK_VERSION_1_1+VK_KHR_get_surface_capabilities2","Sandeep Shinde @sashinde","VK_KHR_surface_protected_capabilities",{"number":918,"type":3605,"author":4287,"provisional":3397,"depends":3839,"ratified":3770,"contact":4593,"extension":3917,"proposal":3397},{"number":4601,"type":3605,"author":4287,"provisional":3397,"depends":4602,"ratified":3770,"contact":3618,"extension":4603,"proposal":3397},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":4605,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3770,"contact":3609,"extension":4606,"proposal":3397},315,"VK_KHR_synchronization2",{"number":4608,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":3986,"extension":4609,"proposal":3397},208,"VK_KHR_timeline_semaphore",{"number":4611,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":3801,"extension":4612,"proposal":3397},254,"VK_KHR_uniform_buffer_standard_layout",{"number":4614,"type":3605,"author":4287,"promotedto":3716,"provisional":3397,"depends":4288,"ratified":3744,"contact":3696,"extension":4615,"proposal":3397},121,"VK_KHR_variable_pointers",{"number":4617,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3770,"contact":3805,"extension":4194,"proposal":1678},526,{"number":4619,"type":3605,"author":4287,"provisional":3397,"depends":4620,"ratified":3744,"contact":3961,"extension":4621,"proposal":1678},513,"VK_KHR_video_decode_queue","VK_KHR_video_decode_av1",{"number":3540,"type":3605,"author":4287,"provisional":3397,"depends":4620,"ratified":3744,"contact":4623,"extension":4624,"proposal":1678},"peter.fang@amd.com","VK_KHR_video_decode_h264",{"number":4626,"type":3605,"author":4287,"provisional":3397,"depends":4620,"ratified":3744,"contact":4623,"extension":4627,"proposal":1678},188,"VK_KHR_video_decode_h265",{"number":3476,"type":3605,"author":4287,"provisional":3397,"depends":4629,"ratified":3744,"contact":4630,"extension":4620,"proposal":1678},"VK_KHR_video_queue+(VK_KHR_synchronization2,VK_VERSION_1_3)","jake.beju@amd.com",{"number":3532,"type":3605,"author":4287,"provisional":3397,"depends":4632,"ratified":3744,"contact":4633,"extension":4634,"proposal":1678},"VK_KHR_video_encode_queue","Ahmed Abdelkhalek @aabdelkh","VK_KHR_video_encode_h264",{"number":3536,"type":3605,"author":4287,"provisional":3397,"depends":4632,"ratified":3744,"contact":4633,"extension":4636,"proposal":1678},"VK_KHR_video_encode_h265",{"number":4638,"type":3605,"author":4287,"provisional":3397,"depends":4629,"ratified":3744,"contact":4633,"extension":4632,"proposal":1678},300,{"number":4640,"type":3605,"author":4287,"provisional":3397,"depends":4641,"ratified":3744,"contact":3961,"extension":4642,"proposal":1678},516,"VK_KHR_video_queue","VK_KHR_video_maintenance1",{"number":3472,"type":3605,"author":4287,"provisional":3397,"depends":4644,"ratified":3744,"contact":4200,"extension":4641,"proposal":1678},"(VK_VERSION_1_1+VK_KHR_synchronization2),VK_VERSION_1_3",{"number":4646,"type":3605,"author":4287,"promotedto":3818,"provisional":3397,"depends":3622,"ratified":3744,"contact":3752,"extension":4647,"proposal":3397},212,"VK_KHR_vulkan_memory_model",{"number":1019,"type":3726,"author":4287,"provisional":3397,"depends":3839,"platform":4649,"ratified":3744,"contact":4650,"extension":4651,"proposal":3397},"wayland","Jesse Hall @critsec,Ian Elliott @ianelliottus","VK_KHR_wayland_surface",{"number":4653,"type":3605,"author":4287,"provisional":3397,"depends":4388,"platform":3900,"ratified":3744,"contact":4654,"extension":4655,"proposal":3397},76,"Carsten Rohde @crohde","VK_KHR_win32_keyed_mutex",{"number":1068,"type":3726,"author":4287,"provisional":3397,"depends":3839,"platform":3900,"ratified":3744,"contact":4650,"extension":4657,"proposal":3397},"VK_KHR_win32_surface",{"number":4659,"type":3605,"author":4287,"provisional":3397,"depends":3622,"ratified":3744,"contact":4660,"extension":4661,"proposal":3397},337,"Caio Marcelo de Oliveira Filho @cmarcelo","VK_KHR_workgroup_memory_explicit_layout",{"number":996,"type":3726,"author":4287,"provisional":3397,"depends":3839,"platform":4663,"ratified":3744,"contact":4650,"extension":4664,"proposal":3397},"xcb","VK_KHR_xcb_surface",{"number":978,"type":3726,"author":4287,"provisional":3397,"depends":3839,"platform":4666,"ratified":3744,"contact":4650,"extension":4667,"proposal":3397},"xlib","VK_KHR_xlib_surface",{"number":4669,"type":3605,"author":4287,"promotedto":3720,"provisional":3397,"depends":3622,"ratified":3744,"contact":4558,"extension":4670,"proposal":3397},326,"VK_KHR_zero_initialize_workgroup_memory",{"number":4672,"type":3726,"author":4185,"provisional":3397,"contact":4486,"extension":4673,"proposal":1678},460,"VK_LUNARG_direct_driver_loading",{"number":4675,"type":3605,"author":4676,"provisional":3397,"depends":3622,"specialuse":3797,"contact":4054,"extension":4677,"proposal":3397},576,"MESA","VK_MESA_image_alignment_control",{"number":4679,"type":3605,"author":4680,"provisional":3397,"depends":3622,"contact":4681,"extension":4682,"proposal":1678},531,"MSFT","Jesse Natalie @jenatali","VK_MSFT_layered_driver",{"number":4684,"type":3726,"author":4685,"deprecatedby":4007,"provisional":3397,"depends":3839,"platform":4686,"contact":4002,"extension":4687,"proposal":3397},123,"MVK","ios","VK_MVK_ios_surface",{"number":4689,"type":3726,"author":4685,"deprecatedby":4007,"provisional":3397,"depends":3839,"platform":4690,"contact":4002,"extension":4691,"proposal":3397},124,"macos","VK_MVK_macos_surface",{"number":4693,"type":3726,"author":4694,"provisional":3397,"depends":3839,"platform":4695,"contact":4696,"extension":4697,"proposal":3397},63,"NN","vi","Mathias Heyer gitlab:@mheyer","VK_NN_vi_surface",{"number":3496,"type":3605,"author":4699,"provisional":3397,"contact":4700,"extension":4701,"proposal":3397},"NVX","Eric Werness @ewerness-nv,Liam Middlebrook @liam-middlebrook","VK_NVX_binary_import",{"number":3500,"type":3605,"author":4699,"provisional":3397,"contact":4703,"extension":4704,"proposal":3397},"Eric Werness @ewerness-nv","VK_NVX_image_view_handle",{"number":4706,"type":3605,"author":4699,"provisional":3397,"depends":4707,"contact":3752,"extension":4708,"proposal":3397},98,"VK_KHR_multiview,VK_VERSION_1_1","VK_NVX_multiview_per_view_attributes",{"number":4710,"type":3605,"author":3732,"provisional":3397,"depends":3727,"platform":3900,"contact":4711,"extension":4712,"proposal":3397},346,"Jeff Juliano @jjuliano","VK_NV_acquire_winrt_display",{"number":4714,"type":3605,"author":3732,"provisional":3397,"contact":4703,"extension":4715,"proposal":3397},88,"VK_NV_clip_space_w_scaling",{"number":4717,"type":3605,"author":3732,"provisional":3397,"contact":4718,"extension":4719,"proposal":3397},560,"Lujin Wang @lujinwangnv","VK_NV_command_buffer_inheritance",{"number":4721,"type":3605,"author":3732,"promotedto":4312,"provisional":3397,"depends":3622,"contact":4722,"extension":4723,"proposal":3397},202,"Pat Brown @nvpbrown","VK_NV_compute_shader_derivatives",{"number":4725,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":3752,"extension":4726,"proposal":3397},250,"VK_NV_cooperative_matrix",{"number":4728,"type":3605,"author":3732,"provisional":3397,"depends":4729,"contact":3862,"extension":4730,"proposal":3397},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":4732,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4070,"extension":4733,"proposal":3397},51,"VK_NV_corner_sampled_image",{"number":4735,"type":3605,"author":3732,"provisional":3397,"depends":4736,"contact":4737,"extension":4738,"proposal":3397},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":4740,"type":3605,"author":3732,"provisional":1678,"contact":4741,"extension":4742,"proposal":3397},308,"Tristan Lorach @tlorach","VK_NV_cuda_kernel_launch",{"number":3484,"type":3605,"author":3732,"deprecatedby":4327,"provisional":3397,"contact":3752,"extension":4744,"proposal":3397},"VK_NV_dedicated_allocation",{"number":4746,"type":3605,"author":4747,"provisional":3397,"depends":4748,"contact":4749,"extension":4750,"proposal":3397},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":4752,"type":3605,"author":3732,"provisional":3397,"depends":3716,"contact":3758,"extension":4753,"proposal":3397},547,"VK_NV_descriptor_pool_overallocation",{"number":4755,"type":3605,"author":4747,"provisional":3397,"depends":3622,"contact":4749,"extension":4756,"proposal":3397},207,"VK_NV_device_diagnostic_checkpoints",{"number":4758,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4737,"extension":4759,"proposal":3397},301,"VK_NV_device_diagnostics_config",{"number":4761,"type":3605,"author":3732,"provisional":3397,"depends":4762,"contact":3997,"extension":4763,"proposal":3397},278,"(VK_VERSION_1_1+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_NV_device_generated_commands",{"number":4765,"type":3605,"author":3732,"provisional":3397,"depends":4763,"contact":3862,"extension":4766,"proposal":3397},429,"VK_NV_device_generated_commands_compute",{"number":4768,"type":3605,"author":3732,"provisional":1678,"depends":4032,"platform":3608,"contact":4769,"extension":4770,"proposal":3397},398,"Christoph Kubisch @pixeljetstream, Eric Werness @ewerness-nv","VK_NV_displacement_micromap",{"number":4772,"type":3605,"author":3732,"provisional":3397,"contact":4773,"extension":4774,"proposal":3397},493,"Russell Chou @russellcnv","VK_NV_extended_sparse_address_space",{"number":4776,"type":3605,"author":3732,"deprecatedby":4380,"provisional":3397,"depends":4777,"contact":3734,"extension":4778,"proposal":3397},57,"VK_NV_external_memory_capabilities","VK_NV_external_memory",{"number":4780,"type":3726,"author":3732,"deprecatedby":4383,"provisional":3397,"contact":3734,"extension":4777,"proposal":3397},56,{"number":4782,"type":3605,"author":3732,"provisional":3397,"depends":3869,"contact":4654,"extension":4783,"proposal":3397},372,"VK_NV_external_memory_rdma",{"extension":4785,"proposal":3397},"VK_NV_external_memory_sci_buf",{"number":4787,"type":3605,"author":3732,"deprecatedby":4388,"provisional":3397,"depends":4778,"platform":3900,"contact":3734,"extension":4788,"proposal":3397},58,"VK_NV_external_memory_win32",{"extension":4790,"proposal":3397},"VK_NV_external_sci_sync",{"extension":4792,"proposal":3397},"VK_NV_external_sci_sync2",{"number":4794,"type":3605,"author":3732,"provisional":3397,"contact":3752,"extension":4795,"proposal":3397},154,"VK_NV_fill_rectangle",{"number":4797,"type":3605,"author":3732,"provisional":3397,"contact":3752,"extension":4798,"proposal":3397},150,"VK_NV_fragment_coverage_to_color",{"number":4800,"type":3605,"author":3732,"promotedto":4407,"provisional":3397,"depends":3622,"contact":4722,"extension":4801,"proposal":3397},204,"VK_NV_fragment_shader_barycentric",{"number":4803,"type":3605,"author":3732,"provisional":3397,"depends":4411,"contact":4722,"extension":4804,"proposal":3397},327,"VK_NV_fragment_shading_rate_enums",{"number":4806,"type":3605,"author":3732,"provisional":3397,"contact":3752,"extension":4807,"proposal":3397},153,"VK_NV_framebuffer_mixed_samples",{"number":4809,"type":3605,"author":3732,"provisional":3397,"contact":4070,"extension":4810,"proposal":3397},96,"VK_NV_geometry_shader_passthrough",{"number":1108,"type":3605,"author":3732,"deprecatedby":4270,"provisional":3397,"contact":3758,"extension":4812,"proposal":3397},"VK_NV_glsl_shader",{"number":4814,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4815,"extension":4816,"proposal":3397},279,"David Zhao Akeley @akeley98","VK_NV_inherited_viewport_scissor",{"number":4818,"type":3605,"author":4747,"provisional":3397,"depends":3622,"contact":4819,"extension":4820,"proposal":3397},431,"sourav parmar @souravpNV","VK_NV_linear_color_attachment",{"number":4822,"type":3605,"author":3732,"provisional":3397,"contact":4823,"extension":4824,"proposal":3397},311,"Charles Hansen @cshansen","VK_NV_low_latency",{"number":4826,"type":3605,"author":3732,"provisional":3397,"depends":4827,"contact":4823,"extension":4828,"proposal":3397},506,"VK_VERSION_1_2,VK_KHR_timeline_semaphore","VK_NV_low_latency2",{"number":4830,"type":3605,"author":3732,"provisional":3397,"depends":4729,"contact":3862,"extension":4831,"proposal":3397},428,"VK_NV_memory_decompression",{"number":4833,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":3997,"extension":4834,"proposal":3397},203,"VK_NV_mesh_shader",{"number":4836,"type":3605,"author":3732,"provisional":3397,"depends":4837,"contact":4654,"extension":4838,"proposal":3397},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":4840,"type":3605,"author":3732,"provisional":3397,"depends":4460,"contact":3758,"extension":4841,"proposal":3397},517,"VK_NV_per_stage_descriptor_set",{"number":4843,"type":3605,"author":3732,"provisional":3397,"depends":3899,"contact":4844,"extension":4845,"proposal":3397},293,"Liya Li @liyli","VK_NV_present_barrier",{"extension":4847,"proposal":3397},"VK_NV_private_vendor_info",{"number":4849,"type":3605,"author":3732,"provisional":3397,"contact":4850,"extension":4851,"proposal":3397},556,"Rodrigo Locatti @rlocatti","VK_NV_raw_access_chains",{"number":4853,"type":3605,"author":3732,"deprecatedby":4512,"provisional":3397,"depends":4854,"contact":4703,"extension":4855,"proposal":3397},166,"(VK_KHR_get_physical_device_properties2+VK_KHR_get_memory_requirements2),VK_VERSION_1_1","VK_NV_ray_tracing",{"number":4857,"type":3605,"author":3732,"provisional":3397,"depends":4512,"contact":4703,"extension":4858,"proposal":3397},491,"VK_NV_ray_tracing_invocation_reorder",{"number":4860,"type":3605,"author":3732,"provisional":3397,"depends":4512,"contact":4515,"extension":4861,"proposal":3397},328,"VK_NV_ray_tracing_motion_blur",{"number":4863,"type":3605,"author":3732,"provisional":3397,"contact":3862,"extension":4864,"proposal":1678},569,"VK_NV_ray_tracing_validation",{"number":4866,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4737,"extension":4867,"proposal":3397},167,"VK_NV_representative_fragment_test",{"number":4869,"type":3605,"author":3732,"provisional":3397,"contact":3758,"extension":4870,"proposal":3397},95,"VK_NV_sample_mask_override_coverage",{"number":4872,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4722,"extension":4873,"proposal":3397},206,"VK_NV_scissor_exclusive",{"number":4875,"type":3605,"author":3732,"provisional":3397,"contact":3752,"extension":4876,"proposal":3397},564,"VK_NV_shader_atomic_float16_vector",{"number":4878,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4722,"extension":4879,"proposal":3397},205,"VK_NV_shader_image_footprint",{"number":4881,"type":3605,"author":3732,"provisional":3397,"depends":3716,"contact":4070,"extension":4882,"proposal":3397},155,"VK_NV_shader_sm_builtins",{"number":4884,"type":3605,"author":3732,"provisional":3397,"depends":3716,"contact":3752,"extension":4885,"proposal":3397},199,"VK_NV_shader_subgroup_partitioned",{"number":4887,"type":3605,"author":3732,"provisional":3397,"depends":3622,"contact":4722,"extension":4888,"proposal":3397},165,"VK_NV_shading_rate_image",{"number":4890,"type":3605,"author":3732,"provisional":3397,"contact":4070,"extension":4891,"proposal":3397},97,"VK_NV_viewport_array2",{"number":4893,"type":3605,"author":3732,"provisional":3397,"contact":3758,"extension":4894,"proposal":3397},99,"VK_NV_viewport_swizzle",{"number":4896,"type":3605,"author":3732,"promotedto":4655,"provisional":3397,"depends":4788,"platform":3900,"contact":4654,"extension":4897,"proposal":3397},59,"VK_NV_win32_keyed_mutex",{"number":4899,"type":3605,"author":3881,"provisional":3397,"depends":4900,"contact":3882,"extension":4901,"proposal":3397},522,"(VK_EXT_filter_cubic)+(VK_VERSION_1_2,VK_EXT_sampler_filter_minmax)","VK_QCOM_filter_cubic_clamp",{"number":4903,"type":3605,"author":3881,"provisional":3397,"depends":3883,"contact":3882,"extension":4904,"proposal":3397},520,"VK_QCOM_filter_cubic_weights",{"number":4906,"type":3605,"author":3881,"provisional":3397,"depends":4907,"contact":3882,"extension":4908,"proposal":3397},426,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_fragment_density_map","VK_QCOM_fragment_density_map_offset",{"number":4910,"type":3605,"author":3881,"provisional":3397,"depends":4911,"contact":3882,"extension":4912,"proposal":1678},441,"VK_KHR_format_feature_flags2,VK_VERSION_1_3","VK_QCOM_image_processing",{"number":4914,"type":3605,"author":3881,"provisional":3397,"depends":4912,"contact":3882,"extension":4915,"proposal":3397},519,"VK_QCOM_image_processing2",{"number":4917,"type":3605,"author":3881,"provisional":3397,"contact":3882,"extension":4918,"proposal":3397},511,"VK_QCOM_multiview_per_view_render_areas",{"number":4920,"type":3605,"author":3881,"provisional":3397,"depends":3622,"contact":3882,"extension":4921,"proposal":3397},489,"VK_QCOM_multiview_per_view_viewports",{"number":4923,"type":3605,"author":3881,"provisional":3397,"contact":3882,"extension":4924,"proposal":3397},172,"VK_QCOM_render_pass_shader_resolve",{"number":4926,"type":3605,"author":3881,"provisional":3397,"contact":3882,"extension":4927,"proposal":3397},302,"VK_QCOM_render_pass_store_ops",{"number":4929,"type":3605,"author":3881,"provisional":3397,"contact":3882,"extension":4930,"proposal":3397},283,"VK_QCOM_render_pass_transform",{"number":4932,"type":3605,"author":3881,"provisional":3397,"depends":4933,"contact":3882,"extension":4934,"proposal":3397},334,"VK_KHR_copy_commands2,VK_VERSION_1_3","VK_QCOM_rotated_copy_commands",{"number":4936,"type":3605,"author":3881,"provisional":3397,"depends":3622,"contact":3882,"extension":4937,"proposal":1678},485,"VK_QCOM_tile_properties",{"number":4939,"type":3605,"author":3881,"provisional":3397,"contact":3882,"extension":4940,"proposal":3397},521,"VK_QCOM_ycbcr_degamma",{"number":4942,"type":3605,"author":4943,"provisional":3397,"depends":3695,"platform":4944,"contact":4945,"extension":4946,"proposal":3397},530,"QNX","screen","Mike Gorchak @mgorchak-blackberry, Aaron Ruby @aruby-blackberry","VK_QNX_external_memory_screen_buffer",{"number":4948,"type":3726,"author":4943,"provisional":3397,"depends":3839,"platform":4944,"contact":4949,"extension":4950,"proposal":3397},379,"Mike Gorchak @mgorchak-blackberry","VK_QNX_screen_surface",{"number":4952,"type":3605,"author":4953,"provisional":3397,"depends":3622,"contact":3825,"extension":4954,"proposal":3397},486,"SEC","VK_SEC_amigo_profiling",{"number":4956,"type":3605,"author":4957,"provisional":3397,"depends":3622,"specialuse":3797,"contact":4054,"extension":4958,"proposal":3397},421,"VALVE","VK_VALVE_descriptor_set_host_mapping",{"number":4960,"type":3605,"author":4957,"promotedto":4019,"provisional":3397,"depends":4017,"specialuse":3797,"contact":4018,"extension":4961,"proposal":3397},352,"VK_VALVE_mutable_descriptor_type",1725732624520]