[{"data":1,"prerenderedAt":3924},["ShallowReactive",2],{"DdxZy3Pnzl":3,"VyF3Mmj32r":2338,"N9m89Rcq0G":2564},{"title":4,"description":5,"body":6,"_type":2336,"_id":2337},"Ray Tracing","Ray tracing uses a separate rendering pipeline from both the graphics and\ncompute pipelines (see Ray Tracing Pipeline).",{"type":7,"children":8,"toc":2323},"root",[9,17,32,42,103,118,149,156,174,184,603,608,651,675,694,698,739,786,798,811,924,930,945,956,964,973,982,992,1001,1010,1016,1040,1076,1101,1118,1182,1219,1243,1269,1299,1306,1321,1328,1333,1391,1416,1422,1443,1464,1522,1555,1573,1620,1637,1654,1697,1703,1713,1744,1783,1800,1824,1839,1856,1880,1886,1896,1926,1973,1990,2015,2030,2047,2071,2077,2097,2102,2124,2129,2139,2196,2202,2232,2244,2271,2277,2292],{"type":10,"tag":11,"props":12,"children":14},"element","h1",{"id":13},"ray-tracing",[15],{"type":16,"value":4},"text",{"type":10,"tag":18,"props":19,"children":20},"p",{},[21,23,30],{"type":16,"value":22},"Ray tracing uses a separate rendering pipeline from both the graphics and\ncompute pipelines (see ",{"type":10,"tag":24,"props":25,"children":27},"a",{"href":26},"/chapters/pipelines#pipelines-ray-tracing",[28],{"type":16,"value":29},"Ray Tracing Pipeline",{"type":16,"value":31},").",{"type":10,"tag":18,"props":33,"children":34},{},[35],{"type":10,"tag":36,"props":37,"children":41},"img",{"alt":38,"src":39,"title":40},"ray tracing execution","https://data.vkdoc.net/images/ray_tracing_execution.svg","Ray tracing pipeline execution",[],{"type":10,"tag":18,"props":43,"children":44},{},[45,47,53,55,60,62,68,70,76,78,84,86,93,95,101],{"type":16,"value":46},"Within the ray tracing pipeline, a ",{"type":10,"tag":24,"props":48,"children":50},{"href":49},"/404#glossary-pipeline-trace-ray",[51],{"type":16,"value":52},"pipeline\ntrace ray",{"type":16,"value":54}," instruction ",{"type":10,"tag":56,"props":57,"children":59},"normative",{"type":58},"can",[],{"type":16,"value":61}," be called to perform a ",{"type":10,"tag":24,"props":63,"children":65},{"href":64},"/chapters/ray-traversal#ray-traversal",[66],{"type":16,"value":67},"ray\ntraversal",{"type":16,"value":69}," that invokes the various ray tracing shader stages during its\nexecution.\nThe relationship between the ray tracing pipeline object and the geometries\npresent in the acceleration structure traversed is passed into the ray\ntracing command in a ",{"type":10,"tag":24,"props":71,"children":73},{"href":72},"/man/VkBuffer",[74],{"type":16,"value":75},"VkBuffer",{"type":16,"value":77}," object known as a ",{"type":10,"tag":79,"props":80,"children":81},"em",{},[82],{"type":16,"value":83},"shader binding\ntable",{"type":16,"value":85},".\n",{"type":10,"tag":87,"props":88,"children":90},"code",{"className":89},[],[91],{"type":16,"value":92},"OpExecuteCallableKHR",{"type":16,"value":94}," can also be used in ray tracing pipelines to\ninvoke a ",{"type":10,"tag":24,"props":96,"children":98},{"href":97},"/chapters/shaders#shaders-callable",[99],{"type":16,"value":100},"callable shader",{"type":16,"value":102},".",{"type":10,"tag":18,"props":104,"children":105},{},[106,108,116],{"type":16,"value":107},"During execution, control alternates between scheduling and other\noperations.\nThe scheduling functionality is implementation-specific and is responsible\nfor workload execution.\nThe shader stages are programmable.\n",{"type":10,"tag":24,"props":109,"children":110},{"href":64},[111],{"type":10,"tag":79,"props":112,"children":113},{},[114],{"type":16,"value":115},"Traversal",{"type":16,"value":117},", which refers to the process of traversing\nacceleration structures to find potential intersections of rays with\ngeometry, is fixed function.",{"type":10,"tag":18,"props":119,"children":120},{},[121,123,126,128,134,136,141,143,147],{"type":16,"value":122},"The programmable portions of the pipeline are exposed in a single-ray\nprogramming model, with each invocation handling one ray at a time.\nMemory operations ",{"type":10,"tag":56,"props":124,"children":125},{"type":58},[],{"type":16,"value":127}," be synchronized using standard memory barriers.\nThe ",{"type":10,"tag":87,"props":129,"children":131},{"className":130},[],[132],{"type":16,"value":133},"Workgroup",{"type":16,"value":135}," scope and variables with a storage class of\n",{"type":10,"tag":87,"props":137,"children":139},{"className":138},[],[140],{"type":16,"value":133},{"type":16,"value":142}," ",{"type":10,"tag":56,"props":144,"children":146},{"type":145},"must",[],{"type":16,"value":148}," not be used in the ray tracing pipeline.",{"type":10,"tag":150,"props":151,"children":153},"h2",{"id":152},"ray-tracing-shader-call",[154],{"type":16,"value":155},"Shader Call Instructions",{"type":10,"tag":18,"props":157,"children":158},{},[159,161,166,168,172],{"type":16,"value":160},"A ",{"type":10,"tag":79,"props":162,"children":163},{},[164],{"type":16,"value":165},"shader call",{"type":16,"value":167}," is an instruction which ",{"type":10,"tag":56,"props":169,"children":171},{"type":170},"may",[],{"type":16,"value":173}," cause execution to continue\nelsewhere by creating one or more invocations that execute a different\nshader stage.",{"type":10,"tag":18,"props":175,"children":176},{},[177,179,182],{"type":16,"value":178},"The following table lists all shader call instructions and which stages each\none ",{"type":10,"tag":56,"props":180,"children":181},{"type":58},[],{"type":16,"value":183}," directly call.",{"type":10,"tag":185,"props":186,"children":192},"table",{"className":187},[188,189,190,191],"tableblock","frame-all","grid-all","stretch",[193,218,265],{"type":10,"tag":194,"props":195,"children":196},"colgroup",{},[197,202,205,208,211,214],{"type":10,"tag":198,"props":199,"children":201},"col",{"style":200},"width: 16.6666%;",[],{"type":10,"tag":198,"props":203,"children":204},{"style":200},[],{"type":10,"tag":198,"props":206,"children":207},{"style":200},[],{"type":10,"tag":198,"props":209,"children":210},{"style":200},[],{"type":10,"tag":198,"props":212,"children":213},{"style":200},[],{"type":10,"tag":198,"props":215,"children":217},{"style":216},"width: 16.667%;",[],{"type":10,"tag":219,"props":220,"children":221},"thead",{},[222],{"type":10,"tag":223,"props":224,"children":225},"tr",{},[226,235,241,247,253,259],{"type":10,"tag":227,"props":228,"children":232},"th",{"className":229},[188,230,231],"halign-left","valign-top",[233],{"type":16,"value":234},"Instruction",{"type":10,"tag":227,"props":236,"children":238},{"className":237},[188,230,231],[239],{"type":16,"value":240},"Intersection",{"type":10,"tag":227,"props":242,"children":244},{"className":243},[188,230,231],[245],{"type":16,"value":246},"Any-Hit",{"type":10,"tag":227,"props":248,"children":250},{"className":249},[188,230,231],[251],{"type":16,"value":252},"Closest Hit",{"type":10,"tag":227,"props":254,"children":256},{"className":255},[188,230,231],[257],{"type":16,"value":258},"Miss",{"type":10,"tag":227,"props":260,"children":262},{"className":261},[188,230,231],[263],{"type":16,"value":264},"Callable",{"type":10,"tag":266,"props":267,"children":268},"tbody",{},[269,328,384,425,465,511,557],{"type":10,"tag":223,"props":270,"children":271},{},[272,287,297,306,315,324],{"type":10,"tag":273,"props":274,"children":276},"td",{"className":275},[188,230,231],[277],{"type":10,"tag":18,"props":278,"children":280},{"className":279},[188],[281],{"type":10,"tag":282,"props":283,"children":284},"literal",{},[285],{"type":16,"value":286},"OpTraceRayKHR",{"type":10,"tag":273,"props":288,"children":290},{"className":289},[188,230,231],[291],{"type":10,"tag":18,"props":292,"children":294},{"className":293},[188],[295],{"type":16,"value":296},"X",{"type":10,"tag":273,"props":298,"children":300},{"className":299},[188,230,231],[301],{"type":10,"tag":18,"props":302,"children":304},{"className":303},[188],[305],{"type":16,"value":296},{"type":10,"tag":273,"props":307,"children":309},{"className":308},[188,230,231],[310],{"type":10,"tag":18,"props":311,"children":313},{"className":312},[188],[314],{"type":16,"value":296},{"type":10,"tag":273,"props":316,"children":318},{"className":317},[188,230,231],[319],{"type":10,"tag":18,"props":320,"children":322},{"className":321},[188],[323],{"type":16,"value":296},{"type":10,"tag":273,"props":325,"children":327},{"className":326},[188,230,231],[],{"type":10,"tag":223,"props":329,"children":330},{},[331,344,353,362,371,380],{"type":10,"tag":273,"props":332,"children":334},{"className":333},[188,230,231],[335],{"type":10,"tag":18,"props":336,"children":338},{"className":337},[188],[339],{"type":10,"tag":282,"props":340,"children":341},{},[342],{"type":16,"value":343},"OpTraceRayMotionNV",{"type":10,"tag":273,"props":345,"children":347},{"className":346},[188,230,231],[348],{"type":10,"tag":18,"props":349,"children":351},{"className":350},[188],[352],{"type":16,"value":296},{"type":10,"tag":273,"props":354,"children":356},{"className":355},[188,230,231],[357],{"type":10,"tag":18,"props":358,"children":360},{"className":359},[188],[361],{"type":16,"value":296},{"type":10,"tag":273,"props":363,"children":365},{"className":364},[188,230,231],[366],{"type":10,"tag":18,"props":367,"children":369},{"className":368},[188],[370],{"type":16,"value":296},{"type":10,"tag":273,"props":372,"children":374},{"className":373},[188,230,231],[375],{"type":10,"tag":18,"props":376,"children":378},{"className":377},[188],[379],{"type":16,"value":296},{"type":10,"tag":273,"props":381,"children":383},{"className":382},[188,230,231],[],{"type":10,"tag":223,"props":385,"children":386},{},[387,400,404,413,417,421],{"type":10,"tag":273,"props":388,"children":390},{"className":389},[188,230,231],[391],{"type":10,"tag":18,"props":392,"children":394},{"className":393},[188],[395],{"type":10,"tag":282,"props":396,"children":397},{},[398],{"type":16,"value":399},"OpReportIntersectionKHR",{"type":10,"tag":273,"props":401,"children":403},{"className":402},[188,230,231],[],{"type":10,"tag":273,"props":405,"children":407},{"className":406},[188,230,231],[408],{"type":10,"tag":18,"props":409,"children":411},{"className":410},[188],[412],{"type":16,"value":296},{"type":10,"tag":273,"props":414,"children":416},{"className":415},[188,230,231],[],{"type":10,"tag":273,"props":418,"children":420},{"className":419},[188,230,231],[],{"type":10,"tag":273,"props":422,"children":424},{"className":423},[188,230,231],[],{"type":10,"tag":223,"props":426,"children":427},{},[428,440,444,448,452,456],{"type":10,"tag":273,"props":429,"children":431},{"className":430},[188,230,231],[432],{"type":10,"tag":18,"props":433,"children":435},{"className":434},[188],[436],{"type":10,"tag":282,"props":437,"children":438},{},[439],{"type":16,"value":92},{"type":10,"tag":273,"props":441,"children":443},{"className":442},[188,230,231],[],{"type":10,"tag":273,"props":445,"children":447},{"className":446},[188,230,231],[],{"type":10,"tag":273,"props":449,"children":451},{"className":450},[188,230,231],[],{"type":10,"tag":273,"props":453,"children":455},{"className":454},[188,230,231],[],{"type":10,"tag":273,"props":457,"children":459},{"className":458},[188,230,231],[460],{"type":10,"tag":18,"props":461,"children":463},{"className":462},[188],[464],{"type":16,"value":296},{"type":10,"tag":223,"props":466,"children":467},{},[468,481,490,499,503,507],{"type":10,"tag":273,"props":469,"children":471},{"className":470},[188,230,231],[472],{"type":10,"tag":18,"props":473,"children":475},{"className":474},[188],[476],{"type":10,"tag":282,"props":477,"children":478},{},[479],{"type":16,"value":480},"OpHitObjectTraceRayNV",{"type":10,"tag":273,"props":482,"children":484},{"className":483},[188,230,231],[485],{"type":10,"tag":18,"props":486,"children":488},{"className":487},[188],[489],{"type":16,"value":296},{"type":10,"tag":273,"props":491,"children":493},{"className":492},[188,230,231],[494],{"type":10,"tag":18,"props":495,"children":497},{"className":496},[188],[498],{"type":16,"value":296},{"type":10,"tag":273,"props":500,"children":502},{"className":501},[188,230,231],[],{"type":10,"tag":273,"props":504,"children":506},{"className":505},[188,230,231],[],{"type":10,"tag":273,"props":508,"children":510},{"className":509},[188,230,231],[],{"type":10,"tag":223,"props":512,"children":513},{},[514,527,536,545,549,553],{"type":10,"tag":273,"props":515,"children":517},{"className":516},[188,230,231],[518],{"type":10,"tag":18,"props":519,"children":521},{"className":520},[188],[522],{"type":10,"tag":282,"props":523,"children":524},{},[525],{"type":16,"value":526},"OpHitObjectTraceRayMotionNV",{"type":10,"tag":273,"props":528,"children":530},{"className":529},[188,230,231],[531],{"type":10,"tag":18,"props":532,"children":534},{"className":533},[188],[535],{"type":16,"value":296},{"type":10,"tag":273,"props":537,"children":539},{"className":538},[188,230,231],[540],{"type":10,"tag":18,"props":541,"children":543},{"className":542},[188],[544],{"type":16,"value":296},{"type":10,"tag":273,"props":546,"children":548},{"className":547},[188,230,231],[],{"type":10,"tag":273,"props":550,"children":552},{"className":551},[188,230,231],[],{"type":10,"tag":273,"props":554,"children":556},{"className":555},[188,230,231],[],{"type":10,"tag":223,"props":558,"children":559},{},[560,573,577,581,590,599],{"type":10,"tag":273,"props":561,"children":563},{"className":562},[188,230,231],[564],{"type":10,"tag":18,"props":565,"children":567},{"className":566},[188],[568],{"type":10,"tag":282,"props":569,"children":570},{},[571],{"type":16,"value":572},"OpHitObjectExecuteShaderNV",{"type":10,"tag":273,"props":574,"children":576},{"className":575},[188,230,231],[],{"type":10,"tag":273,"props":578,"children":580},{"className":579},[188,230,231],[],{"type":10,"tag":273,"props":582,"children":584},{"className":583},[188,230,231],[585],{"type":10,"tag":18,"props":586,"children":588},{"className":587},[188],[589],{"type":16,"value":296},{"type":10,"tag":273,"props":591,"children":593},{"className":592},[188,230,231],[594],{"type":10,"tag":18,"props":595,"children":597},{"className":596},[188],[598],{"type":16,"value":296},{"type":10,"tag":273,"props":600,"children":602},{"className":601},[188,230,231],[],{"type":10,"tag":604,"props":605,"children":607},"anchor",{"id":606},"ray-tracing-recursion-depth",[],{"type":10,"tag":18,"props":609,"children":610},{},[611,616,617,620,622,625,627,637,639,649],{"type":10,"tag":79,"props":612,"children":613},{},[614],{"type":16,"value":615},"Pipeline trace ray instructions",{"type":16,"value":142},{"type":10,"tag":56,"props":618,"children":619},{"type":58},[],{"type":16,"value":621}," be used recursively; invoked shaders\n",{"type":10,"tag":56,"props":623,"children":624},{"type":58},[],{"type":16,"value":626}," themselves execute pipeline trace ray instructions, to a maximum depth\ndefined by the\n",{"type":10,"tag":24,"props":628,"children":630},{"href":629},"/man/VkPhysicalDeviceRayTracingPropertiesNV#limits-maxRecursionDepth",[631],{"type":10,"tag":87,"props":632,"children":634},{"className":633},[],[635],{"type":16,"value":636},"maxRecursionDepth",{"type":16,"value":638}," or\n",{"type":10,"tag":24,"props":640,"children":642},{"href":641},"/man/VkPhysicalDeviceRayTracingPipelinePropertiesKHR#limits-maxRayRecursionDepth",[643],{"type":10,"tag":87,"props":644,"children":646},{"className":645},[],[647],{"type":16,"value":648},"maxRayRecursionDepth",{"type":16,"value":650}," limit.",{"type":10,"tag":18,"props":652,"children":653},{},[654,656,659,661,666,667,673],{"type":16,"value":655},"Shaders directly invoked from the API always have a recursion depth of 0;\neach shader executed by a pipeline trace ray instruction has a recursion\ndepth one higher than the recursion depth of the shader which invoked it.\nApplications ",{"type":10,"tag":56,"props":657,"children":658},{"type":145},[],{"type":16,"value":660}," not invoke a shader with a recursion depth greater than\nthe value of\n",{"type":10,"tag":87,"props":662,"children":664},{"className":663},[],[665],{"type":16,"value":636},{"type":16,"value":638},{"type":10,"tag":87,"props":668,"children":670},{"className":669},[],[671],{"type":16,"value":672},"maxPipelineRayRecursionDepth",{"type":16,"value":674}," specified in the pipeline.",{"type":10,"tag":18,"props":676,"children":677},{},[678,680,685,687,693],{"type":16,"value":679},"There is no explicit recursion limit for other shader call instructions\nwhich may recurse (e.g. ",{"type":10,"tag":87,"props":681,"children":683},{"className":682},[],[684],{"type":16,"value":92},{"type":16,"value":686},") but there is an upper\nbound determined by the ",{"type":10,"tag":24,"props":688,"children":690},{"href":689},"/chapters/ray-tracing#ray-tracing-pipeline-stack",[691],{"type":16,"value":692},"stack size",{"type":16,"value":102},{"type":10,"tag":604,"props":695,"children":697},{"id":696},"ray-tracing-repack",[],{"type":10,"tag":18,"props":699,"children":700},{},[701,703,708,710,713,715,718,720,723,725,731,733,738],{"type":16,"value":702},"An ",{"type":10,"tag":79,"props":704,"children":705},{},[706],{"type":16,"value":707},"invocation repack instruction",{"type":16,"value":709}," is a ray tracing instruction where the\nimplementation ",{"type":10,"tag":56,"props":711,"children":712},{"type":170},[],{"type":16,"value":714}," change the set of invocations that are executing.\nWhen a repack instruction is encountered, the invocation is suspended and a\nnew invocation begins and executes the instruction.\nAfter executing the repack instruction (which ",{"type":10,"tag":56,"props":716,"children":717},{"type":170},[],{"type":16,"value":719}," result in other ray\ntracing shader stages executing) the new invocation ends and the original\ninvocation is resumed, but it ",{"type":10,"tag":56,"props":721,"children":722},{"type":170},[],{"type":16,"value":724}," be resumed in a different subgroup or at\na different ",{"type":10,"tag":87,"props":726,"children":728},{"className":727},[],[729],{"type":16,"value":730},"SubgroupLocalInvocationId",{"type":16,"value":732}," within the same subgroup.\nWhen a subset of invocations in a subgroup execute the invocation repack\ninstruction, those that do not execute it remain in the same subgroup at the\nsame ",{"type":10,"tag":87,"props":734,"children":736},{"className":735},[],[737],{"type":16,"value":730},{"type":16,"value":102},{"type":10,"tag":18,"props":740,"children":741},{},[742,744,749,751,756,757,763,765,771,772,777,779,784],{"type":16,"value":743},"The ",{"type":10,"tag":87,"props":745,"children":747},{"className":746},[],[748],{"type":16,"value":286},{"type":16,"value":750},",\n",{"type":10,"tag":87,"props":752,"children":754},{"className":753},[],[755],{"type":16,"value":343},{"type":16,"value":750},{"type":10,"tag":87,"props":758,"children":760},{"className":759},[],[761],{"type":16,"value":762},"OpReorderThreadWithHintNV",{"type":16,"value":764},", ",{"type":10,"tag":87,"props":766,"children":768},{"className":767},[],[769],{"type":16,"value":770},"OpReorderThreadWithHitObjectNV",{"type":16,"value":750},{"type":10,"tag":87,"props":773,"children":775},{"className":774},[],[776],{"type":16,"value":399},{"type":16,"value":778},", and ",{"type":10,"tag":87,"props":780,"children":782},{"className":781},[],[783],{"type":16,"value":92},{"type":16,"value":785}," instructions are\ninvocation repack instructions.",{"type":10,"tag":18,"props":787,"children":788},{},[789,791,797],{"type":16,"value":790},"When a ray tracing shader executes a dynamic instance of an invocation\nrepack instruction which results in another ray tracing shader being\ninvoked, their instructions are related by\n",{"type":10,"tag":24,"props":792,"children":794},{"href":793},"/chapters/memory-model#shader-call-order",[795],{"type":16,"value":796},"shader-call-order",{"type":16,"value":102},{"type":10,"tag":18,"props":799,"children":800},{},[801,803,809],{"type":16,"value":802},"For ray tracing invocations that are\n",{"type":10,"tag":24,"props":804,"children":806},{"href":805},"/chapters/memory-model#shader-call-related",[807],{"type":16,"value":808},"shader-call-related",{"type":16,"value":810},":",{"type":10,"tag":812,"props":813,"children":814},"ul",{},[815,862,911],{"type":10,"tag":816,"props":817,"children":818},"li",{},[819,825,827,833,834,840,841,847,849,852,854,860],{"type":10,"tag":24,"props":820,"children":822},{"href":821},"/chapters/memory-model#memory-model-memory-operation",[823],{"type":16,"value":824},"memory operations",{"type":16,"value":826}," on\n",{"type":10,"tag":87,"props":828,"children":830},{"className":829},[],[831],{"type":16,"value":832},"StorageBuffer",{"type":16,"value":764},{"type":10,"tag":87,"props":835,"children":837},{"className":836},[],[838],{"type":16,"value":839},"Image",{"type":16,"value":778},{"type":10,"tag":87,"props":842,"children":844},{"className":843},[],[845],{"type":16,"value":846},"ShaderRecordBufferKHR",{"type":16,"value":848}," storage\nclasses ",{"type":10,"tag":56,"props":850,"children":851},{"type":58},[],{"type":16,"value":853}," be synchronized using the\n",{"type":10,"tag":87,"props":855,"children":857},{"className":856},[],[858],{"type":16,"value":859},"ShaderCallKHR",{"type":16,"value":861},"\nscope.",{"type":10,"tag":816,"props":863,"children":864},{},[865,867,873,874,880,881,887,888,894,895,901,903,909],{"type":16,"value":866},"the ",{"type":10,"tag":87,"props":868,"children":870},{"className":869},[],[871],{"type":16,"value":872},"CallableDataKHR",{"type":16,"value":764},{"type":10,"tag":87,"props":875,"children":877},{"className":876},[],[878],{"type":16,"value":879},"IncomingCallableDataKHR",{"type":16,"value":750},{"type":10,"tag":87,"props":882,"children":884},{"className":883},[],[885],{"type":16,"value":886},"RayPayloadKHR",{"type":16,"value":764},{"type":10,"tag":87,"props":889,"children":891},{"className":890},[],[892],{"type":16,"value":893},"HitAttributeKHR",{"type":16,"value":778},{"type":10,"tag":87,"props":896,"children":898},{"className":897},[],[899],{"type":16,"value":900},"IncomingRayPayloadKHR",{"type":16,"value":902},"\nstorage classes are ",{"type":10,"tag":24,"props":904,"children":906},{"href":905},"/chapters/memory-model#memory-model-shader-io",[907],{"type":16,"value":908},"system-synchronized",{"type":16,"value":910}," and\nno application availability and visibility operations are required.",{"type":10,"tag":816,"props":912,"children":913},{},[914,916,922],{"type":16,"value":915},"memory operations within a single invocation before and after the shader\ncall instruction are ordered by\n",{"type":10,"tag":24,"props":917,"children":919},{"href":918},"/chapters/memory-model#memory-model-program-order",[920],{"type":16,"value":921},"program-order",{"type":16,"value":923}," and do not require explicit\nsynchronization.",{"type":10,"tag":150,"props":925,"children":927},{"id":926},"ray-tracing-commands",[928],{"type":16,"value":929},"Ray Tracing Commands",{"type":10,"tag":18,"props":931,"children":932},{},[933,938,940,943],{"type":10,"tag":79,"props":934,"children":935},{},[936],{"type":16,"value":937},"Ray tracing commands",{"type":16,"value":939}," provoke work in the ray tracing pipeline.\nRay tracing commands are recorded into a command buffer and when executed by\na queue will produce work that executes according to the currently bound ray\ntracing pipeline.\nA ray tracing pipeline ",{"type":10,"tag":56,"props":941,"children":942},{"type":145},[],{"type":16,"value":944}," be bound to a command buffer before any ray\ntracing commands are recorded in that command buffer.",{"type":10,"tag":946,"props":947,"children":950},"refpage",{"name":948,"type":949},"vkCmdTraceRaysNV","protos",[951],{"type":10,"tag":18,"props":952,"children":953},{},[954],{"type":16,"value":955},"Initialize a ray tracing dispatch",{"type":10,"tag":946,"props":957,"children":959},{"name":958,"type":949},"vkCmdTraceRaysKHR",[960],{"type":10,"tag":18,"props":961,"children":962},{},[963],{"type":16,"value":955},{"type":10,"tag":946,"props":965,"children":967},{"name":966,"type":949},"vkCmdBindInvocationMaskHUAWEI",[968],{"type":10,"tag":18,"props":969,"children":970},{},[971],{"type":16,"value":972},"Bind an invocation mask image on a command buffer",{"type":10,"tag":946,"props":974,"children":976},{"name":975,"type":949},"vkCmdTraceRaysIndirectKHR",[977],{"type":10,"tag":18,"props":978,"children":979},{},[980],{"type":16,"value":981},"Initialize an indirect ray tracing dispatch",{"type":10,"tag":946,"props":983,"children":986},{"name":984,"type":985},"VkTraceRaysIndirectCommandKHR","structs",[987],{"type":10,"tag":18,"props":988,"children":989},{},[990],{"type":16,"value":991},"Structure specifying the parameters of an indirect ray tracing command",{"type":10,"tag":946,"props":993,"children":995},{"name":994,"type":949},"vkCmdTraceRaysIndirect2KHR",[996],{"type":10,"tag":18,"props":997,"children":998},{},[999],{"type":16,"value":1000},"Initialize an indirect ray tracing dispatch with indirect shader binding tables",{"type":10,"tag":946,"props":1002,"children":1004},{"name":1003,"type":985},"VkTraceRaysIndirectCommand2KHR",[1005],{"type":10,"tag":18,"props":1006,"children":1007},{},[1008],{"type":16,"value":1009},"Structure specifying the parameters of an indirect trace ray command with indirect shader binding tables",{"type":10,"tag":150,"props":1011,"children":1013},{"id":1012},"shader-binding-table",[1014],{"type":16,"value":1015},"Shader Binding Table",{"type":10,"tag":18,"props":1017,"children":1018},{},[1019,1020,1025,1027,1032,1034,1038],{"type":16,"value":160},{"type":10,"tag":79,"props":1021,"children":1022},{},[1023],{"type":16,"value":1024},"shader binding table",{"type":16,"value":1026}," is a resource which establishes the relationship\nbetween the ray tracing pipeline and the acceleration structures that were\nbuilt for the ray tracing pipeline.\nIt indicates the shaders that operate on each geometry in an acceleration\nstructure.\nIn addition, it contains the resources accessed by each shader, including\nindices of textures, buffer device addresses, and constants.\nThe application allocates and manages ",{"type":10,"tag":79,"props":1028,"children":1029},{},[1030],{"type":16,"value":1031},"shader binding tables",{"type":16,"value":1033}," as\n",{"type":10,"tag":24,"props":1035,"children":1036},{"href":72},[1037],{"type":16,"value":75},{"type":16,"value":1039}," objects.",{"type":10,"tag":18,"props":1041,"children":1042},{},[1043,1045,1051,1053,1059,1061,1067,1069,1074],{"type":16,"value":1044},"Each entry in the shader binding table consists of\n",{"type":10,"tag":87,"props":1046,"children":1048},{"className":1047},[],[1049],{"type":16,"value":1050},"shaderGroupHandleSize",{"type":16,"value":1052}," bytes of data, either as queried by\n",{"type":10,"tag":24,"props":1054,"children":1056},{"href":1055},"/man/vkGetRayTracingShaderGroupHandlesKHR",[1057],{"type":16,"value":1058},"vkGetRayTracingShaderGroupHandlesKHR",{"type":16,"value":1060}," to refer to those specified\nshaders, or all zeros to refer to a zero shader group.\nA zero shader group behaves as though it is a shader group consisting\nentirely of ",{"type":10,"tag":87,"props":1062,"children":1064},{"className":1063},[],[1065],{"type":16,"value":1066},"VK_SHADER_UNUSED_KHR",{"type":16,"value":1068},".\nThe remainder of the data specified by the stride is application-visible\ndata that can be referenced by a ",{"type":10,"tag":87,"props":1070,"children":1072},{"className":1071},[],[1073],{"type":16,"value":846},{"type":16,"value":1075}," block in the\nshader.",{"type":10,"tag":18,"props":1077,"children":1078},{},[1079,1081,1086,1087,1092,1094,1099],{"type":16,"value":1080},"The shader binding tables to use in a ray tracing pipeline are passed to the\n",{"type":10,"tag":24,"props":1082,"children":1084},{"href":1083},"/man/vkCmdTraceRaysNV",[1085],{"type":16,"value":948},{"type":16,"value":750},{"type":10,"tag":24,"props":1088,"children":1090},{"href":1089},"/man/vkCmdTraceRaysKHR",[1091],{"type":16,"value":958},{"type":16,"value":1093},", or ",{"type":10,"tag":24,"props":1095,"children":1097},{"href":1096},"/man/vkCmdTraceRaysIndirectKHR",[1098],{"type":16,"value":975},{"type":16,"value":1100}," commands.\nShader binding tables are read-only in shaders that are executing on the ray\ntracing pipeline.",{"type":10,"tag":18,"props":1102,"children":1103},{},[1104,1106,1111,1113,1116],{"type":16,"value":1105},"Shader variables identified with the ",{"type":10,"tag":87,"props":1107,"children":1109},{"className":1108},[],[1110],{"type":16,"value":846},{"type":16,"value":1112}," storage\nclass are used to access the provided shader binding table.\nSuch variables ",{"type":10,"tag":56,"props":1114,"children":1115},{"type":145},[],{"type":16,"value":1117}," be:",{"type":10,"tag":812,"props":1119,"children":1120},{},[1121,1134,1147],{"type":10,"tag":816,"props":1122,"children":1123},{},[1124,1126,1132],{"type":16,"value":1125},"typed as ",{"type":10,"tag":87,"props":1127,"children":1129},{"className":1128},[],[1130],{"type":16,"value":1131},"OpTypeStruct",{"type":16,"value":1133},", or an array of this type,",{"type":10,"tag":816,"props":1135,"children":1136},{},[1137,1139,1145],{"type":16,"value":1138},"identified with a ",{"type":10,"tag":87,"props":1140,"children":1142},{"className":1141},[],[1143],{"type":16,"value":1144},"Block",{"type":16,"value":1146}," decoration, and",{"type":10,"tag":816,"props":1148,"children":1149},{},[1150,1152,1158,1159,1165,1167,1173,1175,1181],{"type":16,"value":1151},"laid out explicitly using the ",{"type":10,"tag":87,"props":1153,"children":1155},{"className":1154},[],[1156],{"type":16,"value":1157},"Offset",{"type":16,"value":764},{"type":10,"tag":87,"props":1160,"children":1162},{"className":1161},[],[1163],{"type":16,"value":1164},"ArrayStride",{"type":16,"value":1166},", and\n",{"type":10,"tag":87,"props":1168,"children":1170},{"className":1169},[],[1171],{"type":16,"value":1172},"MatrixStride",{"type":16,"value":1174}," decorations as specified in\n",{"type":10,"tag":24,"props":1176,"children":1178},{"href":1177},"/chapters/interfaces#interfaces-resources-layout",[1179],{"type":16,"value":1180},"Offset and Stride Assignment",{"type":16,"value":102},{"type":10,"tag":18,"props":1183,"children":1184},{},[1185,1186,1191,1193,1198,1200,1205,1207,1210,1212,1218],{"type":16,"value":743},{"type":10,"tag":87,"props":1187,"children":1189},{"className":1188},[],[1190],{"type":16,"value":1157},{"type":16,"value":1192}," decoration for any member of a ",{"type":10,"tag":87,"props":1194,"children":1196},{"className":1195},[],[1197],{"type":16,"value":1144},{"type":16,"value":1199},"-decorated variable\nin the ",{"type":10,"tag":87,"props":1201,"children":1203},{"className":1202},[],[1204],{"type":16,"value":846},{"type":16,"value":1206}," storage class ",{"type":10,"tag":56,"props":1208,"children":1209},{"type":145},[],{"type":16,"value":1211}," not cause the space\nrequired for that variable to extend outside the range [0,\n",{"type":10,"tag":87,"props":1213,"children":1215},{"className":1214},[],[1216],{"type":16,"value":1217},"maxStorageBufferRange",{"type":16,"value":31},{"type":10,"tag":18,"props":1220,"children":1221},{},[1222,1224,1227,1229,1235,1237],{"type":16,"value":1223},"Accesses to the shader binding table from ray tracing pipelines ",{"type":10,"tag":56,"props":1225,"children":1226},{"type":145},[],{"type":16,"value":1228}," be\n",{"type":10,"tag":24,"props":1230,"children":1232},{"href":1231},"/chapters/synchronization#synchronization-dependencies",[1233],{"type":16,"value":1234},"synchronized",{"type":16,"value":1236}," with the\n",{"type":10,"tag":87,"props":1238,"children":1240},{"className":1239},[],[1241],{"type":16,"value":1242},"VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR",{"type":10,"tag":18,"props":1244,"children":1245},{},[1246,1252,1254,1260,1262,1268],{"type":10,"tag":24,"props":1247,"children":1249},{"href":1248},"/chapters/synchronization#synchronization-pipeline-stages",[1250],{"type":16,"value":1251},"pipeline stage",{"type":16,"value":1253}," and an\n",{"type":10,"tag":24,"props":1255,"children":1257},{"href":1256},"/chapters/synchronization#synchronization-access-types",[1258],{"type":16,"value":1259},"access type",{"type":16,"value":1261}," of\n",{"type":10,"tag":87,"props":1263,"children":1265},{"className":1264},[],[1266],{"type":16,"value":1267},"VK_ACCESS_SHADER_READ_BIT",{"type":16,"value":102},{"type":10,"tag":1270,"props":1271,"children":1272},"note",{},[1273],{"type":10,"tag":18,"props":1274,"children":1275},{},[1276,1278,1283,1285,1290,1292,1298],{"type":16,"value":1277},"Because different shader record buffers can be associated with the same\nshader, a shader variable with ",{"type":10,"tag":87,"props":1279,"children":1281},{"className":1280},[],[1282],{"type":16,"value":846},{"type":16,"value":1284}," storage class will\nnot be dynamically uniform if different invocations of the same shader can\nreference different data in the shader record buffer, such as if the same\nshader occurs twice in the shader binding table with a different shader\nrecord buffer.\nIn this case, indexing resources based on values in the\n",{"type":10,"tag":87,"props":1286,"children":1288},{"className":1287},[],[1289],{"type":16,"value":846},{"type":16,"value":1291}," storage class, the index should be decorated as\n",{"type":10,"tag":87,"props":1293,"children":1295},{"className":1294},[],[1296],{"type":16,"value":1297},"NonUniform",{"type":16,"value":102},{"type":10,"tag":1300,"props":1301,"children":1303},"h3",{"id":1302},"shader-binding-table-indexing-rules",[1304],{"type":16,"value":1305},"Indexing Rules",{"type":10,"tag":18,"props":1307,"children":1308},{},[1309,1311,1314,1316,1319],{"type":16,"value":1310},"In order to execute the correct shaders and access the correct resources\nduring a ray tracing dispatch, the implementation ",{"type":10,"tag":56,"props":1312,"children":1313},{"type":145},[],{"type":16,"value":1315}," be able to locate\nshader binding table entries at various stages of execution.\nThis is accomplished by defining a set of indexing rules that compute shader\nbinding table record positions relative to the buffer’s base address in\nmemory.\nThe application ",{"type":10,"tag":56,"props":1317,"children":1318},{"type":145},[],{"type":16,"value":1320}," organize the contents of the shader binding table’s\nmemory in a way that application of the indexing rules will lead to correct\nrecords.",{"type":10,"tag":1322,"props":1323,"children":1325},"h4",{"id":1324},"_ray_generation_shaders",[1326],{"type":16,"value":1327},"Ray Generation Shaders",{"type":10,"tag":18,"props":1329,"children":1330},{},[1331],{"type":16,"value":1332},"Only one ray generation shader is executed per ray tracing dispatch.",{"type":10,"tag":18,"props":1334,"children":1335},{},[1336,1338,1342,1344,1350,1352,1355,1357,1363,1365,1371,1372,1378,1380,1383,1385,1390],{"type":16,"value":1337},"For ",{"type":10,"tag":24,"props":1339,"children":1340},{"href":1089},[1341],{"type":16,"value":958},{"type":16,"value":1343},", the location of the ray generation shader is\nspecified by the ",{"type":10,"tag":87,"props":1345,"children":1347},{"className":1346},[],[1348],{"type":16,"value":1349},"pRaygenShaderBindingTable→deviceAddress",{"type":16,"value":1351}," parameter — there is no indexing.\nAll data accessed ",{"type":10,"tag":56,"props":1353,"children":1354},{"type":145},[],{"type":16,"value":1356}," be less than ",{"type":10,"tag":87,"props":1358,"children":1360},{"className":1359},[],[1361],{"type":16,"value":1362},"pRaygenShaderBindingTable→size",{"type":16,"value":1364},"\nbytes from ",{"type":10,"tag":87,"props":1366,"children":1368},{"className":1367},[],[1369],{"type":16,"value":1370},"deviceAddress",{"type":16,"value":85},{"type":10,"tag":87,"props":1373,"children":1375},{"className":1374},[],[1376],{"type":16,"value":1377},"pRaygenShaderBindingTable→stride",{"type":16,"value":1379}," is unused, and ",{"type":10,"tag":56,"props":1381,"children":1382},{"type":145},[],{"type":16,"value":1384}," be equal to\n",{"type":10,"tag":87,"props":1386,"children":1388},{"className":1387},[],[1389],{"type":16,"value":1362},{"type":16,"value":102},{"type":10,"tag":18,"props":1392,"children":1393},{},[1394,1395,1399,1400,1406,1408,1414],{"type":16,"value":1337},{"type":10,"tag":24,"props":1396,"children":1397},{"href":1083},[1398],{"type":16,"value":948},{"type":16,"value":1343},{"type":10,"tag":87,"props":1401,"children":1403},{"className":1402},[],[1404],{"type":16,"value":1405},"raygenShaderBindingTableBuffer",{"type":16,"value":1407}," and\n",{"type":10,"tag":87,"props":1409,"children":1411},{"className":1410},[],[1412],{"type":16,"value":1413},"raygenShaderBindingOffset",{"type":16,"value":1415}," parameters — there is no indexing.",{"type":10,"tag":1322,"props":1417,"children":1419},{"id":1418},"shader-binding-table-hit-shader-indexing",[1420],{"type":16,"value":1421},"Hit Shaders",{"type":10,"tag":18,"props":1423,"children":1424},{},[1425,1427,1433,1435,1441],{"type":16,"value":1426},"The base for the computation of intersection, any-hit, and closest hit\nshader locations is the ",{"type":10,"tag":87,"props":1428,"children":1430},{"className":1429},[],[1431],{"type":16,"value":1432},"instanceShaderBindingTableRecordOffset",{"type":16,"value":1434}," value\nstored with each instance of a top-level acceleration structure\n(",{"type":10,"tag":24,"props":1436,"children":1438},{"href":1437},"/man/VkAccelerationStructureInstanceKHR",[1439],{"type":16,"value":1440},"VkAccelerationStructureInstanceKHR",{"type":16,"value":1442},").\nThis value determines the beginning of the shader binding table records for\na given instance.",{"type":10,"tag":18,"props":1444,"children":1445},{},[1446,1448,1454,1456,1462],{"type":16,"value":1447},"In the following rule, ",{"type":10,"tag":87,"props":1449,"children":1451},{"className":1450},[],[1452],{"type":16,"value":1453},"geometryIndex",{"type":16,"value":1455}," refers to the\n",{"type":10,"tag":24,"props":1457,"children":1459},{"href":1458},"/man/VkAccelerationStructureBuildGeometryInfoKHR#acceleration-structure-geometry-index",[1460],{"type":16,"value":1461},"geometry index",{"type":16,"value":1463}," of the intersected\ngeometry within the instance.",{"type":10,"tag":18,"props":1465,"children":1466},{},[1467,1468,1474,1476,1482,1484,1490,1492,1498,1500,1506,1507,1513,1515,1520],{"type":16,"value":743},{"type":10,"tag":87,"props":1469,"children":1471},{"className":1470},[],[1472],{"type":16,"value":1473},"sbtRecordOffset",{"type":16,"value":1475}," and ",{"type":10,"tag":87,"props":1477,"children":1479},{"className":1478},[],[1480],{"type":16,"value":1481},"sbtRecordStride",{"type":16,"value":1483}," values are passed in as\nparameters to\n",{"type":10,"tag":87,"props":1485,"children":1487},{"className":1486},[],[1488],{"type":16,"value":1489},"traceNV",{"type":16,"value":1491},"()\nor\n",{"type":10,"tag":87,"props":1493,"children":1495},{"className":1494},[],[1496],{"type":16,"value":1497},"traceRayEXT",{"type":16,"value":1499},"()\ncalls made in the shaders.\nSee Section 8.19 (Ray Tracing Functions) of the OpenGL Shading Language\nSpecification for more details.\nIn SPIR-V, these correspond to the ",{"type":10,"tag":87,"props":1501,"children":1503},{"className":1502},[],[1504],{"type":16,"value":1505},"SBTOffset",{"type":16,"value":1475},{"type":10,"tag":87,"props":1508,"children":1510},{"className":1509},[],[1511],{"type":16,"value":1512},"SBTStride",{"type":16,"value":1514},"\nparameters to the ",{"type":10,"tag":24,"props":1516,"children":1517},{"href":49},[1518],{"type":16,"value":1519},"pipeline trace ray",{"type":16,"value":1521},"\ninstructions.",{"type":10,"tag":18,"props":1523,"children":1524},{},[1525,1527,1533,1535,1539,1541,1547,1549,1553],{"type":16,"value":1526},"The result of this computation is then added to\n",{"type":10,"tag":87,"props":1528,"children":1530},{"className":1529},[],[1531],{"type":16,"value":1532},"pHitShaderBindingTable→deviceAddress",{"type":16,"value":1534},", a device address passed to\n",{"type":10,"tag":24,"props":1536,"children":1537},{"href":1089},[1538],{"type":16,"value":958},{"type":16,"value":1540},"\n, or\n",{"type":10,"tag":87,"props":1542,"children":1544},{"className":1543},[],[1545],{"type":16,"value":1546},"hitShaderBindingOffset",{"type":16,"value":1548},", a base offset passed to ",{"type":10,"tag":24,"props":1550,"children":1551},{"href":1083},[1552],{"type":16,"value":948},{"type":16,"value":1554},"\n.",{"type":10,"tag":18,"props":1556,"children":1557},{},[1558,1559,1563,1565,1571],{"type":16,"value":1337},{"type":10,"tag":24,"props":1560,"children":1561},{"href":1089},[1562],{"type":16,"value":958},{"type":16,"value":1564},", the complete rule to compute a hit shader\nbinding table record address in the ",{"type":10,"tag":87,"props":1566,"children":1568},{"className":1567},[],[1569],{"type":16,"value":1570},"pHitShaderBindingTable",{"type":16,"value":1572}," is:",{"type":10,"tag":812,"props":1574,"children":1575},{},[1576],{"type":10,"tag":816,"props":1577,"children":1578},{},[1579,1584,1586,1592,1594,1599,1600,1605,1607,1612,1613,1618],{"type":10,"tag":87,"props":1580,"children":1582},{"className":1581},[],[1583],{"type":16,"value":1532},{"type":16,"value":1585}," +\n",{"type":10,"tag":87,"props":1587,"children":1589},{"className":1588},[],[1590],{"type":16,"value":1591},"pHitShaderBindingTable→stride",{"type":16,"value":1593}," × (\n",{"type":10,"tag":87,"props":1595,"children":1597},{"className":1596},[],[1598],{"type":16,"value":1432},{"type":16,"value":1585},{"type":10,"tag":87,"props":1601,"children":1603},{"className":1602},[],[1604],{"type":16,"value":1453},{"type":16,"value":1606}," × ",{"type":10,"tag":87,"props":1608,"children":1610},{"className":1609},[],[1611],{"type":16,"value":1481},{"type":16,"value":1585},{"type":10,"tag":87,"props":1614,"children":1616},{"className":1615},[],[1617],{"type":16,"value":1473},{"type":16,"value":1619}," )",{"type":10,"tag":18,"props":1621,"children":1622},{},[1623,1625,1628,1629,1635],{"type":16,"value":1624},"All data accessed ",{"type":10,"tag":56,"props":1626,"children":1627},{"type":145},[],{"type":16,"value":1356},{"type":10,"tag":87,"props":1630,"children":1632},{"className":1631},[],[1633],{"type":16,"value":1634},"pHitShaderBindingTable→size",{"type":16,"value":1636},"\nbytes from the base address.",{"type":10,"tag":18,"props":1638,"children":1639},{},[1640,1641,1645,1647,1653],{"type":16,"value":1337},{"type":10,"tag":24,"props":1642,"children":1643},{"href":1083},[1644],{"type":16,"value":948},{"type":16,"value":1646},", the offset and stride come from direct\nparameters, so the full rule to compute a hit shader binding table record\naddress in the ",{"type":10,"tag":87,"props":1648,"children":1650},{"className":1649},[],[1651],{"type":16,"value":1652},"hitShaderBindingTableBuffer",{"type":16,"value":1572},{"type":10,"tag":812,"props":1655,"children":1656},{},[1657],{"type":10,"tag":816,"props":1658,"children":1659},{},[1660,1665,1666,1672,1673,1678,1679,1684,1685,1690,1691,1696],{"type":10,"tag":87,"props":1661,"children":1663},{"className":1662},[],[1664],{"type":16,"value":1546},{"type":16,"value":1585},{"type":10,"tag":87,"props":1667,"children":1669},{"className":1668},[],[1670],{"type":16,"value":1671},"hitShaderBindingStride",{"type":16,"value":1593},{"type":10,"tag":87,"props":1674,"children":1676},{"className":1675},[],[1677],{"type":16,"value":1432},{"type":16,"value":1585},{"type":10,"tag":87,"props":1680,"children":1682},{"className":1681},[],[1683],{"type":16,"value":1453},{"type":16,"value":1606},{"type":10,"tag":87,"props":1686,"children":1688},{"className":1687},[],[1689],{"type":16,"value":1481},{"type":16,"value":1585},{"type":10,"tag":87,"props":1692,"children":1694},{"className":1693},[],[1695],{"type":16,"value":1473},{"type":16,"value":1619},{"type":10,"tag":1322,"props":1698,"children":1700},{"id":1699},"_miss_shaders",[1701],{"type":16,"value":1702},"Miss Shaders",{"type":10,"tag":18,"props":1704,"children":1705},{},[1706,1708,1711],{"type":16,"value":1707},"A miss shader is executed whenever a ray query fails to find an intersection\nfor the given scene geometry.\nMultiple miss shaders ",{"type":10,"tag":56,"props":1709,"children":1710},{"type":170},[],{"type":16,"value":1712}," be executed throughout a ray tracing dispatch.",{"type":10,"tag":18,"props":1714,"children":1715},{},[1716,1718,1724,1726,1730,1731,1737,1739,1743],{"type":16,"value":1717},"The base for the computation of miss shader locations is\n",{"type":10,"tag":87,"props":1719,"children":1721},{"className":1720},[],[1722],{"type":16,"value":1723},"pMissShaderBindingTable→deviceAddress",{"type":16,"value":1725},", a device address passed into\n",{"type":10,"tag":24,"props":1727,"children":1728},{"href":1089},[1729],{"type":16,"value":958},{"type":16,"value":1540},{"type":10,"tag":87,"props":1732,"children":1734},{"className":1733},[],[1735],{"type":16,"value":1736},"missShaderBindingOffset",{"type":16,"value":1738},", a base offset passed into\n",{"type":10,"tag":24,"props":1740,"children":1741},{"href":1083},[1742],{"type":16,"value":948},{"type":16,"value":1554},{"type":10,"tag":18,"props":1745,"children":1746},{},[1747,1748,1754,1756,1761,1762,1767,1769,1775,1777,1781],{"type":16,"value":743},{"type":10,"tag":87,"props":1749,"children":1751},{"className":1750},[],[1752],{"type":16,"value":1753},"missIndex",{"type":16,"value":1755}," value is passed in as a parameter to\n",{"type":10,"tag":87,"props":1757,"children":1759},{"className":1758},[],[1760],{"type":16,"value":1489},{"type":16,"value":1491},{"type":10,"tag":87,"props":1763,"children":1765},{"className":1764},[],[1766],{"type":16,"value":1497},{"type":16,"value":1768},"()\ncalls made in the shaders.\nSee Section 8.19 (Ray Tracing Functions) of the OpenGL Shading Language\nSpecification for more details.\nIn SPIR-V, this corresponds to the ",{"type":10,"tag":87,"props":1770,"children":1772},{"className":1771},[],[1773],{"type":16,"value":1774},"MissIndex",{"type":16,"value":1776}," parameter to the\n",{"type":10,"tag":24,"props":1778,"children":1779},{"href":49},[1780],{"type":16,"value":1519},{"type":16,"value":1782}," instructions.",{"type":10,"tag":18,"props":1784,"children":1785},{},[1786,1787,1791,1793,1799],{"type":16,"value":1337},{"type":10,"tag":24,"props":1788,"children":1789},{"href":1089},[1790],{"type":16,"value":958},{"type":16,"value":1792},", the complete rule to compute a miss shader\nbinding table record address in the ",{"type":10,"tag":87,"props":1794,"children":1796},{"className":1795},[],[1797],{"type":16,"value":1798},"pMissShaderBindingTable",{"type":16,"value":1572},{"type":10,"tag":812,"props":1801,"children":1802},{},[1803],{"type":10,"tag":816,"props":1804,"children":1805},{},[1806,1811,1812,1818,1819],{"type":10,"tag":87,"props":1807,"children":1809},{"className":1808},[],[1810],{"type":16,"value":1723},{"type":16,"value":1585},{"type":10,"tag":87,"props":1813,"children":1815},{"className":1814},[],[1816],{"type":16,"value":1817},"pMissShaderBindingTable→stride",{"type":16,"value":1606},{"type":10,"tag":87,"props":1820,"children":1822},{"className":1821},[],[1823],{"type":16,"value":1753},{"type":10,"tag":18,"props":1825,"children":1826},{},[1827,1828,1831,1832,1838],{"type":16,"value":1624},{"type":10,"tag":56,"props":1829,"children":1830},{"type":145},[],{"type":16,"value":1356},{"type":10,"tag":87,"props":1833,"children":1835},{"className":1834},[],[1836],{"type":16,"value":1837},"pMissShaderBindingTable→size",{"type":16,"value":1636},{"type":10,"tag":18,"props":1840,"children":1841},{},[1842,1843,1847,1849,1855],{"type":16,"value":1337},{"type":10,"tag":24,"props":1844,"children":1845},{"href":1083},[1846],{"type":16,"value":948},{"type":16,"value":1848},", the offset and stride come from direct\nparameters, so the full rule to compute a miss shader binding table record\naddress in the ",{"type":10,"tag":87,"props":1850,"children":1852},{"className":1851},[],[1853],{"type":16,"value":1854},"missShaderBindingTableBuffer",{"type":16,"value":1572},{"type":10,"tag":812,"props":1857,"children":1858},{},[1859],{"type":10,"tag":816,"props":1860,"children":1861},{},[1862,1867,1868,1874,1875],{"type":10,"tag":87,"props":1863,"children":1865},{"className":1864},[],[1866],{"type":16,"value":1736},{"type":16,"value":1585},{"type":10,"tag":87,"props":1869,"children":1871},{"className":1870},[],[1872],{"type":16,"value":1873},"missShaderBindingStride",{"type":16,"value":1606},{"type":10,"tag":87,"props":1876,"children":1878},{"className":1877},[],[1879],{"type":16,"value":1753},{"type":10,"tag":1322,"props":1881,"children":1883},{"id":1882},"_callable_shaders",[1884],{"type":16,"value":1885},"Callable Shaders",{"type":10,"tag":18,"props":1887,"children":1888},{},[1889,1891,1894],{"type":16,"value":1890},"A callable shader is executed when requested by a ray tracing shader.\nMultiple callable shaders ",{"type":10,"tag":56,"props":1892,"children":1893},{"type":170},[],{"type":16,"value":1895}," be executed throughout a ray tracing\ndispatch.",{"type":10,"tag":18,"props":1897,"children":1898},{},[1899,1901,1907,1909,1913,1914,1920,1921,1925],{"type":16,"value":1900},"The base for the computation of callable shader locations is\n",{"type":10,"tag":87,"props":1902,"children":1904},{"className":1903},[],[1905],{"type":16,"value":1906},"pCallableShaderBindingTable→deviceAddress",{"type":16,"value":1908},", a device address passed\ninto ",{"type":10,"tag":24,"props":1910,"children":1911},{"href":1089},[1912],{"type":16,"value":958},{"type":16,"value":1540},{"type":10,"tag":87,"props":1915,"children":1917},{"className":1916},[],[1918],{"type":16,"value":1919},"callableShaderBindingOffset",{"type":16,"value":1738},{"type":10,"tag":24,"props":1922,"children":1923},{"href":1083},[1924],{"type":16,"value":948},{"type":16,"value":1554},{"type":10,"tag":18,"props":1927,"children":1928},{},[1929,1930,1936,1937,1943,1944,1950,1951,1957,1958,1964,1966,1971],{"type":16,"value":743},{"type":10,"tag":87,"props":1931,"children":1933},{"className":1932},[],[1934],{"type":16,"value":1935},"sbtRecordIndex",{"type":16,"value":1755},{"type":10,"tag":87,"props":1938,"children":1940},{"className":1939},[],[1941],{"type":16,"value":1942},"executeCallableNV",{"type":16,"value":1491},{"type":10,"tag":87,"props":1945,"children":1947},{"className":1946},[],[1948],{"type":16,"value":1949},"executeCallableEXT",{"type":16,"value":1768},{"type":10,"tag":87,"props":1952,"children":1954},{"className":1953},[],[1955],{"type":16,"value":1956},"SBTIndex",{"type":16,"value":1776},{"type":10,"tag":87,"props":1959,"children":1961},{"className":1960},[],[1962],{"type":16,"value":1963},"OpExecuteCallableNV",{"type":16,"value":1965},"\nor\n",{"type":10,"tag":87,"props":1967,"children":1969},{"className":1968},[],[1970],{"type":16,"value":92},{"type":16,"value":1972},"\ninstruction.",{"type":10,"tag":18,"props":1974,"children":1975},{},[1976,1977,1981,1983,1989],{"type":16,"value":1337},{"type":10,"tag":24,"props":1978,"children":1979},{"href":1089},[1980],{"type":16,"value":958},{"type":16,"value":1982},", the complete rule to compute a callable shader\nbinding table record address in the ",{"type":10,"tag":87,"props":1984,"children":1986},{"className":1985},[],[1987],{"type":16,"value":1988},"pCallableShaderBindingTable",{"type":16,"value":1572},{"type":10,"tag":812,"props":1991,"children":1992},{},[1993],{"type":10,"tag":816,"props":1994,"children":1995},{},[1996,2001,2002,2008,2010],{"type":10,"tag":87,"props":1997,"children":1999},{"className":1998},[],[2000],{"type":16,"value":1906},{"type":16,"value":1585},{"type":10,"tag":87,"props":2003,"children":2005},{"className":2004},[],[2006],{"type":16,"value":2007},"pCallableShaderBindingTable→stride",{"type":16,"value":2009}," ×\n",{"type":10,"tag":87,"props":2011,"children":2013},{"className":2012},[],[2014],{"type":16,"value":1935},{"type":10,"tag":18,"props":2016,"children":2017},{},[2018,2019,2022,2023,2029],{"type":16,"value":1624},{"type":10,"tag":56,"props":2020,"children":2021},{"type":145},[],{"type":16,"value":1356},{"type":10,"tag":87,"props":2024,"children":2026},{"className":2025},[],[2027],{"type":16,"value":2028},"pCallableShaderBindingTable→size",{"type":16,"value":1636},{"type":10,"tag":18,"props":2031,"children":2032},{},[2033,2034,2038,2040,2046],{"type":16,"value":1337},{"type":10,"tag":24,"props":2035,"children":2036},{"href":1083},[2037],{"type":16,"value":948},{"type":16,"value":2039},", the offset and stride come from direct\nparameters, so the full rule to compute a callable shader binding table\nrecord address in the ",{"type":10,"tag":87,"props":2041,"children":2043},{"className":2042},[],[2044],{"type":16,"value":2045},"callableShaderBindingTableBuffer",{"type":16,"value":1572},{"type":10,"tag":812,"props":2048,"children":2049},{},[2050],{"type":10,"tag":816,"props":2051,"children":2052},{},[2053,2058,2059,2065,2066],{"type":10,"tag":87,"props":2054,"children":2056},{"className":2055},[],[2057],{"type":16,"value":1919},{"type":16,"value":1585},{"type":10,"tag":87,"props":2060,"children":2062},{"className":2061},[],[2063],{"type":16,"value":2064},"callableShaderBindingStride",{"type":16,"value":1606},{"type":10,"tag":87,"props":2067,"children":2069},{"className":2068},[],[2070],{"type":16,"value":1935},{"type":10,"tag":150,"props":2072,"children":2074},{"id":2073},"ray-tracing-pipeline-stack",[2075],{"type":16,"value":2076},"Ray Tracing Pipeline Stack",{"type":10,"tag":18,"props":2078,"children":2079},{},[2080,2082,2085,2087,2090,2092,2095],{"type":16,"value":2081},"Ray tracing pipelines have a potentially large set of shaders which ",{"type":10,"tag":56,"props":2083,"children":2084},{"type":170},[],{"type":16,"value":2086}," be\ninvoked in various call chain combinations to perform ray tracing.\nTo store parameters for a given shader execution, an implementation ",{"type":10,"tag":56,"props":2088,"children":2089},{"type":170},[],{"type":16,"value":2091}," use\na stack of data in memory.\nThis stack ",{"type":10,"tag":56,"props":2093,"children":2094},{"type":145},[],{"type":16,"value":2096}," be sized to the sum of the stack sizes of all shaders in\nany call chain executed by the application.",{"type":10,"tag":18,"props":2098,"children":2099},{},[2100],{"type":16,"value":2101},"If the stack size is not set explicitly, the stack size for a pipeline is:",{"type":10,"tag":812,"props":2103,"children":2104},{},[2105],{"type":10,"tag":816,"props":2106,"children":2107},{},[2108,2110,2115,2117,2122],{"type":16,"value":2109},"rayGenStackMax + min(1,\n",{"type":10,"tag":87,"props":2111,"children":2113},{"className":2112},[],[2114],{"type":16,"value":672},{"type":16,"value":2116},") ×\nmax(closestHitStackMax, missStackMax, intersectionStackMax\n+ anyHitStackMax) + max(0,\n",{"type":10,"tag":87,"props":2118,"children":2120},{"className":2119},[],[2121],{"type":16,"value":672},{"type":16,"value":2123},"-1) ×\nmax(closestHitStackMax, missStackMax) + 2 ×\ncallableStackMax",{"type":10,"tag":18,"props":2125,"children":2126},{},[2127],{"type":16,"value":2128},"where rayGenStackMax, closestHitStackMax, missStackMax,\nanyHitStackMax, intersectionStackMax, and callableStackMax\nare the maximum stack values queried by the respective shader stages for any\nshaders in any shader groups defined by the pipeline.",{"type":10,"tag":18,"props":2130,"children":2131},{},[2132,2134,2137],{"type":16,"value":2133},"This stack size is potentially significant, so an application ",{"type":10,"tag":56,"props":2135,"children":2136},{"type":170},[],{"type":16,"value":2138}," want to\nprovide a more accurate stack size after pipeline compilation.\nThe value that the application provides is the maximum value of the sum of\nall shaders in a call chain across all possible call chains, taking into\naccount any application specific knowledge about the properties of the call\nchains.",{"type":10,"tag":1270,"props":2140,"children":2141},{},[2142,2147,2191],{"type":10,"tag":18,"props":2143,"children":2144},{},[2145],{"type":16,"value":2146},"For example, if an application has two types of closest hit and miss shaders\nthat it can use but the first level of rays will only use the first kind\n(possibly reflection) and the second level will only use the second kind\n(occlusion or shadow ray, for example) then the application can compute the\nstack size by something similar to:",{"type":10,"tag":812,"props":2148,"children":2149},{},[2150],{"type":10,"tag":816,"props":2151,"children":2152},{},[2153,2159,2161,2167,2168,2174,2176,2182,2183,2189],{"type":10,"tag":87,"props":2154,"children":2156},{"className":2155},[],[2157],{"type":16,"value":2158},"rayGenStack",{"type":16,"value":2160}," + max(",{"type":10,"tag":87,"props":2162,"children":2164},{"className":2163},[],[2165],{"type":16,"value":2166},"closestHit1Stack",{"type":16,"value":750},{"type":10,"tag":87,"props":2169,"children":2171},{"className":2170},[],[2172],{"type":16,"value":2173},"miss1Stack",{"type":16,"value":2175},") + max(",{"type":10,"tag":87,"props":2177,"children":2179},{"className":2178},[],[2180],{"type":16,"value":2181},"closestHit2Stack",{"type":16,"value":750},{"type":10,"tag":87,"props":2184,"children":2186},{"className":2185},[],[2187],{"type":16,"value":2188},"miss2Stack",{"type":16,"value":2190},")",{"type":10,"tag":18,"props":2192,"children":2193},{},[2194],{"type":16,"value":2195},"This is guaranteed to be no larger than the default stack size computation\nwhich assumes that both call levels may be the larger of the two.",{"type":10,"tag":150,"props":2197,"children":2199},{"id":2198},"ray-tracing-capture-replay",[2200],{"type":16,"value":2201},"Ray Tracing Capture Replay",{"type":10,"tag":18,"props":2203,"children":2204},{},[2205,2207,2213,2215,2225,2227,2230],{"type":16,"value":2206},"In a similar way to\n",{"type":10,"tag":24,"props":2208,"children":2210},{"href":2209},"/man/VkPhysicalDeviceBufferDeviceAddressFeatures#features-bufferDeviceAddressCaptureReplay",[2211],{"type":16,"value":2212},"bufferDeviceAddressCaptureReplay",{"type":16,"value":2214},",\nthe ",{"type":10,"tag":24,"props":2216,"children":2218},{"href":2217},"/man/VkPhysicalDeviceRayTracingPipelineFeaturesKHR#features-rayTracingPipelineShaderGroupHandleCaptureReplay",[2219],{"type":10,"tag":87,"props":2220,"children":2222},{"className":2221},[],[2223],{"type":16,"value":2224},"rayTracingPipelineShaderGroupHandleCaptureReplay",{"type":16,"value":2226}," feature allows the\nquerying of opaque data which ",{"type":10,"tag":56,"props":2228,"children":2229},{"type":58},[],{"type":16,"value":2231}," be used in a future replay.",{"type":10,"tag":18,"props":2233,"children":2234},{},[2235,2237,2243],{"type":16,"value":2236},"During the capture phase, capture/replay tools are expected to query opaque\ndata for shader group handle replay using\n",{"type":10,"tag":24,"props":2238,"children":2240},{"href":2239},"/man/vkGetRayTracingCaptureReplayShaderGroupHandlesKHR",[2241],{"type":16,"value":2242},"vkGetRayTracingCaptureReplayShaderGroupHandlesKHR",{"type":16,"value":102},{"type":10,"tag":18,"props":2245,"children":2246},{},[2247,2249,2255,2257,2263,2265,2269],{"type":16,"value":2248},"Providing the opaque data during replay, using\n",{"type":10,"tag":24,"props":2250,"children":2252},{"href":2251},"/man/VkRayTracingShaderGroupCreateInfoKHR",[2253],{"type":16,"value":2254},"VkRayTracingShaderGroupCreateInfoKHR",{"type":16,"value":2256},"::",{"type":10,"tag":87,"props":2258,"children":2260},{"className":2259},[],[2261],{"type":16,"value":2262},"pShaderGroupCaptureReplayHandle",{"type":16,"value":2264},"\nat pipeline creation time, causes the implementation to generate identical\nshader group handles to those in the capture phase, allowing capture/replay\ntools to reuse previously recorded shader binding table buffer contents or\nto obtain the same handles by calling\n",{"type":10,"tag":24,"props":2266,"children":2267},{"href":2239},[2268],{"type":16,"value":2242},{"type":16,"value":2270}," again.",{"type":10,"tag":150,"props":2272,"children":2274},{"id":2273},"ray-tracing-validation",[2275],{"type":16,"value":2276},"Ray Tracing Validation",{"type":10,"tag":18,"props":2278,"children":2279},{},[2280,2282,2285,2287,2290],{"type":16,"value":2281},"Ray tracing validation ",{"type":10,"tag":56,"props":2283,"children":2284},{"type":58},[],{"type":16,"value":2286}," help root cause application issues and improve\nperformance.\nUnlike existing validation layers, ray tracing validation performs checks at\nan implementation level, which helps identify potential problems that ",{"type":10,"tag":56,"props":2288,"children":2289},{"type":170},[],{"type":16,"value":2291},"\nnot be caught by the layer.",{"type":10,"tag":18,"props":2293,"children":2294},{},[2295,2297,2303,2305,2308,2310,2316,2318,2321],{"type":16,"value":2296},"By enabling the ",{"type":10,"tag":24,"props":2298,"children":2300},{"href":2299},"/man/VkPhysicalDeviceRayTracingValidationFeaturesNV#features-rayTracingValidation",[2301],{"type":16,"value":2302},"ray tracing validation\nfeature",{"type":16,"value":2304},", warnings and errors ",{"type":10,"tag":56,"props":2306,"children":2307},{"type":58},[],{"type":16,"value":2309}," be delivered straight from a ray tracing\nimplementation to the application through a ",{"type":10,"tag":24,"props":2311,"children":2313},{"href":2312},"/chapters/debugging#debugging-debug-messengers",[2314],{"type":16,"value":2315},"messenger callback",{"type":16,"value":2317}," registered with the implementation, where they ",{"type":10,"tag":56,"props":2319,"children":2320},{"type":58},[],{"type":16,"value":2322}," be\nprocessed through existing application-side debugging or logging systems.",{"title":2324,"searchDepth":2325,"depth":2325,"links":2326},"",2,[2327,2328,2329,2333,2334,2335],{"id":152,"depth":2325,"text":155},{"id":926,"depth":2325,"text":929},{"id":1012,"depth":2325,"text":1015,"children":2330},[2331],{"id":1302,"depth":2332,"text":1305},3,{"id":2073,"depth":2325,"text":2076},{"id":2198,"depth":2325,"text":2201},{"id":2273,"depth":2325,"text":2276},"markdown","chapters-ray-tracing",[2339,2344,2348,2351,2354,2358,2362,2366,2370,2374,2378,2382,2386,2390,2394,2398,2402,2406,2410,2414,2418,2422,2426,2430,2434,2438,2442,2446,2450,2454,2458,2462,2466,2470,2474,2478,2482,2486,2490,2494,2496,2500,2504,2508,2512,2516,2520,2524,2528,2532,2536,2540,2543,2546,2549,2552,2555,2558,2561],{"index":2340,"title":2341,"id":2342,"appendix":2343},0,"Preamble","preamble",false,{"index":2345,"title":2346,"id":2347,"appendix":2343},1,"Introduction","introduction",{"index":2325,"title":2349,"id":2350,"appendix":2343},"Fundamentals","fundamentals",{"index":2332,"title":2352,"id":2353,"appendix":2343},"Initialization","initialization",{"index":2355,"title":2356,"id":2357,"appendix":2343},4,"Devices and Queues","devsandqueues",{"index":2359,"title":2360,"id":2361,"appendix":2343},5,"Command Buffers","commandbuffers",{"index":2363,"title":2364,"id":2365,"appendix":2343},6,"Synchronization and Cache Control","synchronization",{"index":2367,"title":2368,"id":2369,"appendix":2343},7,"Render Pass","renderpass",{"index":2371,"title":2372,"id":2373,"appendix":2343},8,"Shaders","shaders",{"index":2375,"title":2376,"id":2377,"appendix":2343},9,"Pipelines","pipelines",{"index":2379,"title":2380,"id":2381,"appendix":2343},10,"Memory Allocation","memory",{"index":2383,"title":2384,"id":2385,"appendix":2343},11,"Resource Creation","resources",{"index":2387,"title":2388,"id":2389,"appendix":2343},12,"Samplers","samplers",{"index":2391,"title":2392,"id":2393,"appendix":2343},13,"Resource Descriptors","descriptorsets",{"index":2395,"title":2396,"id":2397,"appendix":2343},14,"Shader Interfaces","interfaces",{"index":2399,"title":2400,"id":2401,"appendix":2343},15,"Image Operations","textures",{"index":2403,"title":2404,"id":2405,"appendix":2343},16,"Fragment Density Map Operations","fragmentdensitymapops",{"index":2407,"title":2408,"id":2409,"appendix":2343},17,"Queries","queries",{"index":2411,"title":2412,"id":2413,"appendix":2343},18,"Clear Commands","clears",{"index":2415,"title":2416,"id":2417,"appendix":2343},19,"Copy Commands","copies",{"index":2419,"title":2420,"id":2421,"appendix":2343},20,"Drawing Commands","drawing",{"index":2423,"title":2424,"id":2425,"appendix":2343},21,"Fixed-Function Vertex Processing","fxvertex",{"index":2427,"title":2428,"id":2429,"appendix":2343},22,"Tessellation","tessellation",{"index":2431,"title":2432,"id":2433,"appendix":2343},23,"Geometry Shading","geometry",{"index":2435,"title":2436,"id":2437,"appendix":2343},24,"Mesh Shading","mesh",{"index":2439,"title":2440,"id":2441,"appendix":2343},25,"Cluster Culling Shading","cluster-culling",{"index":2443,"title":2444,"id":2445,"appendix":2343},26,"Fixed-Function Vertex Post-Processing","vertexpostproc",{"index":2447,"title":2448,"id":2449,"appendix":2343},27,"Rasterization","primsrast",{"index":2451,"title":2452,"id":2453,"appendix":2343},28,"Fragment Operations","fragops",{"index":2455,"title":2456,"id":2457,"appendix":2343},29,"The Framebuffer","framebuffer",{"index":2459,"title":2460,"id":2461,"appendix":2343},30,"Dispatching Commands","dispatch",{"index":2463,"title":2464,"id":2465,"appendix":2343},31,"Device-Generated Commands","device-generated-commands",{"index":2467,"title":2468,"id":2469,"appendix":2343},32,"Sparse Resources","sparsememory",{"index":2471,"title":2472,"id":2473,"appendix":2343},33,"Window System Integration (WSI)","wsi",{"index":2475,"title":2476,"id":2477,"appendix":2343},34,"Deferred Host Operations","deferred-host-operations",{"index":2479,"title":2480,"id":2481,"appendix":2343},35,"Private Data","private-data",{"index":2483,"title":2484,"id":2485,"appendix":2343},36,"Acceleration Structures","acceleration-structure",{"index":2487,"title":2488,"id":2489,"appendix":2343},37,"Micromap","micromap",{"index":2491,"title":2492,"id":2493,"appendix":2343},38,"Ray Traversal","ray-traversal",{"index":2495,"title":4,"id":13,"appendix":2343},39,{"index":2497,"title":2498,"id":2499,"appendix":2343},40,"Memory Decompression","memory-decompression",{"index":2501,"title":2502,"id":2503,"appendix":2343},41,"Video Coding","video-coding",{"index":2505,"title":2506,"id":2507,"appendix":2343},42,"Optical Flow","opticalflow",{"index":2509,"title":2510,"id":2511,"appendix":2343},43,"Execution Graphs","executiongraphs",{"index":2513,"title":2514,"id":2515,"appendix":2343},44,"Extending Vulkan","extendingvulkan",{"index":2517,"title":2518,"id":2519,"appendix":2343},45,"Features","features",{"index":2521,"title":2522,"id":2523,"appendix":2343},46,"Limits","limits",{"index":2525,"title":2526,"id":2527,"appendix":2343},47,"Formats","formats",{"index":2529,"title":2530,"id":2531,"appendix":2343},48,"Additional Capabilities","capabilities",{"index":2533,"title":2534,"id":2535,"appendix":2343},49,"Debugging","debugging",{"index":2340,"title":2537,"id":2538,"appendix":2539},"Vulkan Environment for SPIR-V","spirvenv",true,{"index":2345,"title":2541,"id":2542,"appendix":2539},"Memory Model","memory-model",{"index":2325,"title":2544,"id":2545,"appendix":2539},"Compressed Image Formats","compressed_image_formats",{"index":2332,"title":2547,"id":2548,"appendix":2539},"Core Revisions (Informative)","versions",{"index":2355,"title":2550,"id":2551,"appendix":2539},"Layers & Extensions (Informative)","extensions",{"index":2359,"title":2553,"id":2554,"appendix":2539},"API Boilerplate","boilerplate",{"index":2363,"title":2556,"id":2557,"appendix":2539},"Invariance","invariance",{"index":2367,"title":2559,"id":2560,"appendix":2539},"Lexicon","lexicon",{"index":2371,"title":2562,"id":2563,"appendix":2539},"Credits (Informative)","credits",[2565,2573,2577,2582,2586,2591,2594,2597,2600,2604,2608,2611,2614,2617,2619,2621,2624,2627,2631,2633,2637,2639,2642,2644,2647,2655,2659,2665,2669,2674,2676,2680,2686,2692,2698,2700,2703,2709,2712,2716,2722,2726,2730,2735,2739,2742,2745,2751,2754,2757,2761,2765,2769,2772,2774,2778,2783,2789,2792,2796,2799,2805,2808,2812,2815,2819,2822,2826,2829,2834,2838,2841,2846,2849,2852,2855,2859,2864,2869,2873,2877,2881,2885,2889,2893,2897,2900,2903,2907,2910,2913,2916,2920,2925,2929,2932,2936,2941,2945,2950,2953,2956,2961,2966,2970,2973,2977,2982,2985,2990,2995,2998,3001,3005,3009,3013,3018,3022,3025,3030,3034,3037,3041,3045,3049,3052,3054,3058,3061,3064,3067,3070,3073,3076,3079,3082,3085,3089,3093,3096,3099,3102,3105,3108,3111,3115,3119,3123,3126,3130,3133,3136,3139,3141,3145,3150,3154,3158,3160,3164,3167,3174,3178,3182,3186,3192,3195,3199,3203,3206,3209,3213,3218,3224,3228,3230,3235,3238,3243,3247,3252,3256,3260,3262,3265,3268,3270,3275,3278,3281,3286,3290,3294,3299,3303,3307,3309,3311,3314,3316,3319,3322,3326,3330,3332,3336,3339,3343,3346,3348,3351,3355,3357,3361,3364,3367,3370,3374,3377,3380,3382,3385,3387,3390,3394,3397,3399,3401,3403,3405,3409,3411,3414,3419,3423,3426,3428,3431,3433,3437,3440,3443,3446,3450,3453,3458,3462,3465,3469,3472,3475,3479,3483,3485,3490,3493,3497,3500,3503,3506,3508,3511,3515,3518,3522,3525,3529,3533,3536,3539,3542,3545,3549,3551,3554,3556,3561,3562,3566,3569,3572,3575,3578,3580,3584,3587,3590,3593,3597,3599,3601,3605,3607,3610,3614,3618,3620,3624,3627,3630,3633,3636,3640,3645,3650,3654,3660,3664,3667,3671,3675,3678,3682,3686,3689,3693,3696,3701,3705,3707,3713,3716,3719,3722,3726,3729,3733,3737,3741,3743,3746,3748,3751,3753,3755,3758,3761,3764,3767,3770,3773,3775,3779,3783,3787,3791,3794,3797,3801,3804,3808,3810,3814,3818,3821,3824,3827,3830,3833,3836,3839,3842,3845,3848,3851,3854,3857,3860,3864,3867,3871,3875,3878,3881,3884,3887,3890,3893,3897,3900,3903,3909,3913,3917,3921],{"number":2566,"type":2567,"author":2568,"provisional":2539,"depends":2569,"platform":2570,"contact":2571,"extension":2572,"proposal":2539},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":2574,"type":2567,"author":2568,"provisional":2343,"contact":2575,"extension":2576,"proposal":2539},477,"Stu Smith","VK_AMD_anti_lag",{"number":2578,"type":2567,"author":2568,"provisional":2343,"specialuse":2579,"contact":2580,"extension":2581,"proposal":2343},180,"devtools","Daniel Rakos @drakos-amd","VK_AMD_buffer_marker",{"number":2583,"type":2567,"author":2568,"provisional":2343,"depends":2584,"contact":2571,"extension":2585,"proposal":2343},230,"VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","VK_AMD_device_coherent_memory",{"number":2587,"type":2567,"author":2568,"provisional":2343,"depends":2588,"contact":2589,"extension":2590,"proposal":2343},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":2475,"type":2567,"author":2568,"promotedto":2592,"provisional":2343,"contact":2580,"extension":2593,"proposal":2343},"VK_KHR_draw_indirect_count","VK_AMD_draw_indirect_count",{"number":2443,"type":2567,"author":2568,"provisional":2343,"contact":2595,"extension":2596,"proposal":2343},"Dominik Witczak @dominikwitczakamd","VK_AMD_gcn_shader",{"number":2487,"type":2567,"author":2568,"deprecatedby":2598,"provisional":2343,"contact":2595,"extension":2599,"proposal":2343},"VK_KHR_shader_float16_int8","VK_AMD_gpu_shader_half_float",{"number":2601,"type":2567,"author":2568,"deprecatedby":2598,"provisional":2343,"contact":2602,"extension":2603,"proposal":2343},133,"Qun Lin @linqun","VK_AMD_gpu_shader_int16",{"number":2605,"type":2567,"author":2568,"provisional":2343,"contact":2606,"extension":2607,"proposal":2343},190,"Martin Dinkov @mdinkov","VK_AMD_memory_overallocation_behavior",{"number":2609,"type":2567,"author":2568,"provisional":2343,"contact":2589,"extension":2610,"proposal":2343},137,"VK_AMD_mixed_attachment_samples",{"number":2483,"type":2567,"author":2568,"obsoletedby":2612,"provisional":2343,"contact":2589,"extension":2613,"proposal":2343},"VK_KHR_maintenance1","VK_AMD_negative_viewport_height",{"number":2615,"type":2567,"author":2568,"provisional":2343,"contact":2589,"extension":2616,"proposal":2343},184,"VK_AMD_pipeline_compiler_control",{"number":2415,"type":2567,"author":2568,"provisional":2343,"contact":2580,"extension":2618,"proposal":2343},"VK_AMD_rasterization_order",{"number":2491,"type":2567,"author":2568,"provisional":2343,"contact":2595,"extension":2620,"proposal":2343},"VK_AMD_shader_ballot",{"number":2622,"type":2567,"author":2568,"provisional":2343,"depends":2584,"contact":2606,"extension":2623,"proposal":2343},186,"VK_AMD_shader_core_properties",{"number":2625,"type":2567,"author":2568,"provisional":2343,"depends":2623,"contact":2589,"extension":2626,"proposal":2343},228,"VK_AMD_shader_core_properties2",{"number":2628,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2571,"extension":2630,"proposal":2539},322,"EXT","VK_AMD_shader_early_and_late_fragment_tests",{"number":2427,"type":2567,"author":2568,"provisional":2343,"contact":2602,"extension":2632,"proposal":2343},"VK_AMD_shader_explicit_vertex_parameter",{"number":2634,"type":2567,"author":2568,"provisional":2343,"contact":2635,"extension":2636,"proposal":2343},138,"Aaron Hagan @AaronHaganAMD","VK_AMD_shader_fragment_mask",{"number":2525,"type":2567,"author":2568,"provisional":2343,"contact":2595,"extension":2638,"proposal":2343},"VK_AMD_shader_image_load_store_lod",{"number":2509,"type":2567,"author":2568,"provisional":2343,"specialuse":2579,"contact":2640,"extension":2641,"proposal":2343},"Jaakko Konttinen @jaakkoamd","VK_AMD_shader_info",{"number":2423,"type":2567,"author":2568,"provisional":2343,"contact":2602,"extension":2643,"proposal":2343},"VK_AMD_shader_trinary_minmax",{"number":2505,"type":2567,"author":2568,"provisional":2343,"depends":2584,"contact":2645,"extension":2646,"proposal":2343},"Rex Xu @amdrexu","VK_AMD_texture_gather_bias_lod",{"number":2648,"type":2567,"author":2649,"provisional":2343,"depends":2650,"platform":2651,"specialuse":2652,"contact":2653,"extension":2654,"proposal":2539},469,"ANDROID","VK_ANDROID_external_memory_android_hardware_buffer","android","glemulation","Chris Forbes @chrisforbes","VK_ANDROID_external_format_resolve",{"number":2656,"type":2567,"author":2649,"provisional":2343,"depends":2657,"platform":2651,"contact":2658,"extension":2650,"proposal":2343},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":2660,"type":2567,"author":2661,"promotedto":2662,"provisional":2343,"depends":2584,"contact":2663,"extension":2664,"proposal":2343},343,"ARM","VK_EXT_rasterization_order_attachment_access","Jan-Harald Fredriksen @janharaldfredriksen-arm","VK_ARM_rasterization_order_attachment_access",{"number":2666,"type":2567,"author":2661,"provisional":2343,"depends":2667,"contact":2663,"extension":2668,"proposal":2539},425,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_ARM_render_pass_striped",{"number":2670,"type":2567,"author":2661,"provisional":2343,"depends":2671,"contact":2672,"extension":2673,"proposal":2343},418,"VK_ARM_shader_core_builtins","Kevin Petit @kpet","VK_ARM_scheduling_controls",{"number":2675,"type":2567,"author":2661,"provisional":2343,"depends":2584,"contact":2672,"extension":2671,"proposal":2343},498,{"number":2677,"type":2567,"author":2661,"provisional":2343,"depends":2678,"contact":2663,"extension":2679,"proposal":2343},416,"VK_VERSION_1_1","VK_ARM_shader_core_properties",{"number":2681,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2684,"extension":2685,"proposal":2343},341,"VK_VERSION_1_3","vulkansc","Joshua Ashton @Joshua-Ashton","VK_EXT_4444_formats",{"number":2687,"type":2688,"author":2629,"provisional":2343,"depends":2689,"contact":2690,"extension":2691,"proposal":2343},286,"instance","VK_EXT_direct_mode_display","Drew DeVault sir@cmpwn.com","VK_EXT_acquire_drm_display",{"number":2693,"type":2688,"author":2694,"provisional":2343,"depends":2689,"platform":2695,"contact":2696,"extension":2697,"proposal":2343},90,"NV","xlib_xrandr","James Jones @cubanismo","VK_EXT_acquire_xlib_display",{"extension":2699,"proposal":2343},"VK_EXT_application_parameters",{"number":2701,"type":2567,"author":2661,"provisional":2343,"depends":2584,"contact":2663,"extension":2702,"proposal":2343},68,"VK_EXT_astc_decode_mode",{"number":2704,"type":2567,"author":2629,"provisional":2343,"depends":2705,"ratified":2706,"contact":2707,"extension":2708,"proposal":2539},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":2710,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2684,"extension":2711,"proposal":2539},340,"VK_EXT_attachment_feedback_loop_layout",{"number":2713,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":2715,"proposal":2343},149,"Jeff Bolz @jeffbolznv","VK_EXT_blend_operation_advanced",{"number":2717,"type":2567,"author":2629,"provisional":2343,"depends":2718,"specialuse":2719,"contact":2720,"extension":2721,"proposal":2343},412,"VK_EXT_custom_border_color","glemulation,d3demulation","Piers Daniell @pdaniell-nv","VK_EXT_border_color_swizzle",{"number":2723,"type":2567,"author":2694,"deprecatedby":2724,"provisional":2343,"depends":2584,"contact":2714,"extension":2725,"proposal":2343},245,"VK_KHR_buffer_device_address","VK_EXT_buffer_device_address",{"number":2727,"type":2567,"author":2629,"promotedto":2728,"provisional":2343,"depends":2584,"contact":2580,"extension":2729,"proposal":2539},185,"VK_KHR_calibrated_timestamps","VK_EXT_calibrated_timestamps",{"number":2731,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2732,"contact":2733,"extension":2734,"proposal":2343},382,"vulkan,vulkansc","Sharif Elcott @selcott","VK_EXT_color_write_enable",{"number":2736,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":2737,"extension":2738,"proposal":2343},82,"Vikram Kushwaha @vkushwaha","VK_EXT_conditional_rendering",{"number":2740,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2706,"contact":2720,"extension":2741,"proposal":2343},102,"VK_EXT_conservative_rasterization",{"number":2743,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2732,"specialuse":2719,"contact":2744,"extension":2718,"proposal":2343},288,"Liam Middlebrook @liam-middlebrook",{"number":2431,"type":2567,"author":2746,"promotedto":2747,"provisional":2343,"depends":2748,"specialuse":2535,"contact":2749,"extension":2750,"proposal":2343},"Baldur Karlsson","VK_EXT_debug_utils","VK_EXT_debug_report","Baldur Karlsson @baldurk","VK_EXT_debug_marker",{"number":2387,"type":2688,"author":2752,"deprecatedby":2747,"provisional":2343,"specialuse":2535,"contact":2753,"extension":2748,"proposal":2343},"GOOGLE","Courtney Goeltzenleuchter @courtney-g",{"number":2755,"type":2688,"author":2629,"provisional":2343,"specialuse":2535,"contact":2756,"extension":2747,"proposal":2343},129,"Mark Young @marky-lunarg",{"number":2758,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2759,"contact":2684,"extension":2760,"proposal":2539},284,"d3demulation","VK_EXT_depth_bias_control",{"number":2762,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2763,"extension":2764,"proposal":2343},422,"Graeme Leese @gnl21","VK_EXT_depth_clamp_zero_one",{"number":2766,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2652,"contact":2767,"extension":2768,"proposal":2343},356,"Shahbaz Youssefi @syoussefi","VK_EXT_depth_clip_control",{"number":2770,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2732,"specialuse":2759,"contact":2720,"extension":2771,"proposal":2343},103,"VK_EXT_depth_clip_enable",{"number":2395,"type":2567,"author":2694,"provisional":2343,"ratified":2732,"contact":2720,"extension":2773,"proposal":2343},"VK_EXT_depth_range_unrestricted",{"number":2775,"type":2567,"author":2629,"provisional":2343,"depends":2776,"contact":2571,"extension":2777,"proposal":2539},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":2779,"type":2567,"author":2694,"promotedto":2780,"provisional":2343,"depends":2781,"contact":2714,"extension":2782,"proposal":2343},162,"VK_VERSION_1_2","(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance3),VK_VERSION_1_1","VK_EXT_descriptor_indexing",{"number":2784,"type":2567,"author":2629,"provisional":2343,"depends":2785,"specialuse":2786,"contact":2787,"extension":2788,"proposal":2343},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":2790,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2787,"extension":2791,"proposal":2539},342,"VK_EXT_device_fault",{"number":2793,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2579,"contact":2794,"extension":2795,"proposal":2343},285,"Yiwei Zhang @zhangyiwei","VK_EXT_device_memory_report",{"number":2797,"type":2688,"author":2694,"provisional":2343,"depends":2798,"contact":2696,"extension":2689,"proposal":2343},89,"VK_KHR_display",{"number":2800,"type":2688,"author":2629,"provisional":2343,"depends":2801,"platform":2802,"contact":2803,"extension":2804,"proposal":2343},347,"VK_KHR_surface","directfb","Nicolas Caramelli @caramelli","VK_EXT_directfb_surface",{"number":2806,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2732,"contact":2720,"extension":2807,"proposal":2343},100,"VK_EXT_discard_rectangles",{"number":2809,"type":2567,"author":2694,"provisional":2343,"depends":2810,"ratified":2706,"contact":2696,"extension":2811,"proposal":2343},92,"VK_EXT_display_surface_counter+VK_KHR_swapchain","VK_EXT_display_control",{"number":2813,"type":2688,"author":2694,"provisional":2343,"depends":2798,"ratified":2706,"contact":2696,"extension":2814,"proposal":2343},91,"VK_EXT_display_surface_counter",{"number":2816,"type":2567,"author":2629,"provisional":2343,"depends":2817,"ratified":2706,"contact":2720,"extension":2818,"proposal":2539},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":2820,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2720,"extension":2821,"proposal":2343},268,"VK_EXT_extended_dynamic_state",{"number":2823,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2824,"extension":2825,"proposal":2343},378,"Vikram Kushwaha @vkushwaha-nv","VK_EXT_extended_dynamic_state2",{"number":2827,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2706,"contact":2720,"extension":2828,"proposal":2539},456,"VK_EXT_extended_dynamic_state3",{"number":2830,"type":2567,"author":2629,"provisional":2343,"depends":2831,"ratified":2706,"contact":2832,"extension":2833,"proposal":2539},454,"VK_KHR_external_memory,VK_VERSION_1_1","Lina Versace @versalinyaa","VK_EXT_external_memory_acquire_unmodified",{"number":2835,"type":2567,"author":2629,"provisional":2343,"depends":2836,"ratified":2732,"contact":2832,"extension":2837,"proposal":2343},126,"VK_KHR_external_memory_fd","VK_EXT_external_memory_dma_buf",{"number":2839,"type":2567,"author":2629,"provisional":2343,"depends":2831,"ratified":2732,"contact":2580,"extension":2840,"proposal":2343},179,"VK_EXT_external_memory_host",{"number":2842,"type":2567,"author":2843,"provisional":2343,"ratified":2706,"contact":2844,"extension":2845,"proposal":2343},171,"QCOM","Matthew Netsch @mnetsch","VK_EXT_filter_cubic",{"number":2847,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2844,"extension":2848,"proposal":2343},219,"VK_EXT_fragment_density_map",{"number":2850,"type":2567,"author":2629,"provisional":2343,"depends":2848,"contact":2844,"extension":2851,"proposal":2343},333,"VK_EXT_fragment_density_map2",{"number":2853,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2720,"extension":2854,"proposal":2343},252,"VK_EXT_fragment_shader_interlock",{"number":2856,"type":2567,"author":2629,"provisional":2343,"ratified":2706,"contact":2857,"extension":2858,"proposal":2539},376,"James Fitzpatrick @jamesfitzpatrick","VK_EXT_frame_boundary",{"number":2860,"type":2567,"author":2629,"provisional":2343,"depends":2861,"platform":2862,"ratified":2706,"contact":2696,"extension":2863,"proposal":2343},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":2865,"type":2567,"author":2629,"promotedto":2866,"provisional":2343,"contact":2867,"extension":2868,"proposal":2343},175,"VK_KHR_global_priority","Andres Rodriguez @lostgoat","VK_EXT_global_priority",{"number":2870,"type":2567,"author":2629,"promotedto":2866,"provisional":2343,"depends":2871,"contact":2794,"extension":2872,"proposal":2343},389,"VK_EXT_global_priority+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_global_priority_query",{"number":2874,"type":2567,"author":2568,"provisional":2343,"depends":2875,"contact":2571,"extension":2876,"proposal":2539},321,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_pipeline_library","VK_EXT_graphics_pipeline_library",{"number":2878,"type":2567,"author":2752,"provisional":2343,"depends":2879,"ratified":2732,"contact":2753,"extension":2880,"proposal":2343},106,"VK_KHR_swapchain","VK_EXT_hdr_metadata",{"number":2882,"type":2688,"author":2629,"provisional":2343,"depends":2801,"contact":2883,"extension":2884,"proposal":2343},257,"Lisa Wu @chengtianww","VK_EXT_headless_surface",{"number":2886,"type":2567,"author":2629,"provisional":2343,"depends":2887,"ratified":2706,"contact":2767,"extension":2888,"proposal":2539},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":2890,"type":2567,"author":2629,"promotedto":2780,"provisional":2343,"depends":2584,"contact":2891,"extension":2892,"proposal":2343},262,"Bas Nieuwenhuizen @BNieuwenhuizen","VK_EXT_host_query_reset",{"number":2894,"type":2567,"author":2629,"provisional":2343,"depends":2895,"specialuse":2652,"contact":2707,"extension":2896,"proposal":2343},394,"(VK_KHR_maintenance1+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","VK_EXT_image_2d_view_of_3d",{"number":2898,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2663,"extension":2899,"proposal":2539},339,"VK_EXT_image_compression_control",{"number":2901,"type":2567,"author":2629,"provisional":2343,"depends":2899,"contact":2663,"extension":2902,"proposal":2343},438,"VK_EXT_image_compression_control_swapchain",{"number":2904,"type":2567,"author":2629,"provisional":2343,"depends":2905,"ratified":2706,"contact":2832,"extension":2906,"proposal":2343},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":2908,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2763,"extension":2909,"proposal":2343},336,"VK_EXT_image_robustness",{"number":2911,"type":2567,"author":2629,"provisional":2343,"depends":2895,"specialuse":2759,"contact":2707,"extension":2912,"proposal":2539},419,"VK_EXT_image_sliced_view_of_3d",{"number":2914,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2684,"extension":2915,"proposal":2343},392,"VK_EXT_image_view_min_lod",{"number":2917,"type":2567,"author":2629,"promotedto":2918,"provisional":2343,"depends":2584,"contact":2720,"extension":2919,"proposal":2343},266,"VK_KHR_index_type_uint8","VK_EXT_index_type_uint8",{"number":2921,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2922,"contact":2923,"extension":2924,"proposal":2343},139,"(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance1),VK_VERSION_1_1","Daniel Rakos @aqnuep","VK_EXT_inline_uniform_block",{"number":2926,"type":2688,"author":2629,"provisional":2343,"ratified":2706,"contact":2927,"extension":2928,"proposal":2539},497,"Christophe Riccio @christophe","VK_EXT_layer_settings",{"number":2930,"type":2567,"author":2629,"provisional":2343,"depends":2584,"specialuse":2652,"contact":2767,"extension":2931,"proposal":2539},466,"VK_EXT_legacy_dithering",{"number":2933,"type":2567,"author":2629,"provisional":2343,"depends":2934,"ratified":2706,"specialuse":2652,"contact":2707,"extension":2935,"proposal":2539},496,"VK_EXT_vertex_input_dynamic_state","VK_EXT_legacy_vertex_attributes",{"number":2937,"type":2567,"author":2629,"promotedto":2938,"provisional":2343,"depends":2584,"specialuse":2939,"contact":2714,"extension":2940,"proposal":2343},260,"VK_KHR_line_rasterization","cadsupport","VK_EXT_line_rasterization",{"number":2942,"type":2567,"author":2629,"promotedto":2943,"provisional":2343,"ratified":2706,"contact":2767,"extension":2944,"proposal":2343},401,"VK_KHR_load_store_op_none","VK_EXT_load_store_op_none",{"number":2946,"type":2567,"author":2629,"provisional":2343,"depends":2947,"ratified":2706,"contact":2948,"extension":2949,"proposal":2539},273,"VK_KHR_map_memory2","Faith Ekstrand @gfxstrand","VK_EXT_map_memory_placed",{"number":2951,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":2952,"proposal":2343},238,"VK_EXT_memory_budget",{"number":2954,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":2955,"proposal":2343},239,"VK_EXT_memory_priority",{"number":2957,"type":2567,"author":2629,"provisional":2343,"depends":2958,"contact":2959,"extension":2960,"proposal":2539},329,"VK_KHR_spirv_1_4","Christoph Kubisch @pixeljetstream","VK_EXT_mesh_shader",{"number":2962,"type":2567,"author":2629,"provisional":2343,"platform":2963,"contact":2964,"extension":2965,"proposal":2539},312,"metal","Bill Hollings @billhollings","VK_EXT_metal_objects",{"number":2967,"type":2688,"author":2629,"provisional":2343,"depends":2801,"platform":2963,"contact":2968,"extension":2969,"proposal":2343},218,"Dzmitry Malyshau @kvark","VK_EXT_metal_surface",{"number":2971,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2707,"extension":2972,"proposal":2343},393,"VK_EXT_multi_draw",{"number":2974,"type":2567,"author":2629,"provisional":2343,"depends":2975,"contact":2767,"extension":2976,"proposal":2539},377,"(VK_KHR_create_renderpass2+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_EXT_multisampled_render_to_single_sampled",{"number":2978,"type":2567,"author":2629,"provisional":2343,"depends":2979,"specialuse":2759,"contact":2980,"extension":2981,"proposal":2539},495,"VK_KHR_maintenance3","Joshua Ashton @Joshua-Ashton,Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_mutable_descriptor_type",{"number":2983,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2720,"extension":2984,"proposal":2343},452,"VK_EXT_nested_command_buffer",{"number":2986,"type":2567,"author":2629,"provisional":2343,"depends":2584,"specialuse":2987,"contact":2988,"extension":2989,"proposal":2539},423,"d3demulation,glemulation","Georg Lehmann @DadSchoorse","VK_EXT_non_seamless_cube_map",{"number":2991,"type":2567,"author":2629,"provisional":2343,"depends":2992,"ratified":2706,"contact":2993,"extension":2994,"proposal":2539},397,"VK_KHR_acceleration_structure+(VK_KHR_synchronization2,VK_VERSION_1_3)","Christoph Kubisch @pixeljetstream, Eric Werness","VK_EXT_opacity_micromap",{"number":2996,"type":2567,"author":2629,"provisional":2343,"depends":2955,"contact":2720,"extension":2997,"proposal":2343},413,"VK_EXT_pageable_device_local_memory",{"number":2999,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2732,"contact":2589,"extension":3000,"proposal":2343},213,"VK_EXT_pci_bus_info",{"number":3002,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":3003,"extension":3004,"proposal":2343},354,"Simon Ser @emersion","VK_EXT_physical_device_drm",{"number":3006,"type":2567,"author":2568,"promotedto":2682,"provisional":2343,"depends":2584,"contact":3007,"extension":3008,"proposal":2343},298,"Gregory Grebe @grgrebe_amd","VK_EXT_pipeline_creation_cache_control",{"number":3010,"type":2567,"author":2752,"promotedto":2682,"provisional":2343,"specialuse":2579,"contact":3011,"extension":3012,"proposal":2343},193,"Jean-Francois Roy @jfroy","VK_EXT_pipeline_creation_feedback",{"number":3014,"type":2567,"author":2629,"provisional":2343,"depends":3015,"contact":3016,"extension":3017,"proposal":2539},499,"VK_KHR_ray_tracing_pipeline+VK_KHR_pipeline_library","Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_pipeline_library_group_handles",{"number":3019,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":3020,"extension":3021,"proposal":2343},373,"Mukund Keshava @mkeshavanv","VK_EXT_pipeline_properties",{"number":3023,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":2767,"extension":3024,"proposal":2539},467,"VK_EXT_pipeline_protected_access",{"number":3026,"type":2567,"author":3027,"provisional":2343,"depends":2584,"contact":3028,"extension":3029,"proposal":2343},69,"IMG","Jarred Davies","VK_EXT_pipeline_robustness",{"number":3031,"type":2567,"author":2694,"provisional":2343,"ratified":2706,"contact":3032,"extension":3033,"proposal":2343},156,"Daniel Koch @dgkoch","VK_EXT_post_depth_coverage",{"number":3035,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2652,"contact":2767,"extension":3036,"proposal":2343},357,"VK_EXT_primitive_topology_list_restart",{"number":3038,"type":2567,"author":2629,"provisional":2343,"depends":3039,"specialuse":2652,"contact":2767,"extension":3040,"proposal":2539},383,"VK_EXT_transform_feedback","VK_EXT_primitives_generated_query",{"number":3042,"type":2567,"author":2694,"promotedto":2682,"provisional":2343,"depends":2584,"contact":3043,"extension":3044,"proposal":2343},296,"Matthew Rusch @mattruschnv","VK_EXT_private_data",{"number":3046,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2652,"contact":3047,"extension":3048,"proposal":2343},255,"Jesse Hall @jessehall","VK_EXT_provoking_vertex",{"number":3050,"type":2567,"author":2629,"provisional":2343,"depends":2831,"ratified":2732,"contact":2832,"extension":3051,"proposal":2343},127,"VK_EXT_queue_family_foreign",{"number":3053,"type":2567,"author":2661,"provisional":2343,"depends":2584,"contact":2663,"extension":2662,"proposal":2539},464,{"number":3055,"type":2567,"author":2629,"provisional":2343,"depends":3056,"contact":2663,"extension":3057,"proposal":2343},345,"VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1","VK_EXT_rgba10x6_formats",{"number":3059,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2732,"contact":2744,"extension":3060,"proposal":2343},287,"VK_EXT_robustness2",{"number":3062,"type":2567,"author":2568,"provisional":2343,"depends":2584,"ratified":2732,"contact":2580,"extension":3063,"proposal":2343},144,"VK_EXT_sample_locations",{"number":3065,"type":2567,"author":2694,"promotedto":2780,"provisional":2343,"depends":2584,"contact":2714,"extension":3066,"proposal":2343},131,"VK_EXT_sampler_filter_minmax",{"number":3068,"type":2567,"author":2629,"promotedto":2780,"provisional":2343,"depends":2584,"contact":2571,"extension":3069,"proposal":2343},222,"VK_EXT_scalar_block_layout",{"number":3071,"type":2567,"author":2629,"promotedto":2780,"provisional":2343,"contact":2580,"extension":3072,"proposal":2343},247,"VK_EXT_separate_stencil_usage",{"number":3074,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2732,"contact":2824,"extension":3075,"proposal":2343},261,"VK_EXT_shader_atomic_float",{"number":3077,"type":2567,"author":2629,"provisional":2343,"depends":3075,"ratified":2706,"contact":2948,"extension":3078,"proposal":2343},274,"VK_EXT_shader_atomic_float2",{"number":3080,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2714,"extension":3081,"proposal":2343},277,"VK_EXT_shader_demote_to_helper_invocation",{"number":3083,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2571,"extension":3084,"proposal":2343},235,"VK_EXT_shader_image_atomic_int64",{"number":3086,"type":2567,"author":2629,"provisional":2343,"depends":3087,"contact":3016,"extension":3088,"proposal":2539},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":3090,"type":2567,"author":2629,"provisional":2343,"depends":2817,"ratified":2706,"contact":3091,"extension":3092,"proposal":2539},483,"Daniel Story @daniel-story","VK_EXT_shader_object",{"number":3094,"type":2567,"author":2629,"provisional":2343,"ratified":2706,"contact":2672,"extension":3095,"proposal":2539},565,"VK_EXT_shader_replicated_composites",{"number":3097,"type":2567,"author":2629,"provisional":2343,"ratified":2732,"contact":2595,"extension":3098,"proposal":2343},141,"VK_EXT_shader_stencil_export",{"number":3100,"type":2567,"author":2694,"deprecatedby":2780,"provisional":2343,"contact":3032,"extension":3101,"proposal":2343},65,"VK_EXT_shader_subgroup_ballot",{"number":3103,"type":2567,"author":2694,"deprecatedby":2678,"provisional":2343,"contact":3032,"extension":3104,"proposal":2343},66,"VK_EXT_shader_subgroup_vote",{"number":3106,"type":2567,"author":2629,"provisional":2343,"depends":2682,"ratified":2706,"contact":2663,"extension":3107,"proposal":2539},396,"VK_EXT_shader_tile_image",{"number":3109,"type":2567,"author":2694,"promotedto":2780,"provisional":2343,"contact":3032,"extension":3110,"proposal":2343},163,"VK_EXT_shader_viewport_index_layer",{"number":3112,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2678,"ratified":2683,"contact":3113,"extension":3114,"proposal":2343},226,"Neil Henning @sheredom","VK_EXT_subgroup_size_control",{"number":3116,"type":2567,"author":2629,"provisional":2343,"depends":2584,"contact":3117,"extension":3118,"proposal":2539},459,"Ting Wei @catweiting","VK_EXT_subpass_merge_feedback",{"number":3120,"type":2688,"author":2629,"provisional":2343,"depends":3121,"contact":2767,"extension":3122,"proposal":2539},275,"VK_KHR_surface+VK_KHR_get_surface_capabilities2","VK_EXT_surface_maintenance1",{"number":3124,"type":2688,"author":2752,"provisional":2343,"depends":2801,"contact":2753,"extension":3125,"proposal":2343},105,"VK_EXT_swapchain_colorspace",{"number":3127,"type":2567,"author":2629,"provisional":2343,"depends":3128,"contact":2767,"extension":3129,"proposal":2539},276,"VK_KHR_swapchain+VK_EXT_surface_maintenance1+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_swapchain_maintenance1",{"number":3131,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2714,"extension":3132,"proposal":2343},282,"VK_EXT_texel_buffer_alignment",{"number":3134,"type":2567,"author":2661,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2683,"contact":2663,"extension":3135,"proposal":2343},67,"VK_EXT_texture_compression_astc_hdr",{"number":3137,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"contact":2571,"extension":3138,"proposal":2343},246,"VK_EXT_tooling_info",{"number":2455,"type":2567,"author":2694,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":3140,"contact":2720,"extension":3039,"proposal":2343},"glemulation,d3demulation,devtools",{"number":3142,"type":2567,"author":2752,"provisional":2343,"contact":3143,"extension":3144,"proposal":2343},161,"Cort Stratton @cdwfs","VK_EXT_validation_cache",{"number":3146,"type":2688,"author":3147,"deprecatedby":2928,"provisional":2343,"specialuse":2535,"contact":3148,"extension":3149,"proposal":2343},248,"LUNARG","Karl Schultz @karl-lunarg","VK_EXT_validation_features",{"number":3151,"type":2688,"author":2752,"deprecatedby":2928,"provisional":2343,"specialuse":2535,"contact":3152,"extension":3153,"proposal":2343},62,"Tobin Ehlis @tobine","VK_EXT_validation_flags",{"number":3155,"type":2567,"author":2694,"promotedto":3156,"provisional":2343,"depends":2584,"contact":2737,"extension":3157,"proposal":2343},191,"VK_KHR_vertex_attribute_divisor","VK_EXT_vertex_attribute_divisor",{"number":3159,"type":2567,"author":2629,"provisional":2343,"depends":2584,"ratified":2706,"contact":2720,"extension":2934,"proposal":2343},353,{"number":3161,"type":2567,"author":2629,"promotedto":2682,"provisional":2343,"depends":3056,"ratified":2683,"contact":3162,"extension":3163,"proposal":2343},331,"Tony Zlatinski @tzlatinski","VK_EXT_ycbcr_2plane_444_formats",{"number":3165,"type":2567,"author":2629,"provisional":2343,"depends":3056,"ratified":2732,"contact":2720,"extension":3166,"proposal":2343},253,"VK_EXT_ycbcr_image_arrays",{"number":3168,"type":2567,"author":3169,"provisional":2343,"depends":3170,"platform":3171,"contact":3172,"extension":3173,"proposal":2343},367,"FUCHSIA","VK_FUCHSIA_external_memory+(VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1)","fuchsia","John Rosasco @rosasco","VK_FUCHSIA_buffer_collection",{"number":3175,"type":2567,"author":3169,"provisional":2343,"depends":3176,"platform":3171,"contact":3172,"extension":3177,"proposal":2343},365,"(VK_KHR_external_memory_capabilities+VK_KHR_external_memory),VK_VERSION_1_1","VK_FUCHSIA_external_memory",{"number":3179,"type":2567,"author":3169,"provisional":2343,"depends":3180,"platform":3171,"contact":3172,"extension":3181,"proposal":2343},366,"VK_KHR_external_semaphore_capabilities+VK_KHR_external_semaphore","VK_FUCHSIA_external_semaphore",{"number":3183,"type":2688,"author":3169,"provisional":2343,"depends":2801,"platform":3171,"contact":3184,"extension":3185,"proposal":2343},215,"Craig Stout @cdotstout","VK_FUCHSIA_imagepipe_surface",{"number":3187,"type":2567,"author":3188,"provisional":2343,"depends":3189,"platform":3190,"contact":3011,"extension":3191,"proposal":2343},192,"GGP","VK_KHR_swapchain+VK_GGP_stream_descriptor_surface","ggp","VK_GGP_frame_token",{"number":3193,"type":2688,"author":3188,"provisional":2343,"depends":2801,"platform":3190,"contact":3011,"extension":3194,"proposal":2343},50,"VK_GGP_stream_descriptor_surface",{"number":3196,"type":2567,"author":2752,"provisional":2343,"contact":3197,"extension":3198,"proposal":2343},225,"Hai Nguyen @chaoticbob","VK_GOOGLE_decorate_string",{"number":3200,"type":2567,"author":2752,"provisional":2343,"depends":2879,"contact":3201,"extension":3202,"proposal":2343},93,"Ian Elliott @ianelliottus","VK_GOOGLE_display_timing",{"number":3204,"type":2567,"author":2752,"provisional":2343,"contact":3197,"extension":3205,"proposal":2343},224,"VK_GOOGLE_hlsl_functionality1",{"number":3207,"type":2688,"author":2752,"provisional":2343,"depends":2801,"specialuse":2652,"contact":2767,"extension":3208,"proposal":2539},434,"VK_GOOGLE_surfaceless_query",{"number":3210,"type":2567,"author":2752,"provisional":2343,"contact":3211,"extension":3212,"proposal":2343},290,"Kaye Mason @chaleur","VK_GOOGLE_user_type",{"number":3214,"type":2567,"author":3215,"provisional":2343,"depends":2584,"contact":3216,"extension":3217,"proposal":2539},405,"HUAWEI","Yuchang Wang @richard_Wang2","VK_HUAWEI_cluster_culling_shader",{"number":3219,"type":2567,"author":3220,"provisional":2343,"depends":3221,"contact":3222,"extension":3223,"proposal":2539},371,"Huawei","VK_KHR_ray_tracing_pipeline+(VK_KHR_synchronization2,VK_VERSION_1_3)","Pan Gao @PanGao-h","VK_HUAWEI_invocation_mask",{"number":3225,"type":2567,"author":3215,"provisional":2343,"depends":3226,"contact":3222,"extension":3227,"proposal":2343},370,"((VK_KHR_create_renderpass2,VK_VERSION_1_2)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_HUAWEI_subpass_shading",{"number":2403,"type":2567,"author":3027,"provisional":2343,"contact":2571,"extension":3229,"proposal":2343},"VK_IMG_filter_cubic",{"number":3231,"type":2567,"author":3027,"deprecatedby":3232,"provisional":2343,"contact":3233,"extension":3234,"proposal":2343},55,null,"Stuart Smith","VK_IMG_format_pvrtc",{"number":3236,"type":2567,"author":3027,"provisional":2343,"depends":2584,"specialuse":2652,"contact":2857,"extension":3237,"proposal":2343},111,"VK_IMG_relaxed_line_rasterization",{"number":3239,"type":2567,"author":3240,"provisional":2343,"specialuse":2579,"contact":3241,"extension":3242,"proposal":2343},211,"INTEL","Lionel Landwerlin @llandwerlin","VK_INTEL_performance_query",{"number":3244,"type":2567,"author":3240,"provisional":2343,"depends":2584,"contact":3245,"extension":3246,"proposal":2343},210,"Ian Romanick @ianromanick","VK_INTEL_shader_integer_functions2",{"number":3248,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3250,"ratified":2706,"contact":2663,"extension":3251,"proposal":2343},84,"KHR","(VK_KHR_get_physical_device_properties2+VK_KHR_storage_buffer_storage_class),VK_VERSION_1_1","VK_KHR_16bit_storage",{"number":3253,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3250,"ratified":2706,"contact":3254,"extension":3255,"proposal":2343},178,"Alexander Galazin @alegal-arm","VK_KHR_8bit_storage",{"number":3257,"type":2567,"author":3249,"provisional":2343,"depends":3258,"ratified":2706,"contact":3032,"extension":3259,"proposal":2343},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":2375,"type":2688,"author":3249,"provisional":2343,"depends":2801,"platform":2651,"ratified":2706,"contact":2658,"extension":3261,"proposal":2343},"VK_KHR_android_surface",{"number":3263,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":2571,"extension":3264,"proposal":2343},158,"VK_KHR_bind_memory2",{"number":3266,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3267,"ratified":2706,"contact":2714,"extension":2724,"proposal":2343},258,"(VK_KHR_get_physical_device_properties2+VK_KHR_device_group),VK_VERSION_1_1",{"number":3269,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":2923,"extension":2728,"proposal":2343},544,{"number":3271,"type":2567,"author":3249,"provisional":2343,"depends":3272,"ratified":2706,"contact":3273,"extension":3274,"proposal":2539},512,"VK_KHR_get_physical_device_properties2","Jean-Noe Morissette @MagicPoncho","VK_KHR_compute_shader_derivatives",{"number":3276,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"contact":2672,"extension":3277,"proposal":2539},507,"VK_KHR_cooperative_matrix",{"number":3279,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2732,"contact":2844,"extension":3280,"proposal":2343},338,"VK_KHR_copy_commands2",{"number":3282,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3283,"ratified":2706,"contact":3284,"extension":3285,"proposal":2343},110,"(VK_KHR_multiview+VK_KHR_maintenance2),VK_VERSION_1_1","Tobias Hector @tobias","VK_KHR_create_renderpass2",{"number":3287,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3288,"ratified":2706,"contact":2696,"extension":3289,"proposal":2343},128,"VK_KHR_get_memory_requirements2,VK_VERSION_1_1","VK_KHR_dedicated_allocation",{"number":3291,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":3292,"extension":3293,"proposal":2343},269,"Josh Barczak @jbarczak","VK_KHR_deferred_host_operations",{"number":3295,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3296,"ratified":2706,"contact":3297,"extension":3298,"proposal":2343},200,"VK_KHR_create_renderpass2,VK_VERSION_1_2","Jan-Harald Fredriksen @janharald","VK_KHR_depth_stencil_resolve",{"number":3300,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":3301,"extension":3302,"proposal":2343},86,"Markus Tavenrath @mtavenrath","VK_KHR_descriptor_update_template",{"number":3304,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3305,"ratified":2706,"contact":2714,"extension":3306,"proposal":2343},61,"VK_KHR_device_group_creation","VK_KHR_device_group",{"number":3308,"type":2688,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":2714,"extension":3305,"proposal":2343},71,{"number":2332,"type":2688,"author":3249,"provisional":2343,"depends":2801,"ratified":2732,"contact":3310,"extension":2798,"proposal":2343},"James Jones @cubanismo,Norbert Nopper @FslNopper",{"number":2355,"type":2567,"author":3249,"provisional":2343,"depends":3312,"ratified":2732,"contact":2696,"extension":3313,"proposal":2343},"VK_KHR_swapchain+VK_KHR_display","VK_KHR_display_swapchain",{"number":3315,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"ratified":2706,"contact":2720,"extension":2592,"proposal":2343},170,{"number":3317,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":2580,"extension":3318,"proposal":2343},197,"VK_KHR_driver_properties",{"number":2517,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":3320,"ratified":2706,"contact":2571,"extension":3321,"proposal":2539},"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_KHR_dynamic_rendering",{"number":3323,"type":2567,"author":2568,"provisional":2343,"depends":3324,"ratified":2706,"contact":2571,"extension":3325,"proposal":2539},233,"VK_KHR_dynamic_rendering,VK_VERSION_1_3","VK_KHR_dynamic_rendering_local_read",{"number":3327,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3328,"ratified":2706,"contact":2658,"extension":3329,"proposal":2343},114,"VK_KHR_external_fence_capabilities","VK_KHR_external_fence",{"number":3331,"type":2688,"author":3249,"promotedto":2678,"provisional":2343,"depends":2584,"ratified":2706,"contact":2658,"extension":3328,"proposal":2343},113,{"number":3333,"type":2567,"author":3249,"provisional":2343,"depends":3334,"ratified":2732,"contact":2658,"extension":3335,"proposal":2343},116,"VK_KHR_external_fence,VK_VERSION_1_1","VK_KHR_external_fence_fd",{"number":3337,"type":2567,"author":3249,"provisional":2343,"depends":3329,"platform":2862,"ratified":2706,"contact":2658,"extension":3338,"proposal":2343},115,"VK_KHR_external_fence_win32",{"number":3340,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3341,"ratified":2706,"contact":2696,"extension":3342,"proposal":2343},73,"VK_KHR_external_memory_capabilities,VK_VERSION_1_1","VK_KHR_external_memory",{"number":3344,"type":2688,"author":3249,"promotedto":2678,"provisional":2343,"depends":2584,"ratified":2706,"contact":2696,"extension":3345,"proposal":2343},72,"VK_KHR_external_memory_capabilities",{"number":3347,"type":2567,"author":3249,"provisional":2343,"depends":2831,"ratified":2732,"contact":2696,"extension":2836,"proposal":2343},75,{"number":3349,"type":2567,"author":3249,"provisional":2343,"depends":2831,"platform":2862,"ratified":2706,"contact":2696,"extension":3350,"proposal":2343},74,"VK_KHR_external_memory_win32",{"number":3352,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3353,"ratified":2706,"contact":2696,"extension":3354,"proposal":2343},78,"VK_KHR_external_semaphore_capabilities","VK_KHR_external_semaphore",{"number":3356,"type":2688,"author":3249,"promotedto":2678,"provisional":2343,"depends":2584,"ratified":2706,"contact":2696,"extension":3353,"proposal":2343},77,{"number":3358,"type":2567,"author":3249,"provisional":2343,"depends":3359,"ratified":2732,"contact":2696,"extension":3360,"proposal":2343},80,"VK_KHR_external_semaphore,VK_VERSION_1_1","VK_KHR_external_semaphore_fd",{"number":3362,"type":2567,"author":3249,"provisional":2343,"depends":3354,"platform":2862,"ratified":2706,"contact":2696,"extension":3363,"proposal":2343},79,"VK_KHR_external_semaphore_win32",{"number":3365,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2706,"contact":3241,"extension":3366,"proposal":2343},361,"VK_KHR_format_feature_flags2",{"number":3368,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"contact":2575,"extension":3369,"proposal":2539},323,"VK_KHR_fragment_shader_barycentric",{"number":3371,"type":2567,"author":3249,"provisional":2343,"depends":3372,"ratified":2732,"contact":2571,"extension":3373,"proposal":2539},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":3375,"type":2688,"author":3249,"provisional":2343,"depends":2798,"ratified":2732,"contact":2696,"extension":3376,"proposal":2343},122,"VK_KHR_get_display_properties2",{"number":3378,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":2948,"extension":3379,"proposal":2343},147,"VK_KHR_get_memory_requirements2",{"number":3381,"type":2688,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":2714,"extension":3272,"proposal":2343},60,{"number":3383,"type":2688,"author":3249,"provisional":2343,"depends":2801,"ratified":2732,"contact":2696,"extension":3384,"proposal":2343},120,"VK_KHR_get_surface_capabilities2",{"number":3386,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":2571,"extension":2866,"proposal":2343},189,{"number":3388,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"ratified":2706,"contact":2948,"extension":3389,"proposal":2343},148,"VK_KHR_image_format_list",{"number":3391,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3392,"ratified":2706,"contact":3284,"extension":3393,"proposal":2343},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":3395,"type":2567,"author":3249,"provisional":2343,"depends":2879,"ratified":2732,"contact":3201,"extension":3396,"proposal":2343},85,"VK_KHR_incremental_present",{"number":3398,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":2720,"extension":2918,"proposal":2343},534,{"number":3400,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":2720,"extension":2938,"proposal":2343},535,{"number":3402,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":2767,"extension":2943,"proposal":2539},527,{"number":3404,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":2720,"extension":2612,"proposal":2343},70,{"number":3406,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":3407,"extension":3408,"proposal":2343},118,"Michael Worcester @michaelworcester","VK_KHR_maintenance2",{"number":3410,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":2979,"proposal":2343},169,{"number":3412,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2678,"ratified":2706,"contact":2720,"extension":3413,"proposal":2343},414,"VK_KHR_maintenance4",{"number":3415,"type":2567,"author":3249,"provisional":2343,"depends":3416,"ratified":2706,"contact":3417,"extension":3418,"proposal":2539},471,"(VK_VERSION_1_1+VK_KHR_dynamic_rendering),VK_VERSION_1_3","Stu Smith @stu-s","VK_KHR_maintenance5",{"number":3420,"type":2567,"author":3249,"provisional":2343,"depends":2678,"ratified":2706,"contact":3421,"extension":3422,"proposal":2539},546,"Jon Leech @oddhack","VK_KHR_maintenance6",{"number":3424,"type":2567,"author":3249,"provisional":2343,"depends":2678,"ratified":2706,"contact":2707,"extension":3425,"proposal":2539},563,"VK_KHR_maintenance7",{"number":3427,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":2948,"extension":2947,"proposal":2539},272,{"number":3429,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":3430,"proposal":2343},54,"VK_KHR_multiview",{"extension":3432,"proposal":2343},"VK_KHR_object_refresh",{"number":3434,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"specialuse":2579,"contact":3435,"extension":3436,"proposal":2343},117,"Alon Or-bach @alonorbach","VK_KHR_performance_query",{"number":3438,"type":2567,"author":3249,"provisional":2343,"depends":3418,"ratified":2706,"contact":3417,"extension":3439,"proposal":2539},484,"VK_KHR_pipeline_binary",{"number":3441,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"specialuse":2579,"contact":2948,"extension":3442,"proposal":2343},270,"VK_KHR_pipeline_executable_properties",{"number":3444,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":2959,"extension":3445,"proposal":2343},291,"VK_KHR_pipeline_library",{"number":3447,"type":2688,"author":3249,"provisional":2343,"ratified":2706,"contact":3448,"extension":3449,"proposal":2343},395,"Charles Giessen @charles-lunarg","VK_KHR_portability_enumeration",{"number":3451,"type":2567,"author":3249,"provisional":2539,"depends":2584,"platform":2570,"ratified":2706,"contact":2964,"extension":3452,"proposal":2343},164,"VK_KHR_portability_subset",{"number":3454,"type":2567,"author":3249,"provisional":2343,"depends":3455,"ratified":2706,"contact":3456,"extension":3457,"proposal":2343},295,"VK_KHR_swapchain+VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","Keith Packard @keithp","VK_KHR_present_id",{"number":3459,"type":2567,"author":3249,"provisional":2343,"depends":3460,"ratified":2706,"contact":3456,"extension":3461,"proposal":2343},249,"VK_KHR_swapchain+VK_KHR_present_id","VK_KHR_present_wait",{"number":3463,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":3464,"proposal":2343},81,"VK_KHR_push_descriptor",{"number":3466,"type":2567,"author":3249,"provisional":2343,"depends":3467,"ratified":2706,"contact":3032,"extension":3468,"proposal":2343},349,"VK_KHR_spirv_1_4+VK_KHR_acceleration_structure","VK_KHR_ray_query",{"number":3470,"type":2567,"author":3249,"provisional":2343,"depends":3259,"ratified":2706,"contact":3032,"extension":3471,"proposal":2343},387,"VK_KHR_ray_tracing_maintenance1",{"number":3473,"type":2567,"author":3249,"provisional":2343,"depends":3467,"ratified":2706,"contact":3032,"extension":3474,"proposal":2343},348,"VK_KHR_ray_tracing_pipeline",{"number":3476,"type":2567,"author":3249,"provisional":2343,"depends":3259,"ratified":2706,"contact":3477,"extension":3478,"proposal":2539},482,"Eric Werness","VK_KHR_ray_tracing_position_fetch",{"number":3480,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":3481,"extension":3482,"proposal":2343},145,"John Kessenich @johnkslang","VK_KHR_relaxed_block_layout",{"number":2399,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"ratified":2706,"contact":2571,"extension":3484,"proposal":2343},"VK_KHR_sampler_mirror_clamp_to_edge",{"number":3486,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3487,"ratified":2706,"contact":3488,"extension":3489,"proposal":2343},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":3491,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3372,"ratified":2706,"contact":2720,"extension":3492,"proposal":2343},242,"VK_KHR_separate_depth_stencil_layouts",{"number":3494,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":3495,"extension":3496,"proposal":2343},181,"Aaron Hagan @ahagan","VK_KHR_shader_atomic_int64",{"number":3498,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":3495,"extension":3499,"proposal":2343},182,"VK_KHR_shader_clock",{"number":3501,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":3032,"extension":3502,"proposal":2343},64,"VK_KHR_shader_draw_parameters",{"number":3504,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"contact":2672,"extension":3505,"proposal":2539},545,"VK_KHR_shader_expect_assume",{"number":3507,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":3254,"extension":2598,"proposal":2343},83,{"number":3509,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":3254,"extension":3510,"proposal":2343},198,"VK_KHR_shader_float_controls",{"number":3512,"type":2567,"author":3249,"provisional":2343,"depends":3513,"ratified":2706,"contact":2763,"extension":3514,"proposal":2539},529,"VK_VERSION_1_1+VK_KHR_shader_float_controls","VK_KHR_shader_float_controls2",{"number":3516,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2706,"contact":2672,"extension":3517,"proposal":2539},281,"VK_KHR_shader_integer_dot_product",{"number":3519,"type":2567,"author":3249,"provisional":2343,"depends":2678,"ratified":2706,"contact":3520,"extension":3521,"proposal":2539},435,"Alan Baker @alan-baker","VK_KHR_shader_maximal_reconvergence",{"number":3523,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"ratified":2706,"contact":2749,"extension":3524,"proposal":2343},294,"VK_KHR_shader_non_semantic_info",{"number":3526,"type":2567,"author":3249,"provisional":2343,"depends":3527,"ratified":2706,"contact":2571,"extension":3528,"proposal":2539},236,"VK_VERSION_1_1+VK_KHR_vulkan_memory_model+VK_KHR_shader_maximal_reconvergence","VK_KHR_shader_quad_control",{"number":3530,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":3531,"extension":3532,"proposal":2539},559,"Nathan Gauër @Keenuts","VK_KHR_shader_relaxed_extended_instruction",{"number":3534,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2678,"ratified":2706,"contact":3113,"extension":3535,"proposal":2343},176,"VK_KHR_shader_subgroup_extended_types",{"number":3537,"type":2567,"author":3249,"provisional":2343,"ratified":2706,"contact":2672,"extension":3538,"proposal":2539},417,"VK_KHR_shader_subgroup_rotate",{"number":3540,"type":2567,"author":3249,"provisional":2343,"depends":2678,"ratified":2706,"contact":3520,"extension":3541,"proposal":2343},324,"VK_KHR_shader_subgroup_uniform_control_flow",{"number":3543,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2732,"contact":2658,"extension":3544,"proposal":2343},216,"VK_KHR_shader_terminate_invocation",{"number":3546,"type":2567,"author":3249,"provisional":2343,"depends":3547,"ratified":2732,"contact":3435,"extension":3548,"proposal":2343},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":3550,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":3513,"ratified":2706,"contact":2658,"extension":2958,"proposal":2343},237,{"number":3552,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"ratified":2706,"contact":3254,"extension":3553,"proposal":2343},132,"VK_KHR_storage_buffer_storage_class",{"number":2345,"type":2688,"author":3249,"provisional":2343,"ratified":2732,"contact":3555,"extension":2801,"proposal":2343},"James Jones @cubanismo,Ian Elliott @ianelliottus",{"number":3557,"type":2688,"author":3249,"provisional":2343,"depends":3558,"ratified":2706,"contact":3559,"extension":3560,"proposal":2343},240,"VK_VERSION_1_1+VK_KHR_get_surface_capabilities2","Sandeep Shinde @sashinde","VK_KHR_surface_protected_capabilities",{"number":2325,"type":2567,"author":3249,"provisional":2343,"depends":2801,"ratified":2732,"contact":3555,"extension":2879,"proposal":2343},{"number":3563,"type":2567,"author":3249,"provisional":2343,"depends":3564,"ratified":2732,"contact":2580,"extension":3565,"proposal":2343},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":3567,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2732,"contact":2571,"extension":3568,"proposal":2343},315,"VK_KHR_synchronization2",{"number":3570,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":2948,"extension":3571,"proposal":2343},208,"VK_KHR_timeline_semaphore",{"number":3573,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":2763,"extension":3574,"proposal":2343},254,"VK_KHR_uniform_buffer_standard_layout",{"number":3576,"type":2567,"author":3249,"promotedto":2678,"provisional":2343,"depends":3250,"ratified":2706,"contact":2658,"extension":3577,"proposal":2343},121,"VK_KHR_variable_pointers",{"number":3579,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2732,"contact":2767,"extension":3156,"proposal":2539},526,{"number":3581,"type":2567,"author":3249,"provisional":2343,"depends":3582,"ratified":2706,"contact":2923,"extension":3583,"proposal":2539},513,"VK_KHR_video_decode_queue","VK_KHR_video_decode_av1",{"number":2501,"type":2567,"author":3249,"provisional":2343,"depends":3582,"ratified":2706,"contact":3585,"extension":3586,"proposal":2539},"peter.fang@amd.com","VK_KHR_video_decode_h264",{"number":3588,"type":2567,"author":3249,"provisional":2343,"depends":3582,"ratified":2706,"contact":3585,"extension":3589,"proposal":2539},188,"VK_KHR_video_decode_h265",{"number":2439,"type":2567,"author":3249,"provisional":2343,"depends":3591,"ratified":2706,"contact":3592,"extension":3582,"proposal":2539},"VK_KHR_video_queue+(VK_KHR_synchronization2,VK_VERSION_1_3)","jake.beju@amd.com",{"number":2495,"type":2567,"author":3249,"provisional":2343,"depends":3594,"ratified":2706,"contact":3595,"extension":3596,"proposal":2539},"VK_KHR_video_encode_queue","Ahmed Abdelkhalek @aabdelkh","VK_KHR_video_encode_h264",{"number":2497,"type":2567,"author":3249,"provisional":2343,"depends":3594,"ratified":2706,"contact":3595,"extension":3598,"proposal":2539},"VK_KHR_video_encode_h265",{"number":3600,"type":2567,"author":3249,"provisional":2343,"depends":3591,"ratified":2706,"contact":3595,"extension":3594,"proposal":2539},300,{"number":3602,"type":2567,"author":3249,"provisional":2343,"depends":3603,"ratified":2706,"contact":2923,"extension":3604,"proposal":2539},516,"VK_KHR_video_queue","VK_KHR_video_maintenance1",{"number":2435,"type":2567,"author":3249,"provisional":2343,"depends":3606,"ratified":2706,"contact":3162,"extension":3603,"proposal":2539},"(VK_VERSION_1_1+VK_KHR_synchronization2),VK_VERSION_1_3",{"number":3608,"type":2567,"author":3249,"promotedto":2780,"provisional":2343,"depends":2584,"ratified":2706,"contact":2714,"extension":3609,"proposal":2343},212,"VK_KHR_vulkan_memory_model",{"number":2367,"type":2688,"author":3249,"provisional":2343,"depends":2801,"platform":3611,"ratified":2706,"contact":3612,"extension":3613,"proposal":2343},"wayland","Jesse Hall @critsec,Ian Elliott @ianelliottus","VK_KHR_wayland_surface",{"number":3615,"type":2567,"author":3249,"provisional":2343,"depends":3350,"platform":2862,"ratified":2706,"contact":3616,"extension":3617,"proposal":2343},76,"Carsten Rohde @crohde","VK_KHR_win32_keyed_mutex",{"number":2379,"type":2688,"author":3249,"provisional":2343,"depends":2801,"platform":2862,"ratified":2706,"contact":3612,"extension":3619,"proposal":2343},"VK_KHR_win32_surface",{"number":3621,"type":2567,"author":3249,"provisional":2343,"depends":2584,"ratified":2706,"contact":3622,"extension":3623,"proposal":2343},337,"Caio Marcelo de Oliveira Filho @cmarcelo","VK_KHR_workgroup_memory_explicit_layout",{"number":2363,"type":2688,"author":3249,"provisional":2343,"depends":2801,"platform":3625,"ratified":2706,"contact":3612,"extension":3626,"proposal":2343},"xcb","VK_KHR_xcb_surface",{"number":2359,"type":2688,"author":3249,"provisional":2343,"depends":2801,"platform":3628,"ratified":2706,"contact":3612,"extension":3629,"proposal":2343},"xlib","VK_KHR_xlib_surface",{"number":3631,"type":2567,"author":3249,"promotedto":2682,"provisional":2343,"depends":2584,"ratified":2706,"contact":3520,"extension":3632,"proposal":2343},326,"VK_KHR_zero_initialize_workgroup_memory",{"number":3634,"type":2688,"author":3147,"provisional":2343,"contact":3448,"extension":3635,"proposal":2539},460,"VK_LUNARG_direct_driver_loading",{"number":3637,"type":2567,"author":3638,"provisional":2343,"depends":2584,"specialuse":2759,"contact":3016,"extension":3639,"proposal":2343},576,"MESA","VK_MESA_image_alignment_control",{"number":3641,"type":2567,"author":3642,"provisional":2343,"depends":2584,"contact":3643,"extension":3644,"proposal":2539},531,"MSFT","Jesse Natalie @jenatali","VK_MSFT_layered_driver",{"number":3646,"type":2688,"author":3647,"deprecatedby":2969,"provisional":2343,"depends":2801,"platform":3648,"contact":2964,"extension":3649,"proposal":2343},123,"MVK","ios","VK_MVK_ios_surface",{"number":3651,"type":2688,"author":3647,"deprecatedby":2969,"provisional":2343,"depends":2801,"platform":3652,"contact":2964,"extension":3653,"proposal":2343},124,"macos","VK_MVK_macos_surface",{"number":3655,"type":2688,"author":3656,"provisional":2343,"depends":2801,"platform":3657,"contact":3658,"extension":3659,"proposal":2343},63,"NN","vi","Mathias Heyer gitlab:@mheyer","VK_NN_vi_surface",{"number":2459,"type":2567,"author":3661,"provisional":2343,"contact":3662,"extension":3663,"proposal":2343},"NVX","Eric Werness @ewerness-nv,Liam Middlebrook @liam-middlebrook","VK_NVX_binary_import",{"number":2463,"type":2567,"author":3661,"provisional":2343,"contact":3665,"extension":3666,"proposal":2343},"Eric Werness @ewerness-nv","VK_NVX_image_view_handle",{"number":3668,"type":2567,"author":3661,"provisional":2343,"depends":3669,"contact":2714,"extension":3670,"proposal":2343},98,"VK_KHR_multiview,VK_VERSION_1_1","VK_NVX_multiview_per_view_attributes",{"number":3672,"type":2567,"author":2694,"provisional":2343,"depends":2689,"platform":2862,"contact":3673,"extension":3674,"proposal":2343},346,"Jeff Juliano @jjuliano","VK_NV_acquire_winrt_display",{"number":3676,"type":2567,"author":2694,"provisional":2343,"contact":3665,"extension":3677,"proposal":2343},88,"VK_NV_clip_space_w_scaling",{"number":3679,"type":2567,"author":2694,"provisional":2343,"contact":3680,"extension":3681,"proposal":2343},560,"Lujin Wang @lujinwangnv","VK_NV_command_buffer_inheritance",{"number":3683,"type":2567,"author":2694,"promotedto":3274,"provisional":2343,"depends":2584,"contact":3684,"extension":3685,"proposal":2343},202,"Pat Brown @nvpbrown","VK_NV_compute_shader_derivatives",{"number":3687,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":2714,"extension":3688,"proposal":2343},250,"VK_NV_cooperative_matrix",{"number":3690,"type":2567,"author":2694,"provisional":2343,"depends":3691,"contact":2824,"extension":3692,"proposal":2343},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":3694,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3032,"extension":3695,"proposal":2343},51,"VK_NV_corner_sampled_image",{"number":3697,"type":2567,"author":2694,"provisional":2343,"depends":3698,"contact":3699,"extension":3700,"proposal":2343},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":3702,"type":2567,"author":2694,"provisional":2539,"contact":3703,"extension":3704,"proposal":2343},308,"Tristan Lorach @tlorach","VK_NV_cuda_kernel_launch",{"number":2447,"type":2567,"author":2694,"deprecatedby":3289,"provisional":2343,"contact":2714,"extension":3706,"proposal":2343},"VK_NV_dedicated_allocation",{"number":3708,"type":2567,"author":3709,"provisional":2343,"depends":3710,"contact":3711,"extension":3712,"proposal":2343},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":3714,"type":2567,"author":2694,"provisional":2343,"depends":2678,"contact":2720,"extension":3715,"proposal":2343},547,"VK_NV_descriptor_pool_overallocation",{"number":3717,"type":2567,"author":3709,"provisional":2343,"depends":2584,"contact":3711,"extension":3718,"proposal":2343},207,"VK_NV_device_diagnostic_checkpoints",{"number":3720,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3699,"extension":3721,"proposal":2343},301,"VK_NV_device_diagnostics_config",{"number":3723,"type":2567,"author":2694,"provisional":2343,"depends":3724,"contact":2959,"extension":3725,"proposal":2343},278,"(VK_VERSION_1_1+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_NV_device_generated_commands",{"number":3727,"type":2567,"author":2694,"provisional":2343,"depends":3725,"contact":2824,"extension":3728,"proposal":2343},429,"VK_NV_device_generated_commands_compute",{"number":3730,"type":2567,"author":2694,"provisional":2539,"depends":2994,"platform":2570,"contact":3731,"extension":3732,"proposal":2343},398,"Christoph Kubisch @pixeljetstream, Eric Werness @ewerness-nv","VK_NV_displacement_micromap",{"number":3734,"type":2567,"author":2694,"provisional":2343,"contact":3735,"extension":3736,"proposal":2343},493,"Russell Chou @russellcnv","VK_NV_extended_sparse_address_space",{"number":3738,"type":2567,"author":2694,"deprecatedby":3342,"provisional":2343,"depends":3739,"contact":2696,"extension":3740,"proposal":2343},57,"VK_NV_external_memory_capabilities","VK_NV_external_memory",{"number":3742,"type":2688,"author":2694,"deprecatedby":3345,"provisional":2343,"contact":2696,"extension":3739,"proposal":2343},56,{"number":3744,"type":2567,"author":2694,"provisional":2343,"depends":2831,"contact":3616,"extension":3745,"proposal":2343},372,"VK_NV_external_memory_rdma",{"extension":3747,"proposal":2343},"VK_NV_external_memory_sci_buf",{"number":3749,"type":2567,"author":2694,"deprecatedby":3350,"provisional":2343,"depends":3740,"platform":2862,"contact":2696,"extension":3750,"proposal":2343},58,"VK_NV_external_memory_win32",{"extension":3752,"proposal":2343},"VK_NV_external_sci_sync",{"extension":3754,"proposal":2343},"VK_NV_external_sci_sync2",{"number":3756,"type":2567,"author":2694,"provisional":2343,"contact":2714,"extension":3757,"proposal":2343},154,"VK_NV_fill_rectangle",{"number":3759,"type":2567,"author":2694,"provisional":2343,"contact":2714,"extension":3760,"proposal":2343},150,"VK_NV_fragment_coverage_to_color",{"number":3762,"type":2567,"author":2694,"promotedto":3369,"provisional":2343,"depends":2584,"contact":3684,"extension":3763,"proposal":2343},204,"VK_NV_fragment_shader_barycentric",{"number":3765,"type":2567,"author":2694,"provisional":2343,"depends":3373,"contact":3684,"extension":3766,"proposal":2343},327,"VK_NV_fragment_shading_rate_enums",{"number":3768,"type":2567,"author":2694,"provisional":2343,"contact":2714,"extension":3769,"proposal":2343},153,"VK_NV_framebuffer_mixed_samples",{"number":3771,"type":2567,"author":2694,"provisional":2343,"contact":3032,"extension":3772,"proposal":2343},96,"VK_NV_geometry_shader_passthrough",{"number":2391,"type":2567,"author":2694,"deprecatedby":3232,"provisional":2343,"contact":2720,"extension":3774,"proposal":2343},"VK_NV_glsl_shader",{"number":3776,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3777,"extension":3778,"proposal":2343},279,"David Zhao Akeley @akeley98","VK_NV_inherited_viewport_scissor",{"number":3780,"type":2567,"author":3709,"provisional":2343,"depends":2584,"contact":3781,"extension":3782,"proposal":2343},431,"sourav parmar @souravpNV","VK_NV_linear_color_attachment",{"number":3784,"type":2567,"author":2694,"provisional":2343,"contact":3785,"extension":3786,"proposal":2343},311,"Charles Hansen @cshansen","VK_NV_low_latency",{"number":3788,"type":2567,"author":2694,"provisional":2343,"depends":3789,"contact":3785,"extension":3790,"proposal":2343},506,"VK_VERSION_1_2,VK_KHR_timeline_semaphore","VK_NV_low_latency2",{"number":3792,"type":2567,"author":2694,"provisional":2343,"depends":3691,"contact":2824,"extension":3793,"proposal":2343},428,"VK_NV_memory_decompression",{"number":3795,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":2959,"extension":3796,"proposal":2343},203,"VK_NV_mesh_shader",{"number":3798,"type":2567,"author":2694,"provisional":2343,"depends":3799,"contact":3616,"extension":3800,"proposal":2343},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":3802,"type":2567,"author":2694,"provisional":2343,"depends":3422,"contact":2720,"extension":3803,"proposal":2343},517,"VK_NV_per_stage_descriptor_set",{"number":3805,"type":2567,"author":2694,"provisional":2343,"depends":2861,"contact":3806,"extension":3807,"proposal":2343},293,"Liya Li @liyli","VK_NV_present_barrier",{"extension":3809,"proposal":2343},"VK_NV_private_vendor_info",{"number":3811,"type":2567,"author":2694,"provisional":2343,"contact":3812,"extension":3813,"proposal":2343},556,"Rodrigo Locatti @rlocatti","VK_NV_raw_access_chains",{"number":3815,"type":2567,"author":2694,"deprecatedby":3474,"provisional":2343,"depends":3816,"contact":3665,"extension":3817,"proposal":2343},166,"(VK_KHR_get_physical_device_properties2+VK_KHR_get_memory_requirements2),VK_VERSION_1_1","VK_NV_ray_tracing",{"number":3819,"type":2567,"author":2694,"provisional":2343,"depends":3474,"contact":3665,"extension":3820,"proposal":2343},491,"VK_NV_ray_tracing_invocation_reorder",{"number":3822,"type":2567,"author":2694,"provisional":2343,"depends":3474,"contact":3477,"extension":3823,"proposal":2343},328,"VK_NV_ray_tracing_motion_blur",{"number":3825,"type":2567,"author":2694,"provisional":2343,"contact":2824,"extension":3826,"proposal":2539},569,"VK_NV_ray_tracing_validation",{"number":3828,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3699,"extension":3829,"proposal":2343},167,"VK_NV_representative_fragment_test",{"number":3831,"type":2567,"author":2694,"provisional":2343,"contact":2720,"extension":3832,"proposal":2343},95,"VK_NV_sample_mask_override_coverage",{"number":3834,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3684,"extension":3835,"proposal":2343},206,"VK_NV_scissor_exclusive",{"number":3837,"type":2567,"author":2694,"provisional":2343,"contact":2714,"extension":3838,"proposal":2343},564,"VK_NV_shader_atomic_float16_vector",{"number":3840,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3684,"extension":3841,"proposal":2343},205,"VK_NV_shader_image_footprint",{"number":3843,"type":2567,"author":2694,"provisional":2343,"depends":2678,"contact":3032,"extension":3844,"proposal":2343},155,"VK_NV_shader_sm_builtins",{"number":3846,"type":2567,"author":2694,"provisional":2343,"depends":2678,"contact":2714,"extension":3847,"proposal":2343},199,"VK_NV_shader_subgroup_partitioned",{"number":3849,"type":2567,"author":2694,"provisional":2343,"depends":2584,"contact":3684,"extension":3850,"proposal":2343},165,"VK_NV_shading_rate_image",{"number":3852,"type":2567,"author":2694,"provisional":2343,"contact":3032,"extension":3853,"proposal":2343},97,"VK_NV_viewport_array2",{"number":3855,"type":2567,"author":2694,"provisional":2343,"contact":2720,"extension":3856,"proposal":2343},99,"VK_NV_viewport_swizzle",{"number":3858,"type":2567,"author":2694,"promotedto":3617,"provisional":2343,"depends":3750,"platform":2862,"contact":3616,"extension":3859,"proposal":2343},59,"VK_NV_win32_keyed_mutex",{"number":3861,"type":2567,"author":2843,"provisional":2343,"depends":3862,"contact":2844,"extension":3863,"proposal":2343},522,"(VK_EXT_filter_cubic)+(VK_VERSION_1_2,VK_EXT_sampler_filter_minmax)","VK_QCOM_filter_cubic_clamp",{"number":3865,"type":2567,"author":2843,"provisional":2343,"depends":2845,"contact":2844,"extension":3866,"proposal":2343},520,"VK_QCOM_filter_cubic_weights",{"number":3868,"type":2567,"author":2843,"provisional":2343,"depends":3869,"contact":2844,"extension":3870,"proposal":2343},426,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_fragment_density_map","VK_QCOM_fragment_density_map_offset",{"number":3872,"type":2567,"author":2843,"provisional":2343,"depends":3873,"contact":2844,"extension":3874,"proposal":2539},441,"VK_KHR_format_feature_flags2,VK_VERSION_1_3","VK_QCOM_image_processing",{"number":3876,"type":2567,"author":2843,"provisional":2343,"depends":3874,"contact":2844,"extension":3877,"proposal":2343},519,"VK_QCOM_image_processing2",{"number":3879,"type":2567,"author":2843,"provisional":2343,"contact":2844,"extension":3880,"proposal":2343},511,"VK_QCOM_multiview_per_view_render_areas",{"number":3882,"type":2567,"author":2843,"provisional":2343,"depends":2584,"contact":2844,"extension":3883,"proposal":2343},489,"VK_QCOM_multiview_per_view_viewports",{"number":3885,"type":2567,"author":2843,"provisional":2343,"contact":2844,"extension":3886,"proposal":2343},172,"VK_QCOM_render_pass_shader_resolve",{"number":3888,"type":2567,"author":2843,"provisional":2343,"contact":2844,"extension":3889,"proposal":2343},302,"VK_QCOM_render_pass_store_ops",{"number":3891,"type":2567,"author":2843,"provisional":2343,"contact":2844,"extension":3892,"proposal":2343},283,"VK_QCOM_render_pass_transform",{"number":3894,"type":2567,"author":2843,"provisional":2343,"depends":3895,"contact":2844,"extension":3896,"proposal":2343},334,"VK_KHR_copy_commands2,VK_VERSION_1_3","VK_QCOM_rotated_copy_commands",{"number":3898,"type":2567,"author":2843,"provisional":2343,"depends":2584,"contact":2844,"extension":3899,"proposal":2539},485,"VK_QCOM_tile_properties",{"number":3901,"type":2567,"author":2843,"provisional":2343,"contact":2844,"extension":3902,"proposal":2343},521,"VK_QCOM_ycbcr_degamma",{"number":3904,"type":2567,"author":3905,"provisional":2343,"depends":2657,"platform":3906,"contact":3907,"extension":3908,"proposal":2343},530,"QNX","screen","Mike Gorchak @mgorchak-blackberry, Aaron Ruby @aruby-blackberry","VK_QNX_external_memory_screen_buffer",{"number":3910,"type":2688,"author":3905,"provisional":2343,"depends":2801,"platform":3906,"contact":3911,"extension":3912,"proposal":2343},379,"Mike Gorchak @mgorchak-blackberry","VK_QNX_screen_surface",{"number":3914,"type":2567,"author":3915,"provisional":2343,"depends":2584,"contact":2787,"extension":3916,"proposal":2343},486,"SEC","VK_SEC_amigo_profiling",{"number":3918,"type":2567,"author":3919,"provisional":2343,"depends":2584,"specialuse":2759,"contact":3016,"extension":3920,"proposal":2343},421,"VALVE","VK_VALVE_descriptor_set_host_mapping",{"number":3922,"type":2567,"author":3919,"promotedto":2981,"provisional":2343,"depends":2979,"specialuse":2759,"contact":2980,"extension":3923,"proposal":2343},352,"VK_VALVE_mutable_descriptor_type",1725732631900]