[{"data":1,"prerenderedAt":9721},["ShallowReactive",2],{"$flTTP1ACxoY3JWxDGBY-XekRsZsxpvIpMBaq215gW9ag":3,"$fGGa3jm2fyiZgwLdx4RmmiEvaouuONKLYoKH9T7IQulI":275,"$fZZdon-jIrG2iB203QPJXnJh0RMNtoiarKU3FZVbn1-c":1929},[4,9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,248,251,254,257,260,263,266,269,272],{"index":5,"title":6,"id":7,"appendix":8},0,"Preamble","preamble",false,{"index":10,"title":11,"id":12,"appendix":8},1,"Introduction","introduction",{"index":14,"title":15,"id":16,"appendix":8},2,"Fundamentals","fundamentals",{"index":18,"title":19,"id":20,"appendix":8},3,"Initialization","initialization",{"index":22,"title":23,"id":24,"appendix":8},4,"Devices and Queues","devsandqueues",{"index":26,"title":27,"id":28,"appendix":8},5,"Command Buffers","commandbuffers",{"index":30,"title":31,"id":32,"appendix":8},6,"Synchronization and Cache Control","synchronization",{"index":34,"title":35,"id":36,"appendix":8},7,"Render Pass","renderpass",{"index":38,"title":39,"id":40,"appendix":8},8,"Shaders","shaders",{"index":42,"title":43,"id":44,"appendix":8},9,"Pipelines","pipelines",{"index":46,"title":47,"id":48,"appendix":8},10,"Memory Allocation","memory",{"index":50,"title":51,"id":52,"appendix":8},11,"Resource Creation","resources",{"index":54,"title":55,"id":56,"appendix":8},12,"Images","images",{"index":58,"title":59,"id":60,"appendix":8},13,"Samplers","samplers",{"index":62,"title":63,"id":64,"appendix":8},14,"Resource Descriptors","descriptors",{"index":66,"title":67,"id":68,"appendix":8},15,"Descriptor Heaps","descriptorheaps",{"index":70,"title":71,"id":72,"appendix":8},16,"Descriptor Sets","descriptors-sets",{"index":74,"title":75,"id":76,"appendix":8},17,"Descriptor Buffers","descriptorbuffers",{"index":78,"title":79,"id":80,"appendix":8},18,"Shader Interfaces","interfaces",{"index":82,"title":83,"id":84,"appendix":8},19,"Sampling","textures",{"index":86,"title":87,"id":88,"appendix":8},20,"Fragment Density Map Operations","fragmentdensitymapops",{"index":90,"title":91,"id":92,"appendix":8},21,"Tensor Operations","tensors",{"index":94,"title":95,"id":96,"appendix":8},22,"Queries","queries",{"index":98,"title":99,"id":100,"appendix":8},23,"GPU Performance API Interface","gpu-performance-api",{"index":102,"title":103,"id":104,"appendix":8},24,"Clear Commands","clears",{"index":106,"title":107,"id":108,"appendix":8},25,"Copy Commands","copies",{"index":110,"title":111,"id":112,"appendix":8},26,"Drawing Commands","drawing",{"index":114,"title":115,"id":116,"appendix":8},27,"Fixed-Function Vertex Processing","fxvertex",{"index":118,"title":119,"id":120,"appendix":8},28,"Tessellation","tessellation",{"index":122,"title":123,"id":124,"appendix":8},29,"Geometry Shading","geometry",{"index":126,"title":127,"id":128,"appendix":8},30,"Mesh Shading","mesh",{"index":130,"title":131,"id":132,"appendix":8},31,"Cluster Culling Shading","cluster-culling",{"index":134,"title":135,"id":136,"appendix":8},32,"Fixed-Function Vertex Post-Processing","vertexpostproc",{"index":138,"title":139,"id":140,"appendix":8},33,"Rasterization","primsrast",{"index":142,"title":143,"id":144,"appendix":8},34,"Fragment Operations","fragops",{"index":146,"title":147,"id":148,"appendix":8},35,"The Framebuffer","framebuffer",{"index":150,"title":151,"id":152,"appendix":8},36,"Dispatching Commands","dispatch",{"index":154,"title":155,"id":156,"appendix":8},37,"Device-Generated Commands","device-generated-commands",{"index":158,"title":159,"id":160,"appendix":8},38,"Sparse Resources","sparsememory",{"index":162,"title":163,"id":164,"appendix":8},39,"Window System Integration (WSI)","wsi",{"index":166,"title":167,"id":168,"appendix":8},40,"Deferred Host Operations","deferred-host-operations",{"index":170,"title":171,"id":172,"appendix":8},41,"Private Data","private-data",{"index":174,"title":175,"id":176,"appendix":8},42,"Acceleration Structures","acceleration-structure",{"index":178,"title":179,"id":180,"appendix":8},43,"Compressed triangle data","compressed-triangle-data",{"index":182,"title":183,"id":184,"appendix":8},44,"Micromap","micromap",{"index":186,"title":187,"id":188,"appendix":8},45,"Ray Traversal","ray-traversal",{"index":190,"title":191,"id":192,"appendix":8},46,"Ray Tracing","ray-tracing",{"index":194,"title":195,"id":196,"appendix":8},47,"Memory Decompression","memory-decompression",{"index":198,"title":199,"id":200,"appendix":8},48,"Video Coding","video-coding",{"index":202,"title":203,"id":204,"appendix":8},49,"Optical Flow","opticalflow",{"index":206,"title":207,"id":208,"appendix":8},50,"Execution Graphs","executiongraphs",{"index":210,"title":211,"id":212,"appendix":8},51,"External Compute Queues","external-compute-queues",{"index":214,"title":215,"id":216,"appendix":8},52,"Data graphs","graphs",{"index":218,"title":219,"id":220,"appendix":8},53,"Extending Vulkan","extendingvulkan",{"index":222,"title":223,"id":224,"appendix":8},54,"Features","features",{"index":226,"title":227,"id":228,"appendix":8},55,"Limits","limits",{"index":230,"title":231,"id":232,"appendix":8},56,"Formats","formats",{"index":234,"title":235,"id":236,"appendix":8},57,"Additional Capabilities","capabilities",{"index":238,"title":239,"id":240,"appendix":8},58,"Debugging","debugging",{"index":5,"title":242,"id":243,"appendix":244},"Vulkan Environment for SPIR-V","spirvenv",true,{"index":10,"title":246,"id":247,"appendix":244},"Memory Model","memory-model",{"index":14,"title":249,"id":250,"appendix":244},"Compressed Image Formats","compressed_image_formats",{"index":18,"title":252,"id":253,"appendix":244},"Core Revisions (Informative)","versions",{"index":22,"title":255,"id":256,"appendix":244},"Layers & Extensions (Informative)","extensions",{"index":26,"title":258,"id":259,"appendix":244},"Vulkan Roadmap Milestones","roadmap",{"index":30,"title":261,"id":262,"appendix":244},"Legacy and Superseded Functionality","legacy",{"index":34,"title":264,"id":265,"appendix":244},"API Boilerplate","boilerplate",{"index":38,"title":267,"id":268,"appendix":244},"Invariance","invariance",{"index":42,"title":270,"id":271,"appendix":244},"Lexicon","lexicon",{"index":46,"title":273,"id":274,"appendix":244},"Credits (Informative)","credits",[276,284,289,294,299,302,307,310,313,316,319,323,327,330,333,336,338,340,343,346,350,352,356,358,361,363,366,374,378,384,387,390,393,397,400,405,409,413,417,419,423,426,430,435,442,448,450,454,460,463,467,472,476,480,484,488,491,494,497,503,506,509,513,517,522,526,529,531,536,539,544,550,554,558,562,565,571,574,578,581,585,588,592,595,599,603,606,611,616,619,622,627,630,634,639,644,648,652,656,660,665,669,673,676,679,683,686,689,692,696,701,705,708,712,717,721,726,729,733,736,741,745,749,752,756,761,764,769,774,777,780,784,788,792,797,801,804,809,813,818,822,825,828,832,836,840,843,845,850,854,858,861,864,867,870,873,876,879,882,885,888,891,895,899,902,905,908,911,914,917,920,923,926,930,934,939,942,947,950,953,956,959,961,965,970,974,978,982,984,988,991,994,1001,1005,1009,1013,1019,1021,1025,1029,1032,1035,1039,1044,1049,1055,1059,1061,1065,1068,1073,1077,1082,1086,1090,1092,1095,1098,1100,1104,1107,1110,1114,1119,1123,1127,1129,1134,1138,1142,1144,1148,1150,1152,1155,1157,1160,1163,1167,1171,1173,1177,1180,1184,1187,1189,1192,1196,1198,1202,1205,1208,1211,1215,1218,1221,1224,1227,1229,1232,1236,1239,1241,1244,1246,1248,1250,1253,1256,1260,1263,1266,1270,1274,1277,1280,1282,1285,1287,1289,1292,1296,1300,1303,1306,1310,1313,1318,1323,1325,1329,1333,1336,1340,1343,1345,1349,1353,1355,1357,1362,1365,1369,1373,1376,1379,1382,1385,1388,1390,1393,1397,1400,1403,1407,1410,1414,1418,1421,1424,1427,1430,1433,1437,1440,1443,1445,1447,1452,1453,1456,1460,1463,1466,1469,1472,1475,1477,1481,1484,1487,1490,1494,1498,1500,1502,1505,1509,1511,1515,1518,1520,1523,1527,1531,1533,1537,1540,1543,1546,1549,1553,1558,1563,1567,1573,1577,1579,1583,1587,1590,1593,1597,1601,1605,1608,1611,1614,1618,1620,1625,1629,1631,1637,1640,1643,1646,1650,1653,1657,1662,1665,1668,1671,1672,1675,1677,1679,1681,1683,1686,1689,1692,1695,1698,1701,1703,1707,1711,1715,1719,1722,1725,1729,1732,1736,1740,1744,1746,1750,1754,1758,1761,1764,1767,1770,1773,1776,1779,1782,1785,1788,1791,1794,1797,1800,1803,1808,1811,1814,1817,1820,1823,1827,1830,1834,1838,1841,1844,1847,1850,1853,1856,1859,1862,1866,1869,1874,1877,1880,1883,1889,1893,1897,1901,1904,1909,1913,1917,1920,1924],{"number":277,"type":278,"author":279,"provisional":244,"depends":280,"platform":281,"contact":282,"extension":283,"proposal":244},479,"device","AMD","VK_KHR_acceleration_structure+(VK_KHR_maintenance5,VK_VERSION_1_4)","provisional","Stu Smith @stu-s","VK_AMDX_dense_geometry_format",{"number":285,"type":278,"author":279,"provisional":244,"depends":286,"platform":281,"contact":287,"extension":288,"proposal":244},135,"((VK_KHR_synchronization2+VK_KHR_spirv_1_4+VK_EXT_extended_dynamic_state),VK_VERSION_1_3)+VK_KHR_maintenance5+VK_KHR_pipeline_library","Tobias Hector @tobski","VK_AMDX_shader_enqueue",{"number":290,"type":278,"author":279,"provisional":8,"depends":291,"contact":292,"extension":293,"proposal":244},477,"VK_KHR_get_physical_device_properties2,VK_VERSION_1_1","Stu Smith","VK_AMD_anti_lag",{"number":295,"type":278,"author":279,"provisional":8,"specialuse":296,"contact":297,"extension":298,"proposal":8},180,"devtools","Daniel Rakos @drakos-amd","VK_AMD_buffer_marker",{"number":300,"type":278,"author":279,"provisional":8,"depends":291,"contact":287,"extension":301,"proposal":8},230,"VK_AMD_device_coherent_memory",{"number":303,"type":278,"author":279,"provisional":8,"depends":304,"contact":305,"extension":306,"proposal":8},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":142,"type":278,"author":279,"promotedto":308,"provisional":8,"contact":297,"extension":309,"proposal":8},"VK_KHR_draw_indirect_count","VK_AMD_draw_indirect_count",{"number":110,"type":278,"author":279,"provisional":8,"contact":311,"extension":312,"proposal":8},"Dominik Witczak @dominikwitczakamd","VK_AMD_gcn_shader",{"number":314,"type":278,"author":279,"provisional":8,"depends":291,"contact":282,"extension":315,"proposal":244},134,"VK_AMD_gpa_interface",{"number":154,"type":278,"author":279,"deprecatedby":317,"provisional":8,"contact":311,"extension":318,"proposal":8},"VK_KHR_shader_float16_int8","VK_AMD_gpu_shader_half_float",{"number":320,"type":278,"author":279,"deprecatedby":317,"provisional":8,"contact":321,"extension":322,"proposal":8},133,"Qun Lin @linqun","VK_AMD_gpu_shader_int16",{"number":324,"type":278,"author":279,"provisional":8,"contact":325,"extension":326,"proposal":8},190,"Martin Dinkov @mdinkov","VK_AMD_memory_overallocation_behavior",{"number":328,"type":278,"author":279,"provisional":8,"contact":305,"extension":329,"proposal":8},137,"VK_AMD_mixed_attachment_samples",{"number":150,"type":278,"author":279,"obsoletedby":331,"provisional":8,"contact":305,"extension":332,"proposal":8},"VK_KHR_maintenance1","VK_AMD_negative_viewport_height",{"number":334,"type":278,"author":279,"provisional":8,"contact":305,"extension":335,"proposal":8},184,"VK_AMD_pipeline_compiler_control",{"number":82,"type":278,"author":279,"provisional":8,"contact":297,"extension":337,"proposal":8},"VK_AMD_rasterization_order",{"number":158,"type":278,"author":279,"provisional":8,"contact":311,"extension":339,"proposal":8},"VK_AMD_shader_ballot",{"number":341,"type":278,"author":279,"provisional":8,"depends":291,"contact":325,"extension":342,"proposal":8},186,"VK_AMD_shader_core_properties",{"number":344,"type":278,"author":279,"provisional":8,"depends":342,"contact":305,"extension":345,"proposal":8},228,"VK_AMD_shader_core_properties2",{"number":347,"type":278,"author":348,"provisional":8,"depends":291,"contact":287,"extension":349,"proposal":244},322,"EXT","VK_AMD_shader_early_and_late_fragment_tests",{"number":94,"type":278,"author":279,"provisional":8,"contact":321,"extension":351,"proposal":8},"VK_AMD_shader_explicit_vertex_parameter",{"number":353,"type":278,"author":279,"provisional":8,"contact":354,"extension":355,"proposal":8},138,"Aaron Hagan @AaronHaganAMD","VK_AMD_shader_fragment_mask",{"number":194,"type":278,"author":279,"provisional":8,"contact":311,"extension":357,"proposal":8},"VK_AMD_shader_image_load_store_lod",{"number":178,"type":278,"author":279,"provisional":8,"specialuse":296,"contact":359,"extension":360,"proposal":8},"Jaakko Konttinen @jaakkoamd","VK_AMD_shader_info",{"number":90,"type":278,"author":279,"provisional":8,"contact":321,"extension":362,"proposal":8},"VK_AMD_shader_trinary_minmax",{"number":174,"type":278,"author":279,"provisional":8,"depends":291,"contact":364,"extension":365,"proposal":8},"Rex Xu @amdrexu","VK_AMD_texture_gather_bias_lod",{"number":367,"type":278,"author":368,"provisional":8,"depends":369,"platform":370,"specialuse":371,"contact":372,"extension":373,"proposal":244},469,"ANDROID","VK_ANDROID_external_memory_android_hardware_buffer","android","glemulation","Chris Forbes @chrisforbes","VK_ANDROID_external_format_resolve",{"number":375,"type":278,"author":368,"provisional":8,"depends":376,"platform":370,"contact":377,"extension":369,"proposal":8},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":379,"type":278,"author":380,"provisional":8,"depends":381,"contact":382,"extension":383,"proposal":8},508,"ARM","VK_VERSION_1_3+VK_KHR_maintenance5+VK_KHR_deferred_host_operations","Kevin Petit @kpet","VK_ARM_data_graph",{"number":385,"type":278,"author":380,"provisional":8,"depends":383,"contact":382,"extension":386,"proposal":8},509,"VK_ARM_data_graph_instruction_set_tosa",{"number":388,"type":278,"author":380,"provisional":8,"contact":382,"extension":389,"proposal":8},677,"VK_ARM_data_graph_neural_accelerator_statistics",{"number":391,"type":278,"author":380,"provisional":8,"depends":383,"contact":382,"extension":392,"proposal":8},632,"VK_ARM_data_graph_optical_flow",{"number":394,"type":278,"author":380,"provisional":8,"depends":291,"contact":395,"extension":396,"proposal":8},610,"Jan-Harald Fredriksen @janharaldfredriksen-arm","VK_ARM_format_pack",{"number":398,"type":278,"author":380,"provisional":8,"depends":291,"specialuse":296,"contact":395,"extension":399,"proposal":244},606,"VK_ARM_performance_counters_by_region",{"number":401,"type":278,"author":380,"provisional":8,"depends":402,"contact":403,"extension":404,"proposal":244},597,"VK_EXT_opacity_micromap","Mathieu Robart @mathieurobart-arm","VK_ARM_pipeline_opacity_micromap",{"number":406,"type":278,"author":380,"promotedto":407,"provisional":8,"depends":291,"contact":395,"extension":408,"proposal":8},343,"VK_EXT_rasterization_order_attachment_access","VK_ARM_rasterization_order_attachment_access",{"number":410,"type":278,"author":380,"provisional":8,"depends":411,"contact":395,"extension":412,"proposal":244},425,"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_ARM_render_pass_striped",{"number":414,"type":278,"author":380,"provisional":8,"depends":415,"contact":382,"extension":416,"proposal":8},418,"VK_ARM_shader_core_builtins","VK_ARM_scheduling_controls",{"number":418,"type":278,"author":380,"provisional":8,"depends":291,"contact":382,"extension":415,"proposal":8},498,{"number":420,"type":278,"author":380,"provisional":8,"depends":421,"contact":395,"extension":422,"proposal":8},416,"VK_VERSION_1_1","VK_ARM_shader_core_properties",{"number":424,"type":278,"author":380,"provisional":8,"depends":291,"specialuse":296,"contact":395,"extension":425,"proposal":244},608,"VK_ARM_shader_instrumentation",{"number":427,"type":278,"author":380,"provisional":8,"depends":428,"contact":382,"extension":429,"proposal":244},461,"VK_VERSION_1_3","VK_ARM_tensors",{"number":431,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":432,"contact":433,"extension":434,"proposal":8},341,"vulkansc","Joshua Ashton @Joshua-Ashton","VK_EXT_4444_formats",{"number":436,"type":437,"author":348,"provisional":8,"depends":438,"ratified":439,"contact":440,"extension":441,"proposal":8},286,"instance","VK_EXT_direct_mode_display","vulkan","Drew DeVault sir@cmpwn.com","VK_EXT_acquire_drm_display",{"number":443,"type":437,"author":444,"provisional":8,"depends":438,"platform":445,"ratified":439,"contact":446,"extension":447,"proposal":8},90,"NV","xlib_xrandr","James Jones @cubanismo","VK_EXT_acquire_xlib_display",{"extension":449,"proposal":8},"VK_EXT_application_parameters",{"number":451,"type":278,"author":380,"provisional":8,"depends":291,"ratified":452,"contact":395,"extension":453,"proposal":8},68,"vulkan,vulkansc","VK_EXT_astc_decode_mode",{"number":455,"type":278,"author":348,"provisional":8,"depends":456,"ratified":439,"specialuse":457,"contact":458,"extension":459,"proposal":244},525,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_attachment_feedback_loop_layout","glemulation,d3demulation","Mike Blumenkrantz @zmike","VK_EXT_attachment_feedback_loop_dynamic_state",{"number":461,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":457,"contact":433,"extension":462,"proposal":244},340,"VK_EXT_attachment_feedback_loop_layout",{"number":464,"type":278,"author":444,"provisional":8,"depends":291,"ratified":452,"contact":465,"extension":466,"proposal":8},149,"Jeff Bolz @jeffbolznv","VK_EXT_blend_operation_advanced",{"number":468,"type":278,"author":348,"provisional":8,"depends":469,"ratified":439,"specialuse":457,"contact":470,"extension":471,"proposal":8},412,"VK_EXT_custom_border_color","Piers Daniell @pdaniell-nv","VK_EXT_border_color_swizzle",{"number":473,"type":278,"author":444,"deprecatedby":474,"provisional":8,"depends":291,"contact":465,"extension":475,"proposal":8},245,"VK_KHR_buffer_device_address","VK_EXT_buffer_device_address",{"number":477,"type":278,"author":348,"promotedto":478,"provisional":8,"depends":291,"contact":297,"extension":479,"proposal":244},185,"VK_KHR_calibrated_timestamps","VK_EXT_calibrated_timestamps",{"number":481,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":482,"extension":483,"proposal":8},382,"Sharif Elcott @selcott","VK_EXT_color_write_enable",{"number":485,"type":278,"author":444,"provisional":8,"depends":291,"ratified":439,"contact":486,"extension":487,"proposal":8},82,"Vikram Kushwaha @vkushwaha","VK_EXT_conditional_rendering",{"number":489,"type":278,"author":444,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":490,"proposal":8},102,"VK_EXT_conservative_rasterization",{"number":492,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"specialuse":457,"contact":493,"extension":469,"proposal":8},288,"Liam Middlebrook @liam-middlebrook",{"number":495,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":496,"proposal":244},629,"VK_EXT_custom_resolve",{"number":98,"type":278,"author":498,"promotedto":499,"provisional":8,"depends":500,"specialuse":240,"contact":501,"extension":502,"proposal":8},"Baldur Karlsson","VK_EXT_debug_utils","VK_EXT_debug_report","Baldur Karlsson @baldurk","VK_EXT_debug_marker",{"number":54,"type":437,"author":504,"deprecatedby":499,"provisional":8,"specialuse":240,"contact":505,"extension":500,"proposal":8},"GOOGLE","Courtney Goeltzenleuchter @courtney-g",{"number":507,"type":437,"author":348,"provisional":8,"ratified":452,"specialuse":240,"contact":508,"extension":499,"proposal":8},129,"Mark Young @marky-lunarg",{"number":510,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":511,"contact":433,"extension":512,"proposal":244},284,"d3demulation","VK_EXT_depth_bias_control",{"number":514,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":515,"extension":516,"proposal":244},583,"Jules Blok @jules","VK_EXT_depth_clamp_control",{"number":518,"type":278,"author":348,"promotedto":519,"provisional":8,"depends":291,"ratified":439,"contact":520,"extension":521,"proposal":8},422,"VK_KHR_depth_clamp_zero_one","Graeme Leese @gnl21","VK_EXT_depth_clamp_zero_one",{"number":523,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":371,"contact":524,"extension":525,"proposal":8},356,"Shahbaz Youssefi @syoussefi","VK_EXT_depth_clip_control",{"number":527,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"specialuse":511,"contact":470,"extension":528,"proposal":8},103,"VK_EXT_depth_clip_enable",{"number":62,"type":278,"author":444,"provisional":8,"ratified":452,"contact":470,"extension":530,"proposal":8},"VK_EXT_depth_range_unrestricted",{"number":532,"type":278,"author":348,"deprecatedby":533,"provisional":8,"depends":534,"ratified":439,"contact":287,"extension":535,"proposal":244},317,"VK_EXT_descriptor_heap","((((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":537,"type":278,"author":348,"provisional":8,"depends":538,"ratified":439,"contact":287,"extension":533,"proposal":244},136,"VK_KHR_maintenance5+(VK_KHR_buffer_device_address,VK_VERSION_1_2)",{"number":540,"type":278,"author":444,"promotedto":541,"provisional":8,"depends":542,"ratified":439,"contact":465,"extension":543,"proposal":8},162,"VK_VERSION_1_2","(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance3),VK_VERSION_1_1","VK_EXT_descriptor_indexing",{"number":545,"type":278,"author":348,"provisional":8,"depends":546,"ratified":439,"specialuse":547,"contact":548,"extension":549,"proposal":8},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":551,"type":278,"author":348,"promotedto":552,"provisional":8,"depends":291,"ratified":439,"contact":548,"extension":553,"proposal":244},342,"VK_KHR_device_fault","VK_EXT_device_fault",{"number":555,"type":278,"author":348,"provisional":8,"depends":556,"ratified":439,"contact":458,"extension":557,"proposal":244},573,"((VK_KHR_buffer_device_address,VK_VERSION_1_2)+VK_KHR_maintenance5),VK_VERSION_1_3","VK_EXT_device_generated_commands",{"number":559,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":296,"contact":560,"extension":561,"proposal":8},285,"Yiwei Zhang @zzyiwei","VK_EXT_device_memory_report",{"number":563,"type":437,"author":444,"provisional":8,"depends":564,"ratified":452,"contact":446,"extension":438,"proposal":8},89,"VK_KHR_display",{"number":566,"type":437,"author":348,"provisional":8,"depends":567,"platform":568,"ratified":439,"contact":569,"extension":570,"proposal":8},347,"VK_KHR_surface","directfb","Nicolas Caramelli @caramelli","VK_EXT_directfb_surface",{"number":572,"type":278,"author":444,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":573,"proposal":8},100,"VK_EXT_discard_rectangles",{"number":575,"type":278,"author":444,"provisional":8,"depends":576,"ratified":452,"contact":446,"extension":577,"proposal":8},92,"VK_EXT_display_surface_counter+VK_KHR_swapchain","VK_EXT_display_control",{"number":579,"type":437,"author":444,"provisional":8,"depends":564,"ratified":452,"contact":446,"extension":580,"proposal":8},91,"VK_EXT_display_surface_counter",{"number":582,"type":278,"author":348,"provisional":8,"depends":583,"ratified":439,"contact":470,"extension":584,"proposal":244},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":586,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":587,"proposal":8},268,"VK_EXT_extended_dynamic_state",{"number":589,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":452,"contact":590,"extension":591,"proposal":8},378,"Vikram Kushwaha @vkushwaha-nv","VK_EXT_extended_dynamic_state2",{"number":593,"type":278,"author":444,"provisional":8,"depends":291,"ratified":439,"contact":470,"extension":594,"proposal":244},456,"VK_EXT_extended_dynamic_state3",{"number":596,"type":278,"author":348,"provisional":8,"depends":597,"ratified":439,"contact":446,"extension":598,"proposal":244},454,"VK_KHR_external_memory,VK_VERSION_1_1","VK_EXT_external_memory_acquire_unmodified",{"number":600,"type":278,"author":348,"provisional":8,"depends":601,"ratified":452,"contact":446,"extension":602,"proposal":8},126,"VK_KHR_external_memory_fd","VK_EXT_external_memory_dma_buf",{"number":604,"type":278,"author":348,"provisional":8,"depends":597,"ratified":452,"contact":297,"extension":605,"proposal":8},179,"VK_EXT_external_memory_host",{"number":607,"type":278,"author":348,"provisional":8,"depends":597,"platform":608,"ratified":439,"contact":609,"extension":610,"proposal":244},603,"metal","Aitor Camacho Larrondo @aitor-lunarg","VK_EXT_external_memory_metal",{"number":612,"type":278,"author":613,"provisional":8,"ratified":452,"contact":614,"extension":615,"proposal":8},171,"QCOM","Matthew Netsch @mnetsch","VK_EXT_filter_cubic",{"number":617,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":614,"extension":618,"proposal":8},219,"VK_EXT_fragment_density_map",{"number":620,"type":278,"author":348,"provisional":8,"depends":618,"ratified":439,"contact":614,"extension":621,"proposal":8},333,"VK_EXT_fragment_density_map2",{"number":623,"type":278,"author":348,"provisional":8,"depends":624,"ratified":439,"contact":625,"extension":626,"proposal":244},620,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_fragment_density_map+(VK_KHR_create_renderpass2,VK_VERSION_1_2)+(VK_VERSION_1_3,VK_KHR_dynamic_rendering)","Connor Abbott @cwabbott0","VK_EXT_fragment_density_map_offset",{"number":628,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":629,"proposal":8},252,"VK_EXT_fragment_shader_interlock",{"number":631,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":632,"extension":633,"proposal":244},376,"James Fitzpatrick @jamesfitzpatrick","VK_EXT_frame_boundary",{"number":635,"type":278,"author":348,"provisional":8,"depends":636,"platform":637,"ratified":439,"contact":446,"extension":638,"proposal":8},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":640,"type":278,"author":348,"promotedto":641,"provisional":8,"contact":642,"extension":643,"proposal":8},175,"VK_KHR_global_priority","Andres Rodriguez @lostgoat","VK_EXT_global_priority",{"number":645,"type":278,"author":348,"promotedto":641,"provisional":8,"depends":646,"contact":560,"extension":647,"proposal":8},389,"VK_EXT_global_priority+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_global_priority_query",{"number":649,"type":278,"author":279,"provisional":8,"depends":650,"ratified":439,"contact":287,"extension":651,"proposal":244},321,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_pipeline_library","VK_EXT_graphics_pipeline_library",{"number":653,"type":278,"author":504,"provisional":8,"depends":654,"ratified":452,"contact":505,"extension":655,"proposal":8},106,"VK_KHR_swapchain","VK_EXT_hdr_metadata",{"number":657,"type":437,"author":348,"provisional":8,"depends":567,"ratified":452,"contact":658,"extension":659,"proposal":8},257,"Lisa Wu @chengtianww","VK_EXT_headless_surface",{"number":661,"type":278,"author":348,"promotedto":662,"provisional":8,"depends":663,"ratified":439,"contact":524,"extension":664,"proposal":244},271,"VK_VERSION_1_4","((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":666,"type":278,"author":348,"promotedto":541,"provisional":8,"depends":291,"contact":667,"extension":668,"proposal":8},262,"Bas Nieuwenhuizen @BNieuwenhuizen","VK_EXT_host_query_reset",{"number":670,"type":278,"author":348,"provisional":8,"depends":671,"ratified":439,"specialuse":371,"contact":458,"extension":672,"proposal":244},394,"(VK_KHR_maintenance1+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","VK_EXT_image_2d_view_of_3d",{"number":674,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":395,"extension":675,"proposal":244},339,"VK_EXT_image_compression_control",{"number":677,"type":278,"author":348,"provisional":8,"depends":675,"ratified":439,"contact":395,"extension":678,"proposal":8},438,"VK_EXT_image_compression_control_swapchain",{"number":680,"type":278,"author":348,"provisional":8,"depends":681,"ratified":452,"contact":446,"extension":682,"proposal":8},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":684,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":432,"contact":520,"extension":685,"proposal":8},336,"VK_EXT_image_robustness",{"number":687,"type":278,"author":348,"provisional":8,"depends":671,"ratified":439,"specialuse":511,"contact":458,"extension":688,"proposal":244},419,"VK_EXT_image_sliced_view_of_3d",{"number":690,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":433,"extension":691,"proposal":8},392,"VK_EXT_image_view_min_lod",{"number":693,"type":278,"author":348,"promotedto":694,"provisional":8,"depends":291,"contact":470,"extension":695,"proposal":8},266,"VK_KHR_index_type_uint8","VK_EXT_index_type_uint8",{"number":697,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":698,"contact":699,"extension":700,"proposal":8},139,"(VK_KHR_get_physical_device_properties2+VK_KHR_maintenance1),VK_VERSION_1_1","Daniel Rakos @aqnuep","VK_EXT_inline_uniform_block",{"number":702,"type":437,"author":348,"provisional":8,"ratified":452,"contact":703,"extension":704,"proposal":244},497,"Christophe Riccio @christophe","VK_EXT_layer_settings",{"number":706,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":371,"contact":524,"extension":707,"proposal":244},466,"VK_EXT_legacy_dithering",{"number":709,"type":278,"author":348,"provisional":8,"depends":710,"ratified":439,"specialuse":371,"contact":458,"extension":711,"proposal":244},496,"VK_EXT_vertex_input_dynamic_state","VK_EXT_legacy_vertex_attributes",{"number":713,"type":278,"author":348,"promotedto":714,"provisional":8,"depends":291,"specialuse":715,"contact":465,"extension":716,"proposal":8},260,"VK_KHR_line_rasterization","cadsupport","VK_EXT_line_rasterization",{"number":718,"type":278,"author":348,"promotedto":719,"provisional":8,"ratified":439,"contact":524,"extension":720,"proposal":8},401,"VK_KHR_load_store_op_none","VK_EXT_load_store_op_none",{"number":722,"type":278,"author":348,"provisional":8,"depends":723,"ratified":439,"contact":724,"extension":725,"proposal":244},273,"VK_KHR_map_memory2,VK_VERSION_1_4","Faith Ekstrand @gfxstrand","VK_EXT_map_memory_placed",{"number":727,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":465,"extension":728,"proposal":8},238,"VK_EXT_memory_budget",{"number":730,"type":278,"author":348,"provisional":8,"depends":731,"ratified":439,"contact":590,"extension":732,"proposal":244},551,"VK_KHR_get_physical_device_properties2+VK_KHR_buffer_device_address","VK_EXT_memory_decompression",{"number":734,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":735,"proposal":8},239,"VK_EXT_memory_priority",{"number":737,"type":278,"author":348,"provisional":8,"depends":738,"ratified":439,"contact":739,"extension":740,"proposal":244},329,"VK_KHR_spirv_1_4,VK_VERSION_1_2","Christoph Kubisch @pixeljetstream","VK_EXT_mesh_shader",{"number":742,"type":278,"author":348,"provisional":8,"platform":608,"ratified":439,"contact":743,"extension":744,"proposal":244},312,"Bill Hollings @billhollings","VK_EXT_metal_objects",{"number":746,"type":437,"author":348,"provisional":8,"depends":567,"platform":608,"ratified":439,"contact":747,"extension":748,"proposal":8},218,"Dzmitry Malyshau @kvark","VK_EXT_metal_surface",{"number":750,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":751,"proposal":8},393,"VK_EXT_multi_draw",{"number":753,"type":278,"author":348,"provisional":8,"depends":754,"ratified":439,"contact":524,"extension":755,"proposal":244},377,"(VK_KHR_create_renderpass2+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_EXT_multisampled_render_to_single_sampled",{"number":757,"type":278,"author":348,"provisional":8,"depends":758,"ratified":439,"specialuse":511,"contact":759,"extension":760,"proposal":244},495,"VK_KHR_maintenance3,VK_VERSION_1_1","Joshua Ashton @Joshua-Ashton,Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_mutable_descriptor_type",{"number":762,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":470,"extension":763,"proposal":8},452,"VK_EXT_nested_command_buffer",{"number":765,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":766,"contact":767,"extension":768,"proposal":244},423,"d3demulation,glemulation","Georg Lehmann @DadSchoorse","VK_EXT_non_seamless_cube_map",{"number":770,"type":278,"author":348,"promotedto":771,"provisional":8,"depends":772,"ratified":439,"contact":773,"extension":402,"proposal":244},397,"VK_KHR_opacity_micromap","VK_KHR_acceleration_structure+(VK_KHR_synchronization2,VK_VERSION_1_3)","Christoph Kubisch @pixeljetstream, Eric Werness",{"number":775,"type":278,"author":348,"provisional":8,"depends":735,"ratified":439,"contact":470,"extension":776,"proposal":8},413,"VK_EXT_pageable_device_local_memory",{"number":778,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":305,"extension":779,"proposal":8},213,"VK_EXT_pci_bus_info",{"number":781,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":782,"extension":783,"proposal":8},354,"Simon Ser @emersion","VK_EXT_physical_device_drm",{"number":785,"type":278,"author":279,"promotedto":428,"provisional":8,"depends":291,"contact":786,"extension":787,"proposal":8},298,"Gregory Grebe @grgrebe_amd","VK_EXT_pipeline_creation_cache_control",{"number":789,"type":278,"author":504,"promotedto":428,"provisional":8,"specialuse":296,"contact":790,"extension":791,"proposal":8},193,"Jean-Francois Roy @jfroy","VK_EXT_pipeline_creation_feedback",{"number":793,"type":278,"author":348,"provisional":8,"depends":794,"ratified":439,"contact":795,"extension":796,"proposal":244},499,"VK_KHR_ray_tracing_pipeline+VK_KHR_pipeline_library","Hans-Kristian Arntzen @HansKristian-Work","VK_EXT_pipeline_library_group_handles",{"number":798,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":799,"extension":800,"proposal":8},373,"Mukund Keshava @mkeshavanv","VK_EXT_pipeline_properties",{"number":802,"type":278,"author":348,"promotedto":662,"provisional":8,"depends":291,"ratified":439,"contact":524,"extension":803,"proposal":244},467,"VK_EXT_pipeline_protected_access",{"number":805,"type":278,"author":806,"promotedto":662,"provisional":8,"depends":291,"ratified":439,"contact":807,"extension":808,"proposal":8},69,"IMG","Jarred Davies","VK_EXT_pipeline_robustness",{"number":810,"type":278,"author":444,"provisional":8,"ratified":452,"contact":811,"extension":812,"proposal":8},156,"Daniel Koch @dgkoch","VK_EXT_post_depth_coverage",{"number":814,"type":278,"author":348,"promotedto":815,"provisional":8,"depends":654,"ratified":439,"contact":816,"extension":817,"proposal":244},362,"VK_KHR_present_mode_fifo_latest_ready","Lionel Duc @nvlduc","VK_EXT_present_mode_fifo_latest_ready",{"number":819,"type":278,"author":348,"provisional":8,"depends":820,"ratified":439,"contact":816,"extension":821,"proposal":244},209,"VK_KHR_swapchain+VK_KHR_present_id2+VK_KHR_get_surface_capabilities2+VK_KHR_calibrated_timestamps","VK_EXT_present_timing",{"number":823,"type":278,"author":348,"provisional":8,"depends":291,"specialuse":371,"contact":458,"extension":824,"proposal":244},679,"VK_EXT_primitive_restart_index",{"number":826,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":371,"contact":524,"extension":827,"proposal":8},357,"VK_EXT_primitive_topology_list_restart",{"number":829,"type":278,"author":348,"provisional":8,"depends":830,"ratified":439,"specialuse":371,"contact":524,"extension":831,"proposal":244},383,"VK_EXT_transform_feedback","VK_EXT_primitives_generated_query",{"number":833,"type":278,"author":444,"promotedto":428,"provisional":8,"depends":291,"contact":834,"extension":835,"proposal":8},296,"Matthew Rusch @mattruschnv","VK_EXT_private_data",{"number":837,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"specialuse":371,"contact":838,"extension":839,"proposal":8},255,"Jesse Hall @jessehall","VK_EXT_provoking_vertex",{"number":841,"type":278,"author":348,"provisional":8,"depends":597,"ratified":452,"contact":446,"extension":842,"proposal":8},127,"VK_EXT_queue_family_foreign",{"number":844,"type":278,"author":380,"provisional":8,"depends":291,"ratified":439,"contact":395,"extension":407,"proposal":244},464,{"number":846,"type":278,"author":348,"provisional":8,"depends":847,"ratified":439,"contact":848,"extension":849,"proposal":244},582,"VK_KHR_ray_tracing_pipeline","Eric Werness @ewerness-nv","VK_EXT_ray_tracing_invocation_reorder",{"number":851,"type":278,"author":348,"provisional":8,"depends":852,"ratified":439,"contact":395,"extension":853,"proposal":8},345,"VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1","VK_EXT_rgba10x6_formats",{"number":855,"type":278,"author":348,"promotedto":856,"provisional":8,"depends":291,"ratified":452,"contact":493,"extension":857,"proposal":8},287,"VK_KHR_robustness2","VK_EXT_robustness2",{"number":859,"type":278,"author":279,"provisional":8,"depends":291,"ratified":452,"contact":297,"extension":860,"proposal":8},144,"VK_EXT_sample_locations",{"number":862,"type":278,"author":444,"promotedto":541,"provisional":8,"depends":291,"contact":465,"extension":863,"proposal":8},131,"VK_EXT_sampler_filter_minmax",{"number":865,"type":278,"author":348,"promotedto":541,"provisional":8,"depends":291,"contact":287,"extension":866,"proposal":8},222,"VK_EXT_scalar_block_layout",{"number":868,"type":278,"author":348,"promotedto":541,"provisional":8,"contact":297,"extension":869,"proposal":8},247,"VK_EXT_separate_stencil_usage",{"number":871,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":872,"proposal":244},628,"VK_EXT_shader_64bit_indexing",{"number":874,"type":278,"author":444,"provisional":8,"depends":291,"ratified":452,"contact":590,"extension":875,"proposal":8},261,"VK_EXT_shader_atomic_float",{"number":877,"type":278,"author":348,"provisional":8,"depends":875,"ratified":439,"contact":724,"extension":878,"proposal":8},274,"VK_EXT_shader_atomic_float2",{"number":880,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":432,"contact":465,"extension":881,"proposal":8},277,"VK_EXT_shader_demote_to_helper_invocation",{"number":883,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":884,"proposal":244},568,"VK_EXT_shader_float8",{"number":886,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":287,"extension":887,"proposal":8},235,"VK_EXT_shader_image_atomic_int64",{"number":889,"type":278,"author":348,"provisional":8,"depends":541,"ratified":439,"contact":465,"extension":890,"proposal":244},636,"VK_EXT_shader_long_vector",{"number":892,"type":278,"author":348,"provisional":8,"depends":893,"ratified":439,"contact":795,"extension":894,"proposal":244},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":896,"type":278,"author":348,"provisional":8,"depends":583,"ratified":439,"contact":897,"extension":898,"proposal":244},483,"Daniel Story @daniel-story","VK_EXT_shader_object",{"number":900,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":901,"proposal":244},565,"VK_EXT_shader_replicated_composites",{"number":903,"type":278,"author":348,"provisional":8,"depends":291,"contact":614,"extension":904,"proposal":244},306,"VK_EXT_shader_split_barrier",{"number":906,"type":278,"author":348,"provisional":8,"ratified":452,"contact":311,"extension":907,"proposal":8},141,"VK_EXT_shader_stencil_export",{"number":909,"type":278,"author":444,"deprecatedby":541,"provisional":8,"contact":811,"extension":910,"proposal":8},65,"VK_EXT_shader_subgroup_ballot",{"number":912,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":913,"proposal":8},663,"VK_EXT_shader_subgroup_partitioned",{"number":915,"type":278,"author":444,"deprecatedby":421,"provisional":8,"contact":811,"extension":916,"proposal":8},66,"VK_EXT_shader_subgroup_vote",{"number":918,"type":278,"author":348,"provisional":8,"depends":428,"ratified":439,"contact":395,"extension":919,"proposal":244},396,"VK_EXT_shader_tile_image",{"number":921,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":470,"extension":922,"proposal":244},643,"VK_EXT_shader_uniform_buffer_unsized_array",{"number":924,"type":278,"author":444,"promotedto":541,"provisional":8,"contact":811,"extension":925,"proposal":8},163,"VK_EXT_shader_viewport_index_layer",{"number":927,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":421,"ratified":432,"contact":928,"extension":929,"proposal":8},226,"Neil Henning @sheredom","VK_EXT_subgroup_size_control",{"number":931,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":932,"extension":933,"proposal":244},459,"Ting Wei @catweiting","VK_EXT_subpass_merge_feedback",{"number":935,"type":437,"author":348,"promotedto":936,"provisional":8,"depends":937,"ratified":439,"contact":524,"extension":938,"proposal":244},275,"VK_KHR_surface_maintenance1","VK_KHR_surface+VK_KHR_get_surface_capabilities2","VK_EXT_surface_maintenance1",{"number":940,"type":437,"author":504,"provisional":8,"depends":567,"ratified":452,"contact":505,"extension":941,"proposal":8},105,"VK_EXT_swapchain_colorspace",{"number":943,"type":278,"author":348,"promotedto":944,"provisional":8,"depends":945,"ratified":439,"contact":524,"extension":946,"proposal":244},276,"VK_KHR_swapchain_maintenance1","VK_KHR_swapchain+VK_EXT_surface_maintenance1+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","VK_EXT_swapchain_maintenance1",{"number":948,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":291,"ratified":432,"contact":465,"extension":949,"proposal":8},282,"VK_EXT_texel_buffer_alignment",{"number":951,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":395,"extension":952,"proposal":244},289,"VK_EXT_texture_compression_astc_3d",{"number":954,"type":278,"author":380,"promotedto":428,"provisional":8,"depends":291,"ratified":432,"contact":395,"extension":955,"proposal":8},67,"VK_EXT_texture_compression_astc_hdr",{"number":957,"type":278,"author":348,"promotedto":428,"provisional":8,"contact":287,"extension":958,"proposal":8},246,"VK_EXT_tooling_info",{"number":122,"type":278,"author":444,"provisional":8,"depends":291,"ratified":439,"specialuse":960,"contact":470,"extension":830,"proposal":8},"glemulation,d3demulation,devtools",{"number":962,"type":278,"author":504,"provisional":8,"ratified":439,"contact":963,"extension":964,"proposal":8},161,"Cort Stratton @cdwfs","VK_EXT_validation_cache",{"number":966,"type":437,"author":967,"deprecatedby":704,"provisional":8,"ratified":439,"specialuse":240,"contact":968,"extension":969,"proposal":8},248,"LUNARG","Karl Schultz @karl-lunarg","VK_EXT_validation_features",{"number":971,"type":437,"author":504,"deprecatedby":704,"provisional":8,"specialuse":240,"contact":972,"extension":973,"proposal":8},62,"Tobin Ehlis @tobine","VK_EXT_validation_flags",{"number":975,"type":278,"author":444,"promotedto":976,"provisional":8,"depends":291,"contact":486,"extension":977,"proposal":8},191,"VK_KHR_vertex_attribute_divisor","VK_EXT_vertex_attribute_divisor",{"number":979,"type":278,"author":348,"promotedto":980,"provisional":8,"depends":291,"contact":470,"extension":981,"proposal":8},609,"VK_KHR_maintenance9","VK_EXT_vertex_attribute_robustness",{"number":983,"type":278,"author":348,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":710,"proposal":8},353,{"number":985,"type":278,"author":348,"promotedto":428,"provisional":8,"depends":852,"ratified":432,"contact":986,"extension":987,"proposal":8},331,"Tony Zlatinski @tzlatinski","VK_EXT_ycbcr_2plane_444_formats",{"number":989,"type":278,"author":348,"provisional":8,"depends":852,"ratified":452,"contact":470,"extension":990,"proposal":8},253,"VK_EXT_ycbcr_image_arrays",{"number":992,"type":278,"author":348,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":993,"proposal":244},621,"VK_EXT_zero_initialize_device_memory",{"number":995,"type":278,"author":996,"provisional":8,"depends":997,"platform":998,"contact":999,"extension":1000,"proposal":8},367,"FUCHSIA","VK_FUCHSIA_external_memory+(VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1)","fuchsia","John Rosasco @rosasco","VK_FUCHSIA_buffer_collection",{"number":1002,"type":278,"author":996,"provisional":8,"depends":1003,"platform":998,"contact":999,"extension":1004,"proposal":8},365,"(VK_KHR_external_memory_capabilities+VK_KHR_external_memory),VK_VERSION_1_1","VK_FUCHSIA_external_memory",{"number":1006,"type":278,"author":996,"provisional":8,"depends":1007,"platform":998,"contact":999,"extension":1008,"proposal":8},366,"VK_KHR_external_semaphore_capabilities+VK_KHR_external_semaphore","VK_FUCHSIA_external_semaphore",{"number":1010,"type":437,"author":996,"provisional":8,"depends":567,"platform":998,"contact":1011,"extension":1012,"proposal":8},215,"Craig Stout @cdotstout","VK_FUCHSIA_imagepipe_surface",{"number":1014,"type":278,"author":1015,"provisional":8,"depends":1016,"platform":1017,"contact":790,"extension":1018,"proposal":8},192,"GGP","VK_KHR_swapchain+VK_GGP_stream_descriptor_surface","ggp","VK_GGP_frame_token",{"number":206,"type":437,"author":1015,"provisional":8,"depends":567,"platform":1017,"contact":790,"extension":1020,"proposal":8},"VK_GGP_stream_descriptor_surface",{"number":1022,"type":278,"author":504,"provisional":8,"contact":1023,"extension":1024,"proposal":8},225,"Hai Nguyen @chaoticbob","VK_GOOGLE_decorate_string",{"number":1026,"type":278,"author":504,"provisional":8,"depends":654,"contact":1027,"extension":1028,"proposal":8},93,"Ian Elliott @ianelliottus","VK_GOOGLE_display_timing",{"number":1030,"type":278,"author":504,"provisional":8,"contact":1023,"extension":1031,"proposal":8},224,"VK_GOOGLE_hlsl_functionality1",{"number":1033,"type":437,"author":504,"provisional":8,"depends":567,"specialuse":371,"contact":524,"extension":1034,"proposal":244},434,"VK_GOOGLE_surfaceless_query",{"number":1036,"type":278,"author":504,"provisional":8,"contact":1037,"extension":1038,"proposal":8},290,"Kaye Mason @chaleur","VK_GOOGLE_user_type",{"number":1040,"type":278,"author":1041,"provisional":8,"depends":291,"contact":1042,"extension":1043,"proposal":244},405,"HUAWEI","Yuchang Wang @richard_Wang2","VK_HUAWEI_cluster_culling_shader",{"number":1045,"type":278,"author":1041,"provisional":8,"depends":1046,"contact":1047,"extension":1048,"proposal":8},591,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_swapchain+VK_EXT_hdr_metadata","Zehui Lin @bactlink","VK_HUAWEI_hdr_vivid",{"number":1050,"type":278,"author":1051,"provisional":8,"depends":1052,"contact":1053,"extension":1054,"proposal":244},371,"Huawei","VK_KHR_ray_tracing_pipeline+(VK_KHR_synchronization2,VK_VERSION_1_3)","Pan Gao @PanGao-h","VK_HUAWEI_invocation_mask",{"number":1056,"type":278,"author":1041,"provisional":8,"depends":1057,"contact":1053,"extension":1058,"proposal":8},370,"((VK_KHR_create_renderpass2,VK_VERSION_1_2)+VK_KHR_synchronization2),VK_VERSION_1_3","VK_HUAWEI_subpass_shading",{"number":70,"type":278,"author":806,"provisional":8,"contact":287,"extension":1060,"proposal":8},"VK_IMG_filter_cubic",{"number":226,"type":278,"author":806,"deprecatedby":1062,"provisional":8,"contact":1063,"extension":1064,"proposal":8},null,"Stuart Smith","VK_IMG_format_pvrtc",{"number":1066,"type":278,"author":806,"provisional":8,"depends":291,"specialuse":371,"contact":632,"extension":1067,"proposal":8},111,"VK_IMG_relaxed_line_rasterization",{"number":1069,"type":278,"author":1070,"provisional":8,"specialuse":296,"contact":1071,"extension":1072,"proposal":8},211,"INTEL","Lionel Landwerlin @llandwerlin","VK_INTEL_performance_query",{"number":1074,"type":278,"author":1070,"provisional":8,"depends":291,"contact":1075,"extension":1076,"proposal":8},210,"Ian Romanick @ianromanick","VK_INTEL_shader_integer_functions2",{"number":1078,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1080,"ratified":439,"contact":395,"extension":1081,"proposal":8},84,"KHR","(VK_KHR_get_physical_device_properties2+VK_KHR_storage_buffer_storage_class),VK_VERSION_1_1","VK_KHR_16bit_storage",{"number":1083,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1080,"ratified":439,"contact":1084,"extension":1085,"proposal":8},178,"Alexander Galazin @alegal-arm","VK_KHR_8bit_storage",{"number":1087,"type":278,"author":1079,"provisional":8,"depends":1088,"ratified":439,"contact":811,"extension":1089,"proposal":8},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":42,"type":437,"author":1079,"provisional":8,"depends":567,"platform":370,"ratified":439,"contact":377,"extension":1091,"proposal":8},"VK_KHR_android_surface",{"number":1093,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":287,"extension":1094,"proposal":8},158,"VK_KHR_bind_memory2",{"number":1096,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1097,"ratified":439,"contact":465,"extension":474,"proposal":8},258,"(VK_KHR_get_physical_device_properties2+VK_KHR_device_group),VK_VERSION_1_1",{"number":1099,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":452,"contact":699,"extension":478,"proposal":8},544,{"number":1101,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":1102,"extension":1103,"proposal":244},512,"Jean-Noe Morissette @MagicPoncho","VK_KHR_compute_shader_derivatives",{"number":1105,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":1106,"proposal":244},507,"VK_KHR_cooperative_matrix",{"number":1108,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":452,"contact":614,"extension":1109,"proposal":8},338,"VK_KHR_copy_commands2",{"number":1111,"type":278,"author":1079,"provisional":8,"depends":1112,"ratified":439,"contact":590,"extension":1113,"proposal":244},550,"(VK_KHR_get_physical_device_properties2+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_KHR_copy_memory_indirect",{"number":1115,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1116,"ratified":439,"contact":1117,"extension":1118,"proposal":8},110,"(VK_KHR_multiview+VK_KHR_maintenance2),VK_VERSION_1_1","Tobias Hector @tobias","VK_KHR_create_renderpass2",{"number":1120,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1121,"ratified":439,"contact":446,"extension":1122,"proposal":8},128,"VK_KHR_get_memory_requirements2,VK_VERSION_1_1","VK_KHR_dedicated_allocation",{"number":1124,"type":278,"author":1079,"provisional":8,"ratified":439,"contact":1125,"extension":1126,"proposal":8},269,"Josh Barczak @jbarczak","VK_KHR_deferred_host_operations",{"number":1128,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":520,"extension":519,"proposal":8},605,{"number":1130,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1131,"ratified":439,"contact":1132,"extension":1133,"proposal":8},200,"VK_KHR_create_renderpass2,VK_VERSION_1_2","Jan-Harald Fredriksen @janharald","VK_KHR_depth_stencil_resolve",{"number":1135,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":1136,"extension":1137,"proposal":8},86,"Markus Tavenrath @mtavenrath","VK_KHR_descriptor_update_template",{"number":1139,"type":278,"author":1079,"provisional":8,"depends":1140,"ratified":439,"contact":287,"extension":1141,"proposal":244},319,"((((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_buffer_device_address),VK_VERSION_1_2)+VK_KHR_synchronization2+VK_EXT_extended_dynamic_state),VK_VERSION_1_3","VK_KHR_device_address_commands",{"number":1143,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":548,"extension":552,"proposal":244},574,{"number":1145,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1146,"ratified":439,"contact":465,"extension":1147,"proposal":8},61,"VK_KHR_device_group_creation","VK_KHR_device_group",{"number":1149,"type":437,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":465,"extension":1146,"proposal":8},71,{"number":18,"type":437,"author":1079,"provisional":8,"depends":567,"ratified":452,"contact":1151,"extension":564,"proposal":8},"James Jones @cubanismo,Norbert Nopper @FslNopper",{"number":22,"type":278,"author":1079,"provisional":8,"depends":1153,"ratified":452,"contact":446,"extension":1154,"proposal":8},"VK_KHR_swapchain+VK_KHR_display","VK_KHR_display_swapchain",{"number":1156,"type":278,"author":1079,"promotedto":541,"provisional":8,"ratified":439,"contact":470,"extension":308,"proposal":8},170,{"number":1158,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":297,"extension":1159,"proposal":8},197,"VK_KHR_driver_properties",{"number":186,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":1161,"ratified":439,"contact":287,"extension":1162,"proposal":244},"((VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_KHR_depth_stencil_resolve),VK_VERSION_1_2","VK_KHR_dynamic_rendering",{"number":1164,"type":278,"author":279,"promotedto":662,"provisional":8,"depends":1165,"ratified":439,"contact":287,"extension":1166,"proposal":244},233,"VK_KHR_dynamic_rendering,VK_VERSION_1_3","VK_KHR_dynamic_rendering_local_read",{"number":1168,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1169,"ratified":439,"contact":377,"extension":1170,"proposal":8},114,"VK_KHR_external_fence_capabilities","VK_KHR_external_fence",{"number":1172,"type":437,"author":1079,"promotedto":421,"provisional":8,"depends":291,"ratified":439,"contact":377,"extension":1169,"proposal":8},113,{"number":1174,"type":278,"author":1079,"provisional":8,"depends":1175,"ratified":452,"contact":377,"extension":1176,"proposal":8},116,"VK_KHR_external_fence,VK_VERSION_1_1","VK_KHR_external_fence_fd",{"number":1178,"type":278,"author":1079,"provisional":8,"depends":1170,"platform":637,"ratified":439,"contact":377,"extension":1179,"proposal":8},115,"VK_KHR_external_fence_win32",{"number":1181,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1182,"ratified":439,"contact":446,"extension":1183,"proposal":8},73,"VK_KHR_external_memory_capabilities,VK_VERSION_1_1","VK_KHR_external_memory",{"number":1185,"type":437,"author":1079,"promotedto":421,"provisional":8,"depends":291,"ratified":439,"contact":446,"extension":1186,"proposal":8},72,"VK_KHR_external_memory_capabilities",{"number":1188,"type":278,"author":1079,"provisional":8,"depends":597,"ratified":452,"contact":446,"extension":601,"proposal":8},75,{"number":1190,"type":278,"author":1079,"provisional":8,"depends":597,"platform":637,"ratified":439,"contact":446,"extension":1191,"proposal":8},74,"VK_KHR_external_memory_win32",{"number":1193,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1194,"ratified":439,"contact":446,"extension":1195,"proposal":8},78,"VK_KHR_external_semaphore_capabilities","VK_KHR_external_semaphore",{"number":1197,"type":437,"author":1079,"promotedto":421,"provisional":8,"depends":291,"ratified":439,"contact":446,"extension":1194,"proposal":8},77,{"number":1199,"type":278,"author":1079,"provisional":8,"depends":1200,"ratified":452,"contact":446,"extension":1201,"proposal":8},80,"VK_KHR_external_semaphore,VK_VERSION_1_1","VK_KHR_external_semaphore_fd",{"number":1203,"type":278,"author":1079,"provisional":8,"depends":1195,"platform":637,"ratified":439,"contact":446,"extension":1204,"proposal":8},79,"VK_KHR_external_semaphore_win32",{"number":1206,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":439,"contact":1071,"extension":1207,"proposal":8},361,"VK_KHR_format_feature_flags2",{"number":1209,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":292,"extension":1210,"proposal":244},323,"VK_KHR_fragment_shader_barycentric",{"number":1212,"type":278,"author":1079,"provisional":8,"depends":1213,"ratified":452,"contact":287,"extension":1214,"proposal":244},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":1216,"type":437,"author":1079,"provisional":8,"depends":564,"ratified":452,"contact":446,"extension":1217,"proposal":8},122,"VK_KHR_get_display_properties2",{"number":1219,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":724,"extension":1220,"proposal":8},147,"VK_KHR_get_memory_requirements2",{"number":1222,"type":437,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":465,"extension":1223,"proposal":8},60,"VK_KHR_get_physical_device_properties2",{"number":1225,"type":437,"author":1079,"provisional":8,"depends":567,"ratified":452,"contact":446,"extension":1226,"proposal":8},120,"VK_KHR_get_surface_capabilities2",{"number":1228,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":452,"contact":287,"extension":641,"proposal":8},189,{"number":1230,"type":278,"author":1079,"promotedto":541,"provisional":8,"ratified":439,"contact":724,"extension":1231,"proposal":8},148,"VK_KHR_image_format_list",{"number":1233,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1234,"ratified":439,"contact":1117,"extension":1235,"proposal":8},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":1237,"type":278,"author":1079,"provisional":8,"depends":654,"ratified":452,"contact":1027,"extension":1238,"proposal":8},85,"VK_KHR_incremental_present",{"number":1240,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":694,"proposal":8},534,{"number":1242,"type":278,"author":1079,"provisional":8,"depends":421,"ratified":439,"contact":524,"extension":1243,"proposal":244},505,"VK_KHR_internally_synchronized_queues",{"number":1245,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":452,"contact":470,"extension":714,"proposal":8},535,{"number":1247,"type":278,"author":1079,"promotedto":662,"provisional":8,"ratified":439,"contact":524,"extension":719,"proposal":244},527,{"number":1249,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":470,"extension":331,"proposal":8},70,{"number":1251,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":1252,"proposal":244},631,"VK_KHR_maintenance10",{"number":1254,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":1255,"proposal":244},658,"VK_KHR_maintenance11",{"number":1257,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":1258,"extension":1259,"proposal":8},118,"Michael Worcester @michaelworcester","VK_KHR_maintenance2",{"number":1261,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":1262,"proposal":8},169,"VK_KHR_maintenance3",{"number":1264,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":421,"ratified":439,"contact":470,"extension":1265,"proposal":8},414,"VK_KHR_maintenance4",{"number":1267,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":1268,"ratified":439,"contact":282,"extension":1269,"proposal":244},471,"(VK_VERSION_1_1+VK_KHR_dynamic_rendering),VK_VERSION_1_3","VK_KHR_maintenance5",{"number":1271,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":421,"ratified":439,"contact":1272,"extension":1273,"proposal":244},546,"Jon Leech @oddhack","VK_KHR_maintenance6",{"number":1275,"type":278,"author":1079,"provisional":8,"depends":421,"ratified":439,"contact":458,"extension":1276,"proposal":244},563,"VK_KHR_maintenance7",{"number":1278,"type":278,"author":1079,"provisional":8,"depends":421,"ratified":439,"contact":458,"extension":1279,"proposal":244},575,"VK_KHR_maintenance8",{"number":1281,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":458,"extension":980,"proposal":244},585,{"number":1283,"type":278,"author":1079,"promotedto":662,"provisional":8,"ratified":439,"contact":724,"extension":1284,"proposal":244},272,"VK_KHR_map_memory2",{"number":222,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":1286,"proposal":8},"VK_KHR_multiview",{"extension":1288,"proposal":8},"VK_KHR_object_refresh",{"number":1290,"type":278,"author":1079,"provisional":8,"depends":1291,"ratified":439,"contact":614,"extension":771,"proposal":244},624,"VK_KHR_acceleration_structure+VK_KHR_device_address_commands",{"number":1293,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":452,"specialuse":296,"contact":1294,"extension":1295,"proposal":8},117,"Alon Or-bach @alonorbach","VK_KHR_performance_query",{"number":1297,"type":278,"author":1079,"provisional":8,"depends":1298,"ratified":439,"contact":282,"extension":1299,"proposal":244},484,"VK_KHR_maintenance5,VK_VERSION_1_4","VK_KHR_pipeline_binary",{"number":1301,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"specialuse":296,"contact":724,"extension":1302,"proposal":8},270,"VK_KHR_pipeline_executable_properties",{"number":1304,"type":278,"author":1079,"provisional":8,"ratified":439,"contact":739,"extension":1305,"proposal":8},291,"VK_KHR_pipeline_library",{"number":1307,"type":437,"author":1079,"provisional":8,"ratified":439,"contact":1308,"extension":1309,"proposal":8},395,"Charles Giessen @charles-lunarg","VK_KHR_portability_enumeration",{"number":1311,"type":278,"author":1079,"provisional":244,"depends":291,"platform":281,"ratified":439,"contact":743,"extension":1312,"proposal":8},164,"VK_KHR_portability_subset",{"number":1314,"type":278,"author":1079,"provisional":8,"depends":1315,"ratified":439,"contact":1316,"extension":1317,"proposal":8},295,"VK_KHR_swapchain+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)","Keith Packard @keithp","VK_KHR_present_id",{"number":1319,"type":278,"author":1079,"provisional":8,"depends":1320,"ratified":439,"contact":1321,"extension":1322,"proposal":244},480,"VK_KHR_get_surface_capabilities2+VK_KHR_surface+VK_KHR_swapchain","Daniel Stone","VK_KHR_present_id2",{"number":1324,"type":278,"author":1079,"provisional":8,"depends":654,"ratified":439,"contact":816,"extension":815,"proposal":244},622,{"number":1326,"type":278,"author":1079,"provisional":8,"depends":1327,"ratified":439,"contact":1316,"extension":1328,"proposal":8},249,"VK_KHR_swapchain+VK_KHR_present_id","VK_KHR_present_wait",{"number":1330,"type":278,"author":1079,"provisional":8,"depends":1331,"ratified":439,"contact":1321,"extension":1332,"proposal":244},481,"VK_KHR_get_surface_capabilities2+VK_KHR_surface+VK_KHR_swapchain+VK_KHR_present_id2","VK_KHR_present_wait2",{"number":1334,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":1335,"proposal":8},81,"VK_KHR_push_descriptor",{"number":1337,"type":278,"author":1079,"provisional":8,"depends":1338,"ratified":439,"contact":811,"extension":1339,"proposal":8},349,"(VK_KHR_spirv_1_4,VK_VERSION_1_2)+VK_KHR_acceleration_structure","VK_KHR_ray_query",{"number":1341,"type":278,"author":1079,"provisional":8,"depends":1089,"ratified":439,"contact":811,"extension":1342,"proposal":8},387,"VK_KHR_ray_tracing_maintenance1",{"number":1344,"type":278,"author":1079,"provisional":8,"depends":1338,"ratified":439,"contact":811,"extension":847,"proposal":8},348,{"number":1346,"type":278,"author":1079,"provisional":8,"depends":1089,"ratified":439,"contact":1347,"extension":1348,"proposal":244},482,"Eric Werness","VK_KHR_ray_tracing_position_fetch",{"number":1350,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":1351,"extension":1352,"proposal":8},145,"John Kessenich @johnkslang","VK_KHR_relaxed_block_layout",{"number":1354,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":470,"extension":856,"proposal":8},613,{"number":66,"type":278,"author":1079,"promotedto":541,"provisional":8,"ratified":439,"contact":287,"extension":1356,"proposal":8},"VK_KHR_sampler_mirror_clamp_to_edge",{"number":1358,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1359,"ratified":439,"contact":1360,"extension":1361,"proposal":8},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":1363,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1213,"ratified":439,"contact":470,"extension":1364,"proposal":8},242,"VK_KHR_separate_depth_stencil_layouts",{"number":1366,"type":278,"author":1079,"provisional":8,"depends":1367,"ratified":439,"contact":287,"extension":1368,"proposal":244},234,"VK_KHR_device_fault+VK_KHR_shader_constant_data","VK_KHR_shader_abort",{"number":1370,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":1371,"extension":1372,"proposal":8},181,"Aaron Hagan @ahagan","VK_KHR_shader_atomic_int64",{"number":1374,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":287,"extension":1375,"proposal":244},142,"VK_KHR_shader_bfloat16",{"number":1377,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":452,"contact":1371,"extension":1378,"proposal":8},182,"VK_KHR_shader_clock",{"number":1380,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":287,"extension":1381,"proposal":244},232,"VK_KHR_shader_constant_data",{"number":1383,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":811,"extension":1384,"proposal":8},64,"VK_KHR_shader_draw_parameters",{"number":1386,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":1387,"proposal":244},545,"VK_KHR_shader_expect_assume",{"number":1389,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":1084,"extension":317,"proposal":8},83,{"number":1391,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":1084,"extension":1392,"proposal":8},198,"VK_KHR_shader_float_controls",{"number":1394,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":1395,"ratified":439,"contact":520,"extension":1396,"proposal":244},529,"VK_VERSION_1_1+VK_KHR_shader_float_controls","VK_KHR_shader_float_controls2",{"number":1398,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":520,"extension":1399,"proposal":244},580,"VK_KHR_shader_fma",{"number":1401,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":1402,"proposal":244},281,"VK_KHR_shader_integer_dot_product",{"number":1404,"type":278,"author":1079,"provisional":8,"depends":421,"ratified":439,"contact":1405,"extension":1406,"proposal":244},435,"Alan Baker @alan-baker","VK_KHR_shader_maximal_reconvergence",{"number":1408,"type":278,"author":1079,"promotedto":428,"provisional":8,"ratified":439,"contact":501,"extension":1409,"proposal":8},294,"VK_KHR_shader_non_semantic_info",{"number":1411,"type":278,"author":1079,"provisional":8,"depends":1412,"ratified":439,"contact":287,"extension":1413,"proposal":244},236,"((VK_VERSION_1_1+VK_KHR_vulkan_memory_model),VK_VERSION_1_2)+VK_KHR_shader_maximal_reconvergence","VK_KHR_shader_quad_control",{"number":1415,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":1416,"extension":1417,"proposal":244},559,"Nathan GauĂ«r @Keenuts","VK_KHR_shader_relaxed_extended_instruction",{"number":1419,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":421,"ratified":439,"contact":928,"extension":1420,"proposal":8},176,"VK_KHR_shader_subgroup_extended_types",{"number":1422,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":439,"contact":382,"extension":1423,"proposal":244},417,"VK_KHR_shader_subgroup_rotate",{"number":1425,"type":278,"author":1079,"provisional":8,"depends":421,"ratified":439,"contact":1405,"extension":1426,"proposal":8},324,"VK_KHR_shader_subgroup_uniform_control_flow",{"number":1428,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":452,"contact":377,"extension":1429,"proposal":8},216,"VK_KHR_shader_terminate_invocation",{"number":1431,"type":278,"author":1079,"provisional":8,"depends":1223,"ratified":439,"contact":1405,"extension":1432,"proposal":244},388,"VK_KHR_shader_untyped_pointers",{"number":1434,"type":278,"author":1079,"provisional":8,"depends":1435,"ratified":452,"contact":1294,"extension":1436,"proposal":8},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":1438,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":1395,"ratified":439,"contact":377,"extension":1439,"proposal":8},237,"VK_KHR_spirv_1_4",{"number":1441,"type":278,"author":1079,"promotedto":421,"provisional":8,"ratified":439,"contact":1084,"extension":1442,"proposal":8},132,"VK_KHR_storage_buffer_storage_class",{"number":10,"type":437,"author":1079,"provisional":8,"ratified":452,"contact":1444,"extension":567,"proposal":8},"James Jones @cubanismo,Ian Elliott @ianelliottus",{"number":1446,"type":437,"author":1079,"provisional":8,"depends":937,"ratified":439,"contact":524,"extension":936,"proposal":244},487,{"number":1448,"type":437,"author":1079,"provisional":8,"depends":1449,"ratified":439,"contact":1450,"extension":1451,"proposal":8},240,"VK_VERSION_1_1+VK_KHR_get_surface_capabilities2","Sandeep Shinde @sashinde","VK_KHR_surface_protected_capabilities",{"number":14,"type":278,"author":1079,"provisional":8,"depends":567,"ratified":452,"contact":1444,"extension":654,"proposal":8},{"number":1454,"type":278,"author":1079,"provisional":8,"depends":1455,"ratified":439,"contact":524,"extension":944,"proposal":244},488,"VK_KHR_swapchain+VK_KHR_surface_maintenance1+(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)",{"number":1457,"type":278,"author":1079,"provisional":8,"depends":1458,"ratified":452,"contact":297,"extension":1459,"proposal":8},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":1461,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":452,"contact":287,"extension":1462,"proposal":8},315,"VK_KHR_synchronization2",{"number":1464,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":724,"extension":1465,"proposal":8},208,"VK_KHR_timeline_semaphore",{"number":1467,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":524,"extension":1468,"proposal":244},528,"VK_KHR_unified_image_layouts",{"number":1470,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":520,"extension":1471,"proposal":8},254,"VK_KHR_uniform_buffer_standard_layout",{"number":1473,"type":278,"author":1079,"promotedto":421,"provisional":8,"depends":1080,"ratified":439,"contact":377,"extension":1474,"proposal":8},121,"VK_KHR_variable_pointers",{"number":1476,"type":278,"author":1079,"promotedto":662,"provisional":8,"depends":291,"ratified":452,"contact":524,"extension":976,"proposal":244},526,{"number":1478,"type":278,"author":1079,"provisional":8,"depends":1479,"ratified":439,"contact":699,"extension":1480,"proposal":244},513,"VK_KHR_video_decode_queue","VK_KHR_video_decode_av1",{"number":170,"type":278,"author":1079,"provisional":8,"depends":1479,"ratified":439,"contact":1482,"extension":1483,"proposal":244},"peter.fang@amd.com","VK_KHR_video_decode_h264",{"number":1485,"type":278,"author":1079,"provisional":8,"depends":1479,"ratified":439,"contact":1482,"extension":1486,"proposal":244},188,"VK_KHR_video_decode_h265",{"number":106,"type":278,"author":1079,"provisional":8,"depends":1488,"ratified":439,"contact":1489,"extension":1479,"proposal":244},"VK_KHR_video_queue+(VK_KHR_synchronization2,VK_VERSION_1_3)","jake.beju@amd.com",{"number":1491,"type":278,"author":1079,"provisional":8,"depends":1479,"ratified":439,"contact":1492,"extension":1493,"proposal":244},515,"Ahmed Abdelkhalek @aabdelkh","VK_KHR_video_decode_vp9",{"number":1495,"type":278,"author":1079,"provisional":8,"depends":1496,"ratified":439,"contact":699,"extension":1497,"proposal":244},514,"VK_KHR_video_encode_queue","VK_KHR_video_encode_av1",{"number":162,"type":278,"author":1079,"provisional":8,"depends":1496,"ratified":439,"contact":1492,"extension":1499,"proposal":244},"VK_KHR_video_encode_h264",{"number":166,"type":278,"author":1079,"provisional":8,"depends":1496,"ratified":439,"contact":1492,"extension":1501,"proposal":244},"VK_KHR_video_encode_h265",{"number":1503,"type":278,"author":1079,"provisional":8,"depends":1496,"ratified":439,"contact":1492,"extension":1504,"proposal":244},553,"VK_KHR_video_encode_intra_refresh",{"number":1506,"type":278,"author":1079,"provisional":8,"depends":1507,"ratified":439,"contact":1492,"extension":1508,"proposal":244},554,"VK_KHR_video_encode_queue+(VK_KHR_format_feature_flags2,VK_VERSION_1_3)","VK_KHR_video_encode_quantization_map",{"number":1510,"type":278,"author":1079,"provisional":8,"depends":1488,"ratified":439,"contact":1492,"extension":1496,"proposal":244},300,{"number":1512,"type":278,"author":1079,"provisional":8,"depends":1513,"ratified":439,"contact":699,"extension":1514,"proposal":244},516,"VK_KHR_video_queue","VK_KHR_video_maintenance1",{"number":1516,"type":278,"author":1079,"provisional":8,"depends":1513,"ratified":439,"contact":699,"extension":1517,"proposal":244},587,"VK_KHR_video_maintenance2",{"number":102,"type":278,"author":1079,"provisional":8,"depends":1519,"ratified":439,"contact":986,"extension":1513,"proposal":244},"(VK_VERSION_1_1+VK_KHR_synchronization2),VK_VERSION_1_3",{"number":1521,"type":278,"author":1079,"promotedto":541,"provisional":8,"depends":291,"ratified":439,"contact":465,"extension":1522,"proposal":8},212,"VK_KHR_vulkan_memory_model",{"number":34,"type":437,"author":1079,"provisional":8,"depends":567,"platform":1524,"ratified":439,"contact":1525,"extension":1526,"proposal":8},"wayland","Jesse Hall @critsec,Ian Elliott @ianelliottus","VK_KHR_wayland_surface",{"number":1528,"type":278,"author":1079,"provisional":8,"depends":1191,"platform":637,"ratified":439,"contact":1529,"extension":1530,"proposal":8},76,"Carsten Rohde @crohde","VK_KHR_win32_keyed_mutex",{"number":46,"type":437,"author":1079,"provisional":8,"depends":567,"platform":637,"ratified":439,"contact":1525,"extension":1532,"proposal":8},"VK_KHR_win32_surface",{"number":1534,"type":278,"author":1079,"provisional":8,"depends":291,"ratified":439,"contact":1535,"extension":1536,"proposal":8},337,"Caio Marcelo de Oliveira Filho @cmarcelo","VK_KHR_workgroup_memory_explicit_layout",{"number":30,"type":437,"author":1079,"provisional":8,"depends":567,"platform":1538,"ratified":439,"contact":1525,"extension":1539,"proposal":8},"xcb","VK_KHR_xcb_surface",{"number":26,"type":437,"author":1079,"provisional":8,"depends":567,"platform":1541,"ratified":439,"contact":1525,"extension":1542,"proposal":8},"xlib","VK_KHR_xlib_surface",{"number":1544,"type":278,"author":1079,"promotedto":428,"provisional":8,"depends":291,"ratified":439,"contact":1405,"extension":1545,"proposal":8},326,"VK_KHR_zero_initialize_workgroup_memory",{"number":1547,"type":437,"author":967,"provisional":8,"contact":1308,"extension":1548,"proposal":244},460,"VK_LUNARG_direct_driver_loading",{"number":1550,"type":278,"author":1551,"provisional":8,"depends":291,"specialuse":511,"contact":795,"extension":1552,"proposal":8},576,"MESA","VK_MESA_image_alignment_control",{"number":1554,"type":278,"author":1555,"provisional":8,"depends":291,"contact":1556,"extension":1557,"proposal":244},531,"MSFT","Jesse Natalie @jenatali","VK_MSFT_layered_driver",{"number":1559,"type":437,"author":1560,"deprecatedby":748,"provisional":8,"depends":567,"platform":1561,"contact":743,"extension":1562,"proposal":8},123,"MVK","ios","VK_MVK_ios_surface",{"number":1564,"type":437,"author":1560,"deprecatedby":748,"provisional":8,"depends":567,"platform":1565,"contact":743,"extension":1566,"proposal":8},124,"macos","VK_MVK_macos_surface",{"number":1568,"type":437,"author":1569,"provisional":8,"depends":567,"platform":1570,"contact":1571,"extension":1572,"proposal":8},63,"NN","vi","Mathias Heyer gitlab:@mheyer","VK_NN_vi_surface",{"number":126,"type":278,"author":1574,"provisional":8,"contact":1575,"extension":1576,"proposal":8},"NVX","Eric Werness @ewerness-nv,Liam Middlebrook @liam-middlebrook","VK_NVX_binary_import",{"number":130,"type":278,"author":1574,"provisional":8,"contact":848,"extension":1578,"proposal":8},"VK_NVX_image_view_handle",{"number":1580,"type":278,"author":1574,"provisional":8,"depends":1581,"contact":465,"extension":1582,"proposal":8},98,"VK_KHR_multiview,VK_VERSION_1_1","VK_NVX_multiview_per_view_attributes",{"number":1584,"type":278,"author":444,"provisional":8,"depends":438,"platform":637,"contact":1585,"extension":1586,"proposal":8},346,"Jeff Juliano @jjuliano","VK_NV_acquire_winrt_display",{"number":1588,"type":278,"author":444,"provisional":8,"contact":848,"extension":1589,"proposal":8},88,"VK_NV_clip_space_w_scaling",{"number":1591,"type":278,"author":444,"provisional":8,"depends":1089,"contact":486,"extension":1592,"proposal":244},570,"VK_NV_cluster_acceleration_structure",{"number":1594,"type":278,"author":444,"provisional":8,"depends":291,"contact":1595,"extension":1596,"proposal":8},560,"Lujin Wang @lujinwangnv","VK_NV_command_buffer_inheritance",{"number":1598,"type":278,"author":444,"provisional":8,"depends":291,"contact":1599,"extension":1600,"proposal":244},646,"Chris Lentini @clentini","VK_NV_compute_occupancy_priority",{"number":1602,"type":278,"author":444,"promotedto":1103,"provisional":8,"depends":291,"contact":1603,"extension":1604,"proposal":8},202,"Pat Brown @nvpbrown","VK_NV_compute_shader_derivatives",{"number":1606,"type":278,"author":444,"provisional":8,"depends":291,"contact":465,"extension":1607,"proposal":8},250,"VK_NV_cooperative_matrix",{"number":1609,"type":278,"author":444,"provisional":8,"depends":1106,"contact":465,"extension":1610,"proposal":244},594,"VK_NV_cooperative_matrix2",{"number":1612,"type":278,"author":444,"provisional":8,"depends":291,"contact":465,"extension":1613,"proposal":244},492,"VK_NV_cooperative_vector",{"number":1615,"type":278,"author":444,"promotedto":1113,"provisional":8,"depends":1616,"contact":590,"extension":1617,"proposal":8},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":210,"type":278,"author":444,"provisional":8,"depends":291,"contact":811,"extension":1619,"proposal":8},"VK_NV_corner_sampled_image",{"number":1621,"type":278,"author":444,"provisional":8,"depends":1622,"contact":1623,"extension":1624,"proposal":8},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":1626,"type":278,"author":444,"provisional":244,"depends":291,"platform":281,"contact":1627,"extension":1628,"proposal":8},308,"Tristan Lorach @tlorach","VK_NV_cuda_kernel_launch",{"number":114,"type":278,"author":444,"deprecatedby":1122,"provisional":8,"contact":465,"extension":1630,"proposal":8},"VK_NV_dedicated_allocation",{"number":1632,"type":278,"author":1633,"provisional":8,"depends":1634,"contact":1635,"extension":1636,"proposal":8},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":1638,"type":278,"author":444,"provisional":8,"depends":421,"contact":470,"extension":1639,"proposal":8},547,"VK_NV_descriptor_pool_overallocation",{"number":1641,"type":278,"author":1633,"provisional":8,"depends":291,"contact":1635,"extension":1642,"proposal":8},207,"VK_NV_device_diagnostic_checkpoints",{"number":1644,"type":278,"author":444,"provisional":8,"depends":291,"contact":1623,"extension":1645,"proposal":8},301,"VK_NV_device_diagnostics_config",{"number":1647,"type":278,"author":444,"provisional":8,"depends":1648,"contact":739,"extension":1649,"proposal":8},278,"(VK_VERSION_1_1+VK_KHR_buffer_device_address),VK_VERSION_1_2","VK_NV_device_generated_commands",{"number":1651,"type":278,"author":444,"provisional":8,"depends":1649,"contact":590,"extension":1652,"proposal":8},429,"VK_NV_device_generated_commands_compute",{"number":1654,"type":278,"author":444,"deprecatedby":1592,"provisional":244,"depends":402,"platform":281,"contact":1655,"extension":1656,"proposal":8},398,"Christoph Kubisch @pixeljetstream, Eric Werness @ewerness-nv","VK_NV_displacement_micromap",{"number":1658,"type":437,"author":444,"provisional":8,"depends":1659,"contact":1660,"extension":1661,"proposal":244},552,"VK_KHR_display+VK_KHR_get_display_properties2","Russell Chou @russellcnv","VK_NV_display_stereo",{"number":1663,"type":278,"author":444,"provisional":8,"depends":291,"contact":1660,"extension":1664,"proposal":8},493,"VK_NV_extended_sparse_address_space",{"number":1666,"type":278,"author":444,"provisional":8,"contact":1599,"extension":1667,"proposal":244},557,"VK_NV_external_compute_queue",{"number":234,"type":278,"author":444,"deprecatedby":1183,"provisional":8,"depends":1669,"contact":446,"extension":1670,"proposal":8},"VK_NV_external_memory_capabilities","VK_NV_external_memory",{"number":230,"type":437,"author":444,"deprecatedby":1186,"provisional":8,"contact":446,"extension":1669,"proposal":8},{"number":1673,"type":278,"author":444,"provisional":8,"depends":597,"contact":1529,"extension":1674,"proposal":8},372,"VK_NV_external_memory_rdma",{"extension":1676,"proposal":8},"VK_NV_external_memory_sci_buf",{"number":238,"type":278,"author":444,"deprecatedby":1191,"provisional":8,"depends":1670,"platform":637,"contact":446,"extension":1678,"proposal":8},"VK_NV_external_memory_win32",{"extension":1680,"proposal":8},"VK_NV_external_sci_sync",{"extension":1682,"proposal":8},"VK_NV_external_sci_sync2",{"number":1684,"type":278,"author":444,"provisional":8,"contact":465,"extension":1685,"proposal":8},154,"VK_NV_fill_rectangle",{"number":1687,"type":278,"author":444,"provisional":8,"contact":465,"extension":1688,"proposal":8},150,"VK_NV_fragment_coverage_to_color",{"number":1690,"type":278,"author":444,"promotedto":1210,"provisional":8,"depends":291,"contact":1603,"extension":1691,"proposal":8},204,"VK_NV_fragment_shader_barycentric",{"number":1693,"type":278,"author":444,"provisional":8,"depends":1214,"contact":1603,"extension":1694,"proposal":8},327,"VK_NV_fragment_shading_rate_enums",{"number":1696,"type":278,"author":444,"provisional":8,"contact":465,"extension":1697,"proposal":8},153,"VK_NV_framebuffer_mixed_samples",{"number":1699,"type":278,"author":444,"provisional":8,"contact":811,"extension":1700,"proposal":8},96,"VK_NV_geometry_shader_passthrough",{"number":58,"type":278,"author":444,"deprecatedby":1062,"provisional":8,"contact":470,"extension":1702,"proposal":8},"VK_NV_glsl_shader",{"number":1704,"type":278,"author":444,"provisional":8,"depends":291,"contact":1705,"extension":1706,"proposal":8},279,"David Zhao Akeley @akeley98","VK_NV_inherited_viewport_scissor",{"number":1708,"type":278,"author":1633,"provisional":8,"depends":291,"contact":1709,"extension":1710,"proposal":8},431,"sourav parmar @souravpNV","VK_NV_linear_color_attachment",{"number":1712,"type":278,"author":444,"provisional":8,"contact":1713,"extension":1714,"proposal":8},311,"Charles Hansen @cshansen","VK_NV_low_latency",{"number":1716,"type":278,"author":444,"provisional":8,"depends":1717,"contact":1713,"extension":1718,"proposal":8},506,"(VK_VERSION_1_2,VK_KHR_timeline_semaphore)+(VK_KHR_present_id,VK_KHR_present_id2)","VK_NV_low_latency2",{"number":1720,"type":278,"author":444,"promotedto":732,"provisional":8,"depends":1616,"contact":590,"extension":1721,"proposal":8},428,"VK_NV_memory_decompression",{"number":1723,"type":278,"author":444,"provisional":8,"depends":291,"contact":739,"extension":1724,"proposal":8},203,"VK_NV_mesh_shader",{"number":1726,"type":278,"author":444,"provisional":8,"depends":1727,"contact":1529,"extension":1728,"proposal":8},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":1730,"type":278,"author":444,"provisional":8,"depends":1089,"contact":486,"extension":1731,"proposal":244},571,"VK_NV_partitioned_acceleration_structure",{"number":1733,"type":278,"author":444,"deprecatedby":533,"provisional":8,"depends":1734,"contact":470,"extension":1735,"proposal":8},517,"VK_KHR_maintenance6,VK_VERSION_1_4","VK_NV_per_stage_descriptor_set",{"number":1737,"type":278,"author":444,"provisional":8,"depends":636,"contact":1738,"extension":1739,"proposal":8},293,"Liya Li @liyli","VK_NV_present_barrier",{"number":1741,"type":278,"author":444,"provisional":8,"depends":291,"contact":1742,"extension":1743,"proposal":8},614,"Charles Hansen @chansen","VK_NV_present_metering",{"extension":1745,"proposal":8},"VK_NV_private_vendor_info",{"number":1747,"type":278,"author":444,"provisional":8,"contact":1748,"extension":1749,"proposal":244},581,"Vassili Nikolaev @vasnik1","VK_NV_push_constant_bank",{"number":1751,"type":278,"author":444,"provisional":8,"depends":291,"contact":1752,"extension":1753,"proposal":8},556,"Rodrigo Locatti @rlocatti","VK_NV_raw_access_chains",{"number":1755,"type":278,"author":444,"deprecatedby":847,"provisional":8,"depends":1756,"contact":848,"extension":1757,"proposal":8},166,"(VK_KHR_get_physical_device_properties2+VK_KHR_get_memory_requirements2),VK_VERSION_1_1","VK_NV_ray_tracing",{"number":1759,"type":278,"author":444,"promotedto":849,"provisional":8,"depends":847,"contact":848,"extension":1760,"proposal":8},491,"VK_NV_ray_tracing_invocation_reorder",{"number":1762,"type":278,"author":444,"provisional":8,"depends":847,"contact":486,"extension":1763,"proposal":244},430,"VK_NV_ray_tracing_linear_swept_spheres",{"number":1765,"type":278,"author":444,"provisional":8,"depends":847,"contact":1347,"extension":1766,"proposal":8},328,"VK_NV_ray_tracing_motion_blur",{"number":1768,"type":278,"author":444,"provisional":8,"depends":291,"contact":590,"extension":1769,"proposal":244},569,"VK_NV_ray_tracing_validation",{"number":1771,"type":278,"author":444,"provisional":8,"depends":291,"contact":1623,"extension":1772,"proposal":8},167,"VK_NV_representative_fragment_test",{"number":1774,"type":278,"author":444,"provisional":8,"contact":470,"extension":1775,"proposal":8},95,"VK_NV_sample_mask_override_coverage",{"number":1777,"type":278,"author":444,"provisional":8,"depends":291,"contact":1603,"extension":1778,"proposal":8},206,"VK_NV_scissor_exclusive",{"number":1780,"type":278,"author":444,"provisional":8,"depends":291,"contact":465,"extension":1781,"proposal":8},564,"VK_NV_shader_atomic_float16_vector",{"number":1783,"type":278,"author":444,"provisional":8,"depends":291,"contact":1603,"extension":1784,"proposal":8},205,"VK_NV_shader_image_footprint",{"number":1786,"type":278,"author":444,"provisional":8,"depends":421,"contact":811,"extension":1787,"proposal":8},155,"VK_NV_shader_sm_builtins",{"number":1789,"type":278,"author":444,"promotedto":913,"provisional":8,"depends":421,"contact":465,"extension":1790,"proposal":8},199,"VK_NV_shader_subgroup_partitioned",{"number":1792,"type":278,"author":444,"provisional":8,"depends":291,"contact":1603,"extension":1793,"proposal":8},165,"VK_NV_shading_rate_image",{"number":1795,"type":278,"author":444,"provisional":8,"contact":811,"extension":1796,"proposal":8},97,"VK_NV_viewport_array2",{"number":1798,"type":278,"author":444,"provisional":8,"contact":470,"extension":1799,"proposal":8},99,"VK_NV_viewport_swizzle",{"number":1801,"type":278,"author":444,"promotedto":1530,"provisional":8,"depends":1678,"platform":637,"contact":1529,"extension":1802,"proposal":8},59,"VK_NV_win32_keyed_mutex",{"number":1804,"type":278,"author":1041,"provisional":8,"depends":376,"platform":1805,"contact":1806,"extension":1807,"proposal":8},453,"ohos","Weilan Chen @wchen-h","VK_OHOS_external_memory",{"number":1809,"type":278,"author":1041,"provisional":8,"platform":1805,"contact":1806,"extension":1810,"proposal":8},589,"VK_OHOS_native_buffer",{"number":1812,"type":437,"author":1041,"provisional":8,"depends":567,"platform":1805,"contact":1806,"extension":1813,"proposal":8},588,"VK_OHOS_surface",{"number":1815,"type":278,"author":613,"provisional":8,"depends":1106,"contact":614,"extension":1816,"proposal":244},173,"VK_QCOM_cooperative_matrix_conversion",{"number":1818,"type":278,"author":613,"provisional":8,"depends":383,"contact":614,"extension":1819,"proposal":244},630,"VK_QCOM_data_graph_model",{"number":1821,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1822,"proposal":244},174,"VK_QCOM_elapsed_timer_query",{"number":1824,"type":278,"author":613,"provisional":8,"depends":1825,"contact":614,"extension":1826,"proposal":8},522,"(VK_EXT_filter_cubic)+(VK_VERSION_1_2,VK_EXT_sampler_filter_minmax)","VK_QCOM_filter_cubic_clamp",{"number":1828,"type":278,"author":613,"provisional":8,"depends":615,"contact":614,"extension":1829,"proposal":8},520,"VK_QCOM_filter_cubic_weights",{"number":1831,"type":278,"author":613,"promotedto":626,"provisional":8,"depends":1832,"contact":614,"extension":1833,"proposal":8},426,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_fragment_density_map","VK_QCOM_fragment_density_map_offset",{"number":1835,"type":278,"author":613,"provisional":8,"depends":1836,"contact":614,"extension":1837,"proposal":244},441,"VK_KHR_format_feature_flags2,VK_VERSION_1_3","VK_QCOM_image_processing",{"number":1839,"type":278,"author":613,"provisional":8,"depends":1837,"contact":614,"extension":1840,"proposal":8},519,"VK_QCOM_image_processing2",{"number":1842,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1843,"proposal":244},304,"VK_QCOM_image_processing3",{"number":1845,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1846,"proposal":8},511,"VK_QCOM_multiview_per_view_render_areas",{"number":1848,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1849,"proposal":8},489,"VK_QCOM_multiview_per_view_viewports",{"number":1851,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1852,"proposal":244},303,"VK_QCOM_queue_perf_hint",{"number":1854,"type":278,"author":613,"promotedto":496,"provisional":8,"contact":614,"extension":1855,"proposal":8},172,"VK_QCOM_render_pass_shader_resolve",{"number":1857,"type":278,"author":613,"provisional":8,"contact":614,"extension":1858,"proposal":8},302,"VK_QCOM_render_pass_store_ops",{"number":1860,"type":278,"author":613,"provisional":8,"contact":614,"extension":1861,"proposal":8},283,"VK_QCOM_render_pass_transform",{"number":1863,"type":278,"author":613,"provisional":8,"depends":1864,"contact":614,"extension":1865,"proposal":8},334,"VK_KHR_copy_commands2,VK_VERSION_1_3","VK_QCOM_rotated_copy_commands",{"number":1867,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1868,"proposal":244},305,"VK_QCOM_shader_multiple_wait_queues",{"number":1870,"type":278,"author":613,"provisional":8,"depends":1871,"contact":1872,"extension":1873,"proposal":244},548,"(VK_KHR_get_memory_requirements2+VK_KHR_get_physical_device_properties2),VK_VERSION_1_1","Patrick Boyle @pboyleQCOM","VK_QCOM_tile_memory_heap",{"number":1875,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1876,"proposal":244},485,"VK_QCOM_tile_properties",{"number":1878,"type":278,"author":613,"provisional":8,"depends":1876,"contact":614,"extension":1879,"proposal":244},310,"VK_QCOM_tile_shading",{"number":1881,"type":278,"author":613,"provisional":8,"depends":291,"contact":614,"extension":1882,"proposal":8},521,"VK_QCOM_ycbcr_degamma",{"number":1884,"type":278,"author":1885,"provisional":8,"depends":376,"platform":1886,"contact":1887,"extension":1888,"proposal":8},530,"QNX","screen","Mike Gorchak @mgorchak-blackberry, Aaron Ruby @aruby-blackberry","VK_QNX_external_memory_screen_buffer",{"number":1890,"type":437,"author":1885,"provisional":8,"depends":567,"platform":1886,"contact":1891,"extension":1892,"proposal":8},379,"Mike Gorchak @mgorchak-blackberry","VK_QNX_screen_surface",{"number":1894,"type":278,"author":1895,"provisional":8,"depends":291,"contact":548,"extension":1896,"proposal":8},486,"SEC","VK_SEC_amigo_profiling",{"number":1898,"type":278,"author":1895,"provisional":8,"depends":291,"contact":1899,"extension":1900,"proposal":8},638,"Chris Hambacher @chambacher","VK_SEC_pipeline_cache_incremental_mode",{"number":1902,"type":278,"author":1895,"provisional":8,"contact":548,"extension":1903,"proposal":8},675,"VK_SEC_throttle_hint",{"number":1905,"type":437,"author":1895,"provisional":8,"depends":567,"platform":1906,"contact":1907,"extension":1908,"proposal":8},665,"ubm","Minji Choe @minjichoe","VK_SEC_ubm_surface",{"number":1910,"type":278,"author":1911,"provisional":8,"depends":291,"specialuse":511,"contact":795,"extension":1912,"proposal":8},421,"VALVE","VK_VALVE_descriptor_set_host_mapping",{"number":1914,"type":278,"author":1911,"provisional":8,"depends":1915,"contact":625,"extension":1916,"proposal":8},612,"(VK_KHR_maintenance5,VK_VERSION_1_4)+VK_EXT_fragment_density_map","VK_VALVE_fragment_density_map_layered",{"number":1918,"type":278,"author":1911,"promotedto":760,"provisional":8,"depends":1262,"specialuse":511,"contact":759,"extension":1919,"proposal":8},352,"VK_VALVE_mutable_descriptor_type",{"number":1921,"type":278,"author":1911,"provisional":8,"depends":1922,"contact":767,"extension":1923,"proposal":8},674,"(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+(VK_KHR_shader_float16_int8,VK_VERSION_1_2)","VK_VALVE_shader_mixed_float_dot_product",{"number":1925,"type":278,"author":1911,"provisional":8,"depends":1926,"contact":1927,"extension":1928,"proposal":8},391,"VK_KHR_video_encode_queue+(VK_KHR_sampler_ycbcr_conversion,VK_VERSION_1_1)","Autumn Ashton @misyltoad","VK_VALVE_video_encode_rgb_conversion",{"title":1930,"description":1931,"body":1932,"_type":9720,"_id":1930},"VK_KHR_opacity_micromap.proposal","VK_KHR_opacity_micromap adds a new type of acceleration structure to associate micro-geometry information with geometry in an acceleration\nstructure as well as a specific application of an opacity micromap to accelerate sub-triangle opacity without\nhaving to call a user any-hit shader.",{"type":1933,"children":1934,"toc":9702},"root",[1935,1942,1957,1964,1969,1975,1980,1985,1991,2005,2019,2026,2031,2180,2232,2306,2341,2423,2484,2490,2527,2532,2593,2639,2758,2772,2921,2953,2958,2996,3275,3450,3606,3649,3720,3733,3812,3851,3878,4014,4098,4111,4116,4140,4203,4239,4307,4348,4474,4499,4505,4526,4620,4694,4706,4739,4752,4997,5029,5049,5054,5103,5136,5141,5190,5230,5237,5242,5252,5294,5299,5345,5357,5382,5641,5658,5693,5713,5718,5723,5728,5775,5788,5800,5834,5860,5866,5872,5897,6047,6068,6101,6247,6260,6295,6314,6320,6338,6343,6362,6368,6373,6393,6417,6562,6612,6629,6662,6667,6673,6678,6911,6925,6930,6954,7100,7148,7164,7170,7192,7328,7370,7485,7528,7533,7591,7604,7610,7708,7767,7773,7779,7812,7818,7823,7867,7881,7908,7913,7941,7947,7968,7981,7999,8005,8030,8074,8095,8114,8120,8131,8150,8189,8195,8200,8228,8233,8252,8257,8262,8267,8279,8284,8311,8316,8343,8348,8369,8388,8394,8399,8412,8418,8431,8502,8507,8515,8520,8548,8553,8565,8570,8576,9679,9685,9691,9696],{"type":1936,"tag":1937,"props":1938,"children":1939},"element","p",{},[1940],{"type":1941,"value":1931},"text",{"type":1936,"tag":1937,"props":1943,"children":1944},{},[1945,1947,1955],{"type":1941,"value":1946},"This is a promotion of ",{"type":1936,"tag":1948,"props":1949,"children":1953},"a",{"href":1950,"rel":1951},"https://docs.vulkan.org/refpages/latest/refpages/source/VK_EXT_opacity_micromap.html",[1952],"nofollow",[1954],{"type":1941,"value":402},{"type":1941,"value":1956}," with significant changes to\nthe API, however, the overall traversal behavior and micromap structure are similar to the original extension.",{"type":1936,"tag":1958,"props":1959,"children":1961},"h2",{"id":1960},"_problem_statement",[1962],{"type":1941,"value":1963},"Problem Statement",{"type":1936,"tag":1937,"props":1965,"children":1966},{},[1967],{"type":1941,"value":1968},"Geometry in an acceleration structure in the basic ray tracing extensions contains either geometric information or\nbounds for custom geometry. There are some applications where having a more compact representation of sub-triangle\nlevel information can be useful. One specific application is handling opacity information more efficiently at traversal\ntime than having to return to an application-provided any-hit shader.",{"type":1936,"tag":1958,"props":1970,"children":1972},{"id":1971},"_solution_space",[1973],{"type":1941,"value":1974},"Solution Space",{"type":1936,"tag":1937,"props":1976,"children":1977},{},[1978],{"type":1941,"value":1979},"The mapping of the data onto the mesh is one design choice. Traditionally, texturing onto geometry is accomplished by\napplication-provided texture coordinates, but in this case that would add significant extra metadata and require\npotentially more complicated sampling. A quad domain is natural for some interpretations of map data, but that may\nrequire more information from the application on at least adjacency information, even if not full UV coordinates. A\ntriangular mapping is very amenable to performant implementations both in hardware and in software while not requiring\nextra information from the application outside of a given triangle.",{"type":1936,"tag":1937,"props":1981,"children":1982},{},[1983],{"type":1941,"value":1984},"Relatedly, the mapping from triangle to index is another design choice. With raster images, pitch ordering is the de facto\nstandard for interoperating images. There is no direct analogy to a triangular domain, though, and the most similar mapping\nis significantly less trivial than raster images. Moving to a mapping with more locality gives gains in terms of locality\nof processing, ease of downsampling, and similar operations.",{"type":1936,"tag":1958,"props":1986,"children":1988},{"id":1987},"_proposal",[1989],{"type":1941,"value":1990},"Proposal",{"type":1936,"tag":1937,"props":1992,"children":1993},{},[1994,1996,2003],{"type":1941,"value":1995},"The extension defines a new ",{"type":1936,"tag":1997,"props":1998,"children":2000},"code",{"className":1999},[],[2001],{"type":1941,"value":2002},"VkAccelerationStructureKHR",{"type":1941,"value":2004}," opacity micromap type.\nThe micromap information is defined on the domain of subdivided triangles on a given acceleration\nstructure geometry triangle. The build information contains usage information to compute the size including the number of triangles\nwith a given subdivision level and format. For an opacity micromap, the micromap contains either 1-bit or 2-bit information\nwhich controls how the traversal is performed when combined with a set of flags.",{"type":1936,"tag":1937,"props":2006,"children":2007},{},[2008,2010,2017],{"type":1941,"value":2009},"Once the micromap is built an extension structure can attach it to\n",{"type":1936,"tag":1948,"props":2011,"children":2014},{"href":2012,"rel":2013},"https://docs.vulkan.org/refpages/latest/refpages/source/VkAccelerationStructureGeometryKHR.html",[1952],[2015],{"type":1941,"value":2016},"VkAccelerationStructureGeometryKHR",{"type":1941,"value":2018}," along with\nmapping information from each triangle in the geometry to a specified triangle index in the micromap.",{"type":1936,"tag":2020,"props":2021,"children":2023},"h3",{"id":2022},"_get_micromap_size",[2024],{"type":1941,"value":2025},"Get Micromap Size",{"type":1936,"tag":1937,"props":2027,"children":2028},{},[2029],{"type":1941,"value":2030},"First, the application needs to determine the size required by the micromap build, which can be queried with:",{"type":1936,"tag":2032,"props":2033,"children":2038},"pre",{"className":2034,"code":2035,"language":2036,"meta":2037,"style":2037},"language-c shiki shiki-themes github-light-default github-dark-default","VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureBuildSizesKHR(\n VkDevice device,\n VkAccelerationStructureBuildTypeKHR buildType,\n const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo,\n const uint32_t* pMaxPrimitiveCounts,\n VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo);\n","c","",[2039],{"type":1936,"tag":1997,"props":2040,"children":2041},{"__ignoreMap":2037},[2042,2075,2093,2110,2137,2158],{"type":1936,"tag":2043,"props":2044,"children":2046},"span",{"class":2045,"line":10},"line",[2047,2053,2059,2064,2070],{"type":1936,"tag":2043,"props":2048,"children":2050},{"style":2049},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[2051],{"type":1941,"value":2052},"VKAPI_ATTR ",{"type":1936,"tag":2043,"props":2054,"children":2056},{"style":2055},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[2057],{"type":1941,"value":2058},"void",{"type":1936,"tag":2043,"props":2060,"children":2061},{"style":2049},[2062],{"type":1941,"value":2063}," VKAPI_CALL ",{"type":1936,"tag":2043,"props":2065,"children":2067},{"style":2066},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[2068],{"type":1941,"value":2069},"vkGetAccelerationStructureBuildSizesKHR",{"type":1936,"tag":2043,"props":2071,"children":2072},{"style":2049},[2073],{"type":1941,"value":2074},"(\n",{"type":1936,"tag":2043,"props":2076,"children":2077},{"class":2045,"line":14},[2078,2083,2088],{"type":1936,"tag":2043,"props":2079,"children":2080},{"style":2049},[2081],{"type":1941,"value":2082}," VkDevice ",{"type":1936,"tag":2043,"props":2084,"children":2086},{"style":2085},"--shiki-default:#953800;--shiki-dark:#FFA657",[2087],{"type":1941,"value":278},{"type":1936,"tag":2043,"props":2089,"children":2090},{"style":2049},[2091],{"type":1941,"value":2092},",\n",{"type":1936,"tag":2043,"props":2094,"children":2095},{"class":2045,"line":18},[2096,2101,2106],{"type":1936,"tag":2043,"props":2097,"children":2098},{"style":2049},[2099],{"type":1941,"value":2100}," VkAccelerationStructureBuildTypeKHR ",{"type":1936,"tag":2043,"props":2102,"children":2103},{"style":2085},[2104],{"type":1941,"value":2105},"buildType",{"type":1936,"tag":2043,"props":2107,"children":2108},{"style":2049},[2109],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2111,"children":2112},{"class":2045,"line":22},[2113,2118,2123,2128,2133],{"type":1936,"tag":2043,"props":2114,"children":2115},{"style":2055},[2116],{"type":1941,"value":2117}," const",{"type":1936,"tag":2043,"props":2119,"children":2120},{"style":2049},[2121],{"type":1941,"value":2122}," VkAccelerationStructureBuildGeometryInfoKHR",{"type":1936,"tag":2043,"props":2124,"children":2125},{"style":2055},[2126],{"type":1941,"value":2127},"*",{"type":1936,"tag":2043,"props":2129,"children":2130},{"style":2085},[2131],{"type":1941,"value":2132}," pBuildInfo",{"type":1936,"tag":2043,"props":2134,"children":2135},{"style":2049},[2136],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2138,"children":2139},{"class":2045,"line":26},[2140,2144,2149,2154],{"type":1936,"tag":2043,"props":2141,"children":2142},{"style":2055},[2143],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":2145,"children":2146},{"style":2055},[2147],{"type":1941,"value":2148}," uint32_t*",{"type":1936,"tag":2043,"props":2150,"children":2151},{"style":2085},[2152],{"type":1941,"value":2153}," pMaxPrimitiveCounts",{"type":1936,"tag":2043,"props":2155,"children":2156},{"style":2049},[2157],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2159,"children":2160},{"class":2045,"line":30},[2161,2166,2170,2175],{"type":1936,"tag":2043,"props":2162,"children":2163},{"style":2049},[2164],{"type":1941,"value":2165}," VkAccelerationStructureBuildSizesInfoKHR",{"type":1936,"tag":2043,"props":2167,"children":2168},{"style":2055},[2169],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":2171,"children":2172},{"style":2085},[2173],{"type":1941,"value":2174}," pSizeInfo",{"type":1936,"tag":2043,"props":2176,"children":2177},{"style":2049},[2178],{"type":1941,"value":2179},");\n",{"type":1936,"tag":2181,"props":2182,"children":2183},"ul",{},[2184,2210,2221],{"type":1936,"tag":2185,"props":2186,"children":2187},"li",{},[2188,2193,2195,2201,2203],{"type":1936,"tag":1997,"props":2189,"children":2191},{"className":2190},[],[2192],{"type":1941,"value":2105},{"type":1941,"value":2194}," is the type of build to be performed, must be ",{"type":1936,"tag":1997,"props":2196,"children":2198},{"className":2197},[],[2199],{"type":1941,"value":2200},"VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR",{"type":1941,"value":2202},"\nas micromaps do not support ",{"type":1936,"tag":1948,"props":2204,"children":2207},{"href":2205,"rel":2206},"https://docs.vulkan.org/refpages/latest/refpages/source/VK_KHR_opacity_micromap.html#micromap-issues-host-commands",[1952],[2208],{"type":1941,"value":2209},"host commands",{"type":1936,"tag":2185,"props":2211,"children":2212},{},[2213,2219],{"type":1936,"tag":1997,"props":2214,"children":2216},{"className":2215},[],[2217],{"type":1941,"value":2218},"pBuildInfo",{"type":1941,"value":2220}," contains the build parameters that will be used to build the micromap",{"type":1936,"tag":2185,"props":2222,"children":2223},{},[2224,2230],{"type":1936,"tag":1997,"props":2225,"children":2227},{"className":2226},[],[2228],{"type":1941,"value":2229},"pMaxPrimitiveCounts",{"type":1941,"value":2231}," defines the number of primitives built into each geometry, given micromaps do not define\nprimitives, this pointer must be null",{"type":1936,"tag":1937,"props":2233,"children":2234},{},[2235,2237,2243,2245,2251,2252,2258,2260,2266,2268,2273,2275,2281,2282,2288,2290,2296,2298,2304],{"type":1941,"value":2236},"The ",{"type":1936,"tag":1997,"props":2238,"children":2240},{"className":2239},[],[2241],{"type":1941,"value":2242},"srcAccelerationStructure",{"type":1941,"value":2244},", ",{"type":1936,"tag":1997,"props":2246,"children":2248},{"className":2247},[],[2249],{"type":1941,"value":2250},"dstAccelerationStructure",{"type":1941,"value":2244},{"type":1936,"tag":1997,"props":2253,"children":2255},{"className":2254},[],[2256],{"type":1941,"value":2257},"mode",{"type":1941,"value":2259}," and ",{"type":1936,"tag":1997,"props":2261,"children":2263},{"className":2262},[],[2264],{"type":1941,"value":2265},"scratchData",{"type":1941,"value":2267},",\nmembers of ",{"type":1936,"tag":1997,"props":2269,"children":2271},{"className":2270},[],[2272],{"type":1941,"value":2218},{"type":1941,"value":2274}," are ignored by this command.\nLikewise, the ",{"type":1936,"tag":1997,"props":2276,"children":2278},{"className":2277},[],[2279],{"type":1941,"value":2280},"data",{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":2283,"children":2285},{"className":2284},[],[2286],{"type":1941,"value":2287},"triangleArray",{"type":1941,"value":2289}," members of any ",{"type":1936,"tag":1997,"props":2291,"children":2293},{"className":2292},[],[2294],{"type":1941,"value":2295},"VkAccelerationStructureGeometryMicromapDataKHR",{"type":1941,"value":2297},"\nstructure are ignored by this command.\nSee ",{"type":1936,"tag":1948,"props":2299,"children":2301},{"href":2300},"/404#building-micromaps",[2302],{"type":1941,"value":2303},"Build Micromap",{"type":1941,"value":2305}," for more information about how to fill in this structure.",{"type":1936,"tag":1937,"props":2307,"children":2308},{},[2309,2310,2316,2317,2323,2325,2331,2333,2339],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":2311,"children":2313},{"className":2312},[],[2314],{"type":1941,"value":2315},"type",{"type":1941,"value":2244},{"type":1936,"tag":1997,"props":2318,"children":2320},{"className":2319},[],[2321],{"type":1941,"value":2322},"flags",{"type":1941,"value":2324},", and either ",{"type":1936,"tag":1997,"props":2326,"children":2328},{"className":2327},[],[2329],{"type":1941,"value":2330},"ppUsageCounts",{"type":1941,"value":2332}," or ",{"type":1936,"tag":1997,"props":2334,"children":2336},{"className":2335},[],[2337],{"type":1941,"value":2338},"pUsageCounts",{"type":1941,"value":2340}," members\nmust have identical information as the build. Meaning, the latter pointers\ndo not need to be the same, but must specify a micromap with identical topology.",{"type":1936,"tag":2032,"props":2342,"children":2344},{"className":2034,"code":2343,"language":2036,"meta":2037,"style":2037},"typedef struct VkAccelerationStructureBuildSizesInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkDeviceSize accelerationStructureSize;\n VkDeviceSize updateScratchSize;\n VkDeviceSize buildScratchSize;\n} VkAccelerationStructureBuildSizesInfoKHR;\n",[2345],{"type":1936,"tag":1997,"props":2346,"children":2347},{"__ignoreMap":2037},[2348,2366,2374,2391,2399,2407,2415],{"type":1936,"tag":2043,"props":2349,"children":2350},{"class":2045,"line":10},[2351,2356,2361],{"type":1936,"tag":2043,"props":2352,"children":2353},{"style":2055},[2354],{"type":1941,"value":2355},"typedef",{"type":1936,"tag":2043,"props":2357,"children":2358},{"style":2055},[2359],{"type":1941,"value":2360}," struct",{"type":1936,"tag":2043,"props":2362,"children":2363},{"style":2049},[2364],{"type":1941,"value":2365}," VkAccelerationStructureBuildSizesInfoKHR {\n",{"type":1936,"tag":2043,"props":2367,"children":2368},{"class":2045,"line":14},[2369],{"type":1936,"tag":2043,"props":2370,"children":2371},{"style":2049},[2372],{"type":1941,"value":2373}," VkStructureType sType;\n",{"type":1936,"tag":2043,"props":2375,"children":2376},{"class":2045,"line":18},[2377,2381,2386],{"type":1936,"tag":2043,"props":2378,"children":2379},{"style":2055},[2380],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":2382,"children":2383},{"style":2055},[2384],{"type":1941,"value":2385}," void*",{"type":1936,"tag":2043,"props":2387,"children":2388},{"style":2049},[2389],{"type":1941,"value":2390}," pNext;\n",{"type":1936,"tag":2043,"props":2392,"children":2393},{"class":2045,"line":22},[2394],{"type":1936,"tag":2043,"props":2395,"children":2396},{"style":2049},[2397],{"type":1941,"value":2398}," VkDeviceSize accelerationStructureSize;\n",{"type":1936,"tag":2043,"props":2400,"children":2401},{"class":2045,"line":26},[2402],{"type":1936,"tag":2043,"props":2403,"children":2404},{"style":2049},[2405],{"type":1941,"value":2406}," VkDeviceSize updateScratchSize;\n",{"type":1936,"tag":2043,"props":2408,"children":2409},{"class":2045,"line":30},[2410],{"type":1936,"tag":2043,"props":2411,"children":2412},{"style":2049},[2413],{"type":1941,"value":2414}," VkDeviceSize buildScratchSize;\n",{"type":1936,"tag":2043,"props":2416,"children":2417},{"class":2045,"line":34},[2418],{"type":1936,"tag":2043,"props":2419,"children":2420},{"style":2049},[2421],{"type":1941,"value":2422},"} VkAccelerationStructureBuildSizesInfoKHR;\n",{"type":1936,"tag":2181,"props":2424,"children":2425},{},[2426,2444,2467],{"type":1936,"tag":2185,"props":2427,"children":2428},{},[2429,2435,2437,2442],{"type":1936,"tag":1997,"props":2430,"children":2432},{"className":2431},[],[2433],{"type":1941,"value":2434},"accelerationStructureSize",{"type":1941,"value":2436}," is the size that the ",{"type":1936,"tag":1997,"props":2438,"children":2440},{"className":2439},[],[2441],{"type":1941,"value":2250},{"type":1941,"value":2443}," provided to build needs to be created with",{"type":1936,"tag":2185,"props":2445,"children":2446},{},[2447,2453,2454,2459,2461],{"type":1936,"tag":1997,"props":2448,"children":2450},{"className":2449},[],[2451],{"type":1941,"value":2452},"updateScratchSize",{"type":1941,"value":2436},{"type":1936,"tag":1997,"props":2455,"children":2457},{"className":2456},[],[2458],{"type":1941,"value":2265},{"type":1941,"value":2460}," provided during updates needs to be allocated as, given that\nmicromaps do not support updates, implementations must set this value to ",{"type":1936,"tag":1997,"props":2462,"children":2464},{"className":2463},[],[2465],{"type":1941,"value":2466},"0",{"type":1936,"tag":2185,"props":2468,"children":2469},{},[2470,2476,2477,2482],{"type":1936,"tag":1997,"props":2471,"children":2473},{"className":2472},[],[2474],{"type":1941,"value":2475},"buildScratchSize",{"type":1941,"value":2436},{"type":1936,"tag":1997,"props":2478,"children":2480},{"className":2479},[],[2481],{"type":1941,"value":2265},{"type":1941,"value":2483}," provided to build needs to allocated as",{"type":1936,"tag":2020,"props":2485,"children":2487},{"id":2486},"_create_micromap",[2488],{"type":1941,"value":2489},"Create Micromap",{"type":1936,"tag":1937,"props":2491,"children":2492},{},[2493,2495,2501,2503,2508,2510,2516,2518,2525],{"type":1941,"value":2494},"Micromaps must be created by ",{"type":1936,"tag":1997,"props":2496,"children":2498},{"className":2497},[],[2499],{"type":1941,"value":2500},"vkCreateAccelerationStructure2KHR",{"type":1941,"value":2502}," provided by\n",{"type":1936,"tag":1997,"props":2504,"children":2506},{"className":2505},[],[2507],{"type":1941,"value":1141},{"type":1941,"value":2509}," before they can be built and used in traversal.\n",{"type":1936,"tag":1997,"props":2511,"children":2513},{"className":2512},[],[2514],{"type":1941,"value":2515},"vkCreateAccelerationStructureKHR",{"type":1941,"value":2517}," ",{"type":1936,"tag":1948,"props":2519,"children":2522},{"href":2520,"rel":2521},"https://docs.vulkan.org/refpages/latest/refpages/source/VK_KHR_opacity_micromap.html#micromap-issues-create",[1952],[2523],{"type":1941,"value":2524},"cannot be used",{"type":1941,"value":2526}," to create micromaps.",{"type":1936,"tag":1937,"props":2528,"children":2529},{},[2530],{"type":1941,"value":2531},"Buffers used in builds require flags provided at buffer creation:",{"type":1936,"tag":2032,"props":2533,"children":2535},{"className":2034,"code":2534,"language":2036,"meta":2037,"style":2037},"VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR = 0x00080000;\nVK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR = 0x00100000;\n",[2536],{"type":1936,"tag":1997,"props":2537,"children":2538},{"__ignoreMap":2037},[2539,2568],{"type":1936,"tag":2043,"props":2540,"children":2541},{"class":2045,"line":10},[2542,2547,2552,2557,2563],{"type":1936,"tag":2043,"props":2543,"children":2544},{"style":2049},[2545],{"type":1941,"value":2546},"VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR ",{"type":1936,"tag":2043,"props":2548,"children":2549},{"style":2055},[2550],{"type":1941,"value":2551},"=",{"type":1936,"tag":2043,"props":2553,"children":2554},{"style":2055},[2555],{"type":1941,"value":2556}," 0x",{"type":1936,"tag":2043,"props":2558,"children":2560},{"style":2559},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[2561],{"type":1941,"value":2562},"00080000",{"type":1936,"tag":2043,"props":2564,"children":2565},{"style":2049},[2566],{"type":1941,"value":2567},";\n",{"type":1936,"tag":2043,"props":2569,"children":2570},{"class":2045,"line":14},[2571,2576,2580,2584,2589],{"type":1936,"tag":2043,"props":2572,"children":2573},{"style":2049},[2574],{"type":1941,"value":2575},"VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR ",{"type":1936,"tag":2043,"props":2577,"children":2578},{"style":2055},[2579],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2581,"children":2582},{"style":2055},[2583],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":2585,"children":2586},{"style":2559},[2587],{"type":1941,"value":2588},"00100000",{"type":1936,"tag":2043,"props":2590,"children":2591},{"style":2049},[2592],{"type":1941,"value":2567},{"type":1936,"tag":2181,"props":2594,"children":2595},{},[2596,2620],{"type":1936,"tag":2185,"props":2597,"children":2598},{},[2599,2605,2607,2612,2613,2618],{"type":1936,"tag":1997,"props":2600,"children":2602},{"className":2601},[],[2603],{"type":1941,"value":2604},"VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR",{"type":1941,"value":2606}," indicates that the buffer can be used as a read-only\ninput to building acceleration structures, which includes the ",{"type":1936,"tag":1997,"props":2608,"children":2610},{"className":2609},[],[2611],{"type":1941,"value":2280},{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":2614,"children":2616},{"className":2615},[],[2617],{"type":1941,"value":2287},{"type":1941,"value":2619}," members for micromaps",{"type":1936,"tag":2185,"props":2621,"children":2622},{},[2623,2629,2631,2637],{"type":1936,"tag":1997,"props":2624,"children":2626},{"className":2625},[],[2627],{"type":1941,"value":2628},"VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR",{"type":1941,"value":2630}," allows the buffer to be used as the backing buffer for the\naddress provided to the ",{"type":1936,"tag":1997,"props":2632,"children":2634},{"className":2633},[],[2635],{"type":1941,"value":2636},"VkAccelerationStructureCreateInfo2KHR::addressRange",{"type":1941,"value":2638}," member",{"type":1936,"tag":2032,"props":2640,"children":2642},{"className":2034,"code":2641,"language":2036,"meta":2037,"style":2037},"typedef enum VkAccelerationStructureCreateFlagBitsKHR {\n VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 0x00000001,\n VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT = 0x00000008,\n VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV = 0x00000004,\n} VkAccelerationStructureCreateFlagBitsKHR;\ntypedef VkFlags VkAccelerationStructureCreateFlagsKHR;\n",[2643],{"type":1936,"tag":1997,"props":2644,"children":2645},{"__ignoreMap":2037},[2646,2663,2688,2713,2738,2746],{"type":1936,"tag":2043,"props":2647,"children":2648},{"class":2045,"line":10},[2649,2653,2658],{"type":1936,"tag":2043,"props":2650,"children":2651},{"style":2055},[2652],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":2654,"children":2655},{"style":2055},[2656],{"type":1941,"value":2657}," enum",{"type":1936,"tag":2043,"props":2659,"children":2660},{"style":2049},[2661],{"type":1941,"value":2662}," VkAccelerationStructureCreateFlagBitsKHR {\n",{"type":1936,"tag":2043,"props":2664,"children":2665},{"class":2045,"line":14},[2666,2671,2675,2679,2684],{"type":1936,"tag":2043,"props":2667,"children":2668},{"style":2049},[2669],{"type":1941,"value":2670}," VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR ",{"type":1936,"tag":2043,"props":2672,"children":2673},{"style":2055},[2674],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2676,"children":2677},{"style":2055},[2678],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":2680,"children":2681},{"style":2559},[2682],{"type":1941,"value":2683},"00000001",{"type":1936,"tag":2043,"props":2685,"children":2686},{"style":2049},[2687],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2689,"children":2690},{"class":2045,"line":18},[2691,2696,2700,2704,2709],{"type":1936,"tag":2043,"props":2692,"children":2693},{"style":2049},[2694],{"type":1941,"value":2695}," VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT ",{"type":1936,"tag":2043,"props":2697,"children":2698},{"style":2055},[2699],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2701,"children":2702},{"style":2055},[2703],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":2705,"children":2706},{"style":2559},[2707],{"type":1941,"value":2708},"00000008",{"type":1936,"tag":2043,"props":2710,"children":2711},{"style":2049},[2712],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2714,"children":2715},{"class":2045,"line":22},[2716,2721,2725,2729,2734],{"type":1936,"tag":2043,"props":2717,"children":2718},{"style":2049},[2719],{"type":1941,"value":2720}," VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV ",{"type":1936,"tag":2043,"props":2722,"children":2723},{"style":2055},[2724],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2726,"children":2727},{"style":2055},[2728],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":2730,"children":2731},{"style":2559},[2732],{"type":1941,"value":2733},"00000004",{"type":1936,"tag":2043,"props":2735,"children":2736},{"style":2049},[2737],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2739,"children":2740},{"class":2045,"line":26},[2741],{"type":1936,"tag":2043,"props":2742,"children":2743},{"style":2049},[2744],{"type":1941,"value":2745},"} VkAccelerationStructureCreateFlagBitsKHR;\n",{"type":1936,"tag":2043,"props":2747,"children":2748},{"class":2045,"line":30},[2749,2753],{"type":1936,"tag":2043,"props":2750,"children":2751},{"style":2055},[2752],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":2754,"children":2755},{"style":2049},[2756],{"type":1941,"value":2757}," VkFlags VkAccelerationStructureCreateFlagsKHR;\n",{"type":1936,"tag":2181,"props":2759,"children":2760},{},[2761],{"type":1936,"tag":2185,"props":2762,"children":2763},{},[2764,2770],{"type":1936,"tag":1997,"props":2765,"children":2767},{"className":2766},[],[2768],{"type":1941,"value":2769},"VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR",{"type":1941,"value":2771}," specifies that the micromap can be used in capture/replay,\nthis is the only permitted flag for micromaps",{"type":1936,"tag":2032,"props":2773,"children":2775},{"className":2034,"code":2774,"language":2036,"meta":2037,"style":2037},"typedef enum VkAccelerationStructureTypeKHR {\n VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0,\n VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,\n VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2,\n VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR = 1000623000,\n VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,\n VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,\n} VkAccelerationStructureTypeKHR;\n",[2776],{"type":1936,"tag":1997,"props":2777,"children":2778},{"__ignoreMap":2037},[2779,2795,2816,2837,2858,2879,2896,2913],{"type":1936,"tag":2043,"props":2780,"children":2781},{"class":2045,"line":10},[2782,2786,2790],{"type":1936,"tag":2043,"props":2783,"children":2784},{"style":2055},[2785],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":2787,"children":2788},{"style":2055},[2789],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":2791,"children":2792},{"style":2049},[2793],{"type":1941,"value":2794}," VkAccelerationStructureTypeKHR {\n",{"type":1936,"tag":2043,"props":2796,"children":2797},{"class":2045,"line":14},[2798,2803,2807,2812],{"type":1936,"tag":2043,"props":2799,"children":2800},{"style":2049},[2801],{"type":1941,"value":2802}," VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR ",{"type":1936,"tag":2043,"props":2804,"children":2805},{"style":2055},[2806],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2808,"children":2809},{"style":2559},[2810],{"type":1941,"value":2811}," 0",{"type":1936,"tag":2043,"props":2813,"children":2814},{"style":2049},[2815],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2817,"children":2818},{"class":2045,"line":18},[2819,2824,2828,2833],{"type":1936,"tag":2043,"props":2820,"children":2821},{"style":2049},[2822],{"type":1941,"value":2823}," VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR ",{"type":1936,"tag":2043,"props":2825,"children":2826},{"style":2055},[2827],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2829,"children":2830},{"style":2559},[2831],{"type":1941,"value":2832}," 1",{"type":1936,"tag":2043,"props":2834,"children":2835},{"style":2049},[2836],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2838,"children":2839},{"class":2045,"line":22},[2840,2845,2849,2854],{"type":1936,"tag":2043,"props":2841,"children":2842},{"style":2049},[2843],{"type":1941,"value":2844}," VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR ",{"type":1936,"tag":2043,"props":2846,"children":2847},{"style":2055},[2848],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2850,"children":2851},{"style":2559},[2852],{"type":1941,"value":2853}," 2",{"type":1936,"tag":2043,"props":2855,"children":2856},{"style":2049},[2857],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2859,"children":2860},{"class":2045,"line":26},[2861,2866,2870,2875],{"type":1936,"tag":2043,"props":2862,"children":2863},{"style":2049},[2864],{"type":1941,"value":2865}," VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR ",{"type":1936,"tag":2043,"props":2867,"children":2868},{"style":2055},[2869],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2871,"children":2872},{"style":2559},[2873],{"type":1941,"value":2874}," 1000623000",{"type":1936,"tag":2043,"props":2876,"children":2877},{"style":2049},[2878],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":2880,"children":2881},{"class":2045,"line":30},[2882,2887,2891],{"type":1936,"tag":2043,"props":2883,"children":2884},{"style":2049},[2885],{"type":1941,"value":2886}," VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV ",{"type":1936,"tag":2043,"props":2888,"children":2889},{"style":2055},[2890],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2892,"children":2893},{"style":2049},[2894],{"type":1941,"value":2895}," VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,\n",{"type":1936,"tag":2043,"props":2897,"children":2898},{"class":2045,"line":34},[2899,2904,2908],{"type":1936,"tag":2043,"props":2900,"children":2901},{"style":2049},[2902],{"type":1941,"value":2903}," VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV ",{"type":1936,"tag":2043,"props":2905,"children":2906},{"style":2055},[2907],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":2909,"children":2910},{"style":2049},[2911],{"type":1941,"value":2912}," VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,\n",{"type":1936,"tag":2043,"props":2914,"children":2915},{"class":2045,"line":38},[2916],{"type":1936,"tag":2043,"props":2917,"children":2918},{"style":2049},[2919],{"type":1941,"value":2920},"} VkAccelerationStructureTypeKHR;\n",{"type":1936,"tag":2181,"props":2922,"children":2923},{},[2924,2935],{"type":1936,"tag":2185,"props":2925,"children":2926},{},[2927,2933],{"type":1936,"tag":1997,"props":2928,"children":2930},{"className":2929},[],[2931],{"type":1941,"value":2932},"VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR",{"type":1941,"value":2934}," specifies that this micromap is for opacity",{"type":1936,"tag":2185,"props":2936,"children":2937},{},[2938,2944,2946,2951],{"type":1936,"tag":1997,"props":2939,"children":2941},{"className":2940},[],[2942],{"type":1941,"value":2943},"VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR",{"type":1941,"value":2945}," specifies that this acceleration structure could be used for\ntop, bottom, or micromap types. ",{"type":1936,"tag":1948,"props":2947,"children":2948},{"href":2300},[2949],{"type":1941,"value":2950},"Build",{"type":1941,"value":2952}," will determine the type of acceleration structure.",{"type":1936,"tag":2020,"props":2954,"children":2956},{"id":2955},"building-micromaps",[2957],{"type":1941,"value":2303},{"type":1936,"tag":1937,"props":2959,"children":2960},{},[2961,2963,2969,2971,2981,2983,2994],{"type":1941,"value":2962},"Micromaps must be built before use by ",{"type":1936,"tag":1997,"props":2964,"children":2966},{"className":2965},[],[2967],{"type":1941,"value":2968},"vkCmdBuildAccelerationStructuresKHR",{"type":1941,"value":2970},", this work is performed on the device.\n",{"type":1936,"tag":1948,"props":2972,"children":2974},{"href":2205,"rel":2973},[1952],[2975],{"type":1936,"tag":1997,"props":2976,"children":2978},{"className":2977},[],[2979],{"type":1941,"value":2980},"vkBuildAccelerationStructuresKHR",{"type":1941,"value":2982}," and\n",{"type":1936,"tag":1948,"props":2984,"children":2987},{"href":2985,"rel":2986},"https://docs.vulkan.org/refpages/latest/refpages/source/VK_KHR_opacity_micromap.html#micromap-issues-indirect",[1952],[2988],{"type":1936,"tag":1997,"props":2989,"children":2991},{"className":2990},[],[2992],{"type":1941,"value":2993},"vkCmdBuildAccelerationStructuresIndirectKHR",{"type":1941,"value":2995}," cannot be used to\nbuild micromaps.",{"type":1936,"tag":2032,"props":2997,"children":2999},{"className":2034,"code":2998,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructuresKHR(\n VkCommandBuffer commandBuffer,\n uint32_t infoCount,\n const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,\n const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);\n\ntypedef struct VkAccelerationStructureBuildGeometryInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkAccelerationStructureTypeKHR type;\n VkBuildAccelerationStructureFlagsKHR flags;\n VkBuildAccelerationStructureModeKHR mode;\n VkAccelerationStructureKHR srcAccelerationStructure;\n VkAccelerationStructureKHR dstAccelerationStructure;\n uint32_t geometryCount;\n const VkAccelerationStructureGeometryKHR* pGeometries;\n const VkAccelerationStructureGeometryKHR* const* ppGeometries;\n VkDeviceOrHostAddressKHR scratchData;\n} VkAccelerationStructureBuildGeometryInfoKHR;\n",[3000],{"type":1936,"tag":1997,"props":3001,"children":3002},{"__ignoreMap":2037},[3003,3026,3043,3060,3084,3114,3122,3138,3146,3162,3170,3178,3186,3194,3202,3214,3235,3259,3267],{"type":1936,"tag":2043,"props":3004,"children":3005},{"class":2045,"line":10},[3006,3010,3014,3018,3022],{"type":1936,"tag":2043,"props":3007,"children":3008},{"style":2049},[3009],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":3011,"children":3012},{"style":2055},[3013],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":3015,"children":3016},{"style":2049},[3017],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":3019,"children":3020},{"style":2066},[3021],{"type":1941,"value":2968},{"type":1936,"tag":2043,"props":3023,"children":3024},{"style":2049},[3025],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":3027,"children":3028},{"class":2045,"line":14},[3029,3034,3039],{"type":1936,"tag":2043,"props":3030,"children":3031},{"style":2049},[3032],{"type":1941,"value":3033}," VkCommandBuffer ",{"type":1936,"tag":2043,"props":3035,"children":3036},{"style":2085},[3037],{"type":1941,"value":3038},"commandBuffer",{"type":1936,"tag":2043,"props":3040,"children":3041},{"style":2049},[3042],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3044,"children":3045},{"class":2045,"line":18},[3046,3051,3056],{"type":1936,"tag":2043,"props":3047,"children":3048},{"style":2055},[3049],{"type":1941,"value":3050}," uint32_t",{"type":1936,"tag":2043,"props":3052,"children":3053},{"style":2085},[3054],{"type":1941,"value":3055}," infoCount",{"type":1936,"tag":2043,"props":3057,"children":3058},{"style":2049},[3059],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3061,"children":3062},{"class":2045,"line":22},[3063,3067,3071,3075,3080],{"type":1936,"tag":2043,"props":3064,"children":3065},{"style":2055},[3066],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3068,"children":3069},{"style":2049},[3070],{"type":1941,"value":2122},{"type":1936,"tag":2043,"props":3072,"children":3073},{"style":2055},[3074],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3076,"children":3077},{"style":2085},[3078],{"type":1941,"value":3079}," pInfos",{"type":1936,"tag":2043,"props":3081,"children":3082},{"style":2049},[3083],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3085,"children":3086},{"class":2045,"line":26},[3087,3091,3096,3100,3105,3110],{"type":1936,"tag":2043,"props":3088,"children":3089},{"style":2055},[3090],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3092,"children":3093},{"style":2049},[3094],{"type":1941,"value":3095}," VkAccelerationStructureBuildRangeInfoKHR",{"type":1936,"tag":2043,"props":3097,"children":3098},{"style":2055},[3099],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3101,"children":3102},{"style":2055},[3103],{"type":1941,"value":3104}," const*",{"type":1936,"tag":2043,"props":3106,"children":3107},{"style":2085},[3108],{"type":1941,"value":3109}," ppBuildRangeInfos",{"type":1936,"tag":2043,"props":3111,"children":3112},{"style":2049},[3113],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":3115,"children":3116},{"class":2045,"line":30},[3117],{"type":1936,"tag":2043,"props":3118,"children":3119},{"emptyLinePlaceholder":244},[3120],{"type":1941,"value":3121},"\n",{"type":1936,"tag":2043,"props":3123,"children":3124},{"class":2045,"line":34},[3125,3129,3133],{"type":1936,"tag":2043,"props":3126,"children":3127},{"style":2055},[3128],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3130,"children":3131},{"style":2055},[3132],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":3134,"children":3135},{"style":2049},[3136],{"type":1941,"value":3137}," VkAccelerationStructureBuildGeometryInfoKHR {\n",{"type":1936,"tag":2043,"props":3139,"children":3140},{"class":2045,"line":38},[3141],{"type":1936,"tag":2043,"props":3142,"children":3143},{"style":2049},[3144],{"type":1941,"value":3145}," VkStructureType sType;\n",{"type":1936,"tag":2043,"props":3147,"children":3148},{"class":2045,"line":42},[3149,3153,3157],{"type":1936,"tag":2043,"props":3150,"children":3151},{"style":2055},[3152],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3154,"children":3155},{"style":2055},[3156],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":3158,"children":3159},{"style":2049},[3160],{"type":1941,"value":3161}," pNext;\n",{"type":1936,"tag":2043,"props":3163,"children":3164},{"class":2045,"line":46},[3165],{"type":1936,"tag":2043,"props":3166,"children":3167},{"style":2049},[3168],{"type":1941,"value":3169}," VkAccelerationStructureTypeKHR type;\n",{"type":1936,"tag":2043,"props":3171,"children":3172},{"class":2045,"line":50},[3173],{"type":1936,"tag":2043,"props":3174,"children":3175},{"style":2049},[3176],{"type":1941,"value":3177}," VkBuildAccelerationStructureFlagsKHR flags;\n",{"type":1936,"tag":2043,"props":3179,"children":3180},{"class":2045,"line":54},[3181],{"type":1936,"tag":2043,"props":3182,"children":3183},{"style":2049},[3184],{"type":1941,"value":3185}," VkBuildAccelerationStructureModeKHR mode;\n",{"type":1936,"tag":2043,"props":3187,"children":3188},{"class":2045,"line":58},[3189],{"type":1936,"tag":2043,"props":3190,"children":3191},{"style":2049},[3192],{"type":1941,"value":3193}," VkAccelerationStructureKHR srcAccelerationStructure;\n",{"type":1936,"tag":2043,"props":3195,"children":3196},{"class":2045,"line":62},[3197],{"type":1936,"tag":2043,"props":3198,"children":3199},{"style":2049},[3200],{"type":1941,"value":3201}," VkAccelerationStructureKHR dstAccelerationStructure;\n",{"type":1936,"tag":2043,"props":3203,"children":3204},{"class":2045,"line":66},[3205,3209],{"type":1936,"tag":2043,"props":3206,"children":3207},{"style":2055},[3208],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":3210,"children":3211},{"style":2049},[3212],{"type":1941,"value":3213}," geometryCount;\n",{"type":1936,"tag":2043,"props":3215,"children":3216},{"class":2045,"line":70},[3217,3221,3226,3230],{"type":1936,"tag":2043,"props":3218,"children":3219},{"style":2055},[3220],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3222,"children":3223},{"style":2049},[3224],{"type":1941,"value":3225}," VkAccelerationStructureGeometryKHR",{"type":1936,"tag":2043,"props":3227,"children":3228},{"style":2055},[3229],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3231,"children":3232},{"style":2049},[3233],{"type":1941,"value":3234}," pGeometries;\n",{"type":1936,"tag":2043,"props":3236,"children":3237},{"class":2045,"line":74},[3238,3242,3246,3250,3254],{"type":1936,"tag":2043,"props":3239,"children":3240},{"style":2055},[3241],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3243,"children":3244},{"style":2049},[3245],{"type":1941,"value":3225},{"type":1936,"tag":2043,"props":3247,"children":3248},{"style":2055},[3249],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3251,"children":3252},{"style":2055},[3253],{"type":1941,"value":3104},{"type":1936,"tag":2043,"props":3255,"children":3256},{"style":2049},[3257],{"type":1941,"value":3258}," ppGeometries;\n",{"type":1936,"tag":2043,"props":3260,"children":3261},{"class":2045,"line":78},[3262],{"type":1936,"tag":2043,"props":3263,"children":3264},{"style":2049},[3265],{"type":1941,"value":3266}," VkDeviceOrHostAddressKHR scratchData;\n",{"type":1936,"tag":2043,"props":3268,"children":3269},{"class":2045,"line":82},[3270],{"type":1936,"tag":2043,"props":3271,"children":3272},{"style":2049},[3273],{"type":1941,"value":3274},"} VkAccelerationStructureBuildGeometryInfoKHR;\n",{"type":1936,"tag":2181,"props":3276,"children":3277},{},[3278,3289,3306,3355,3371,3389,3405,3416,3434],{"type":1936,"tag":2185,"props":3279,"children":3280},{},[3281,3287],{"type":1936,"tag":1997,"props":3282,"children":3284},{"className":3283},[],[3285],{"type":1941,"value":3286},"ppBuildRangeInfos",{"type":1941,"value":3288}," each element that corresponds to a micromap build, does not need to be a\nvalid pointer and is ignored",{"type":1936,"tag":2185,"props":3290,"children":3291},{},[3292,3297,3299,3304],{"type":1936,"tag":1997,"props":3293,"children":3295},{"className":3294},[],[3296],{"type":1941,"value":2315},{"type":1941,"value":3298}," must be ",{"type":1936,"tag":1997,"props":3300,"children":3302},{"className":3301},[],[3303],{"type":1941,"value":2932},{"type":1941,"value":3305}," for micromap builds",{"type":1936,"tag":2185,"props":3307,"children":3308},{},[3309,3314,3316],{"type":1936,"tag":1997,"props":3310,"children":3312},{"className":3311},[],[3313],{"type":1941,"value":2322},{"type":1941,"value":3315}," are the build flags, the only following are valid for micromaps:",{"type":1936,"tag":2181,"props":3317,"children":3318},{},[3319,3328,3337,3346],{"type":1936,"tag":2185,"props":3320,"children":3321},{},[3322],{"type":1936,"tag":1997,"props":3323,"children":3325},{"className":3324},[],[3326],{"type":1941,"value":3327},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR",{"type":1936,"tag":2185,"props":3329,"children":3330},{},[3331],{"type":1936,"tag":1997,"props":3332,"children":3334},{"className":3333},[],[3335],{"type":1941,"value":3336},"VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR",{"type":1936,"tag":2185,"props":3338,"children":3339},{},[3340],{"type":1936,"tag":1997,"props":3341,"children":3343},{"className":3342},[],[3344],{"type":1941,"value":3345},"VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR",{"type":1936,"tag":2185,"props":3347,"children":3348},{},[3349],{"type":1936,"tag":1997,"props":3350,"children":3352},{"className":3351},[],[3353],{"type":1941,"value":3354},"VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR",{"type":1936,"tag":2185,"props":3356,"children":3357},{},[3358,3363,3365],{"type":1936,"tag":1997,"props":3359,"children":3361},{"className":3360},[],[3362],{"type":1941,"value":2257},{"type":1941,"value":3364}," specifies the type of operation to perform, as micromaps do not support\nupdates, this must be ",{"type":1936,"tag":1997,"props":3366,"children":3368},{"className":3367},[],[3369],{"type":1941,"value":3370},"VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR",{"type":1936,"tag":2185,"props":3372,"children":3373},{},[3374,3379,3381,3387],{"type":1936,"tag":1997,"props":3375,"children":3377},{"className":3376},[],[3378],{"type":1941,"value":2242},{"type":1941,"value":3380}," does not need to be a valid handle and is ignored\nsince ",{"type":1936,"tag":1997,"props":3382,"children":3384},{"className":3383},[],[3385],{"type":1941,"value":3386},"VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR",{"type":1941,"value":3388}," is not supported for micromaps",{"type":1936,"tag":2185,"props":3390,"children":3391},{},[3392,3397,3399],{"type":1936,"tag":1997,"props":3393,"children":3395},{"className":3394},[],[3396],{"type":1941,"value":2250},{"type":1941,"value":3398}," specifies the micromap object that bakes the build, this data is accessed with\n",{"type":1936,"tag":1997,"props":3400,"children":3402},{"className":3401},[],[3403],{"type":1941,"value":3404},"VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR",{"type":1936,"tag":2185,"props":3406,"children":3407},{},[3408,3414],{"type":1936,"tag":1997,"props":3409,"children":3411},{"className":3410},[],[3412],{"type":1941,"value":3413},"geometryCount",{"type":1941,"value":3415}," must be 1 for micromaps",{"type":1936,"tag":2185,"props":3417,"children":3418},{},[3419,3425,3426,3432],{"type":1936,"tag":1997,"props":3420,"children":3422},{"className":3421},[],[3423],{"type":1941,"value":3424},"pGeometries",{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":3427,"children":3429},{"className":3428},[],[3430],{"type":1941,"value":3431},"ppGeometries",{"type":1941,"value":3433}," specifies the micromap data, one and\nonly one of these must be a valid pointer",{"type":1936,"tag":2185,"props":3435,"children":3436},{},[3437,3442,3444],{"type":1936,"tag":1997,"props":3438,"children":3440},{"className":3439},[],[3441],{"type":1941,"value":2265},{"type":1941,"value":3443}," specifies the temporary working area used while building the micromap, this data\nis accessed with\n",{"type":1936,"tag":1997,"props":3445,"children":3447},{"className":3446},[],[3448],{"type":1941,"value":3449},"VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR | VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR",{"type":1936,"tag":2032,"props":3451,"children":3453},{"className":2034,"code":3452,"language":2036,"meta":2037,"style":2037},"typedef enum VkBuildAccelerationStructureFlagBitsKHR {\n ...\n VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,\n VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,\n VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,\n VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR = 0x00000400,\n ...\n} VkBuildAccelerationStructureFlagBitsKHR;\ntypedef VkFlags VkBuildAccelerationStructureFlagsKHR;\n",[3454],{"type":1936,"tag":1997,"props":3455,"children":3456},{"__ignoreMap":2037},[3457,3473,3481,3506,3530,3554,3579,3586,3594],{"type":1936,"tag":2043,"props":3458,"children":3459},{"class":2045,"line":10},[3460,3464,3468],{"type":1936,"tag":2043,"props":3461,"children":3462},{"style":2055},[3463],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3465,"children":3466},{"style":2055},[3467],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":3469,"children":3470},{"style":2049},[3471],{"type":1941,"value":3472}," VkBuildAccelerationStructureFlagBitsKHR {\n",{"type":1936,"tag":2043,"props":3474,"children":3475},{"class":2045,"line":14},[3476],{"type":1936,"tag":2043,"props":3477,"children":3478},{"style":2049},[3479],{"type":1941,"value":3480}," ...\n",{"type":1936,"tag":2043,"props":3482,"children":3483},{"class":2045,"line":18},[3484,3489,3493,3497,3502],{"type":1936,"tag":2043,"props":3485,"children":3486},{"style":2049},[3487],{"type":1941,"value":3488}," VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR ",{"type":1936,"tag":2043,"props":3490,"children":3491},{"style":2055},[3492],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3494,"children":3495},{"style":2055},[3496],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":3498,"children":3499},{"style":2559},[3500],{"type":1941,"value":3501},"00000002",{"type":1936,"tag":2043,"props":3503,"children":3504},{"style":2049},[3505],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3507,"children":3508},{"class":2045,"line":22},[3509,3514,3518,3522,3526],{"type":1936,"tag":2043,"props":3510,"children":3511},{"style":2049},[3512],{"type":1941,"value":3513}," VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR ",{"type":1936,"tag":2043,"props":3515,"children":3516},{"style":2055},[3517],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3519,"children":3520},{"style":2055},[3521],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":3523,"children":3524},{"style":2559},[3525],{"type":1941,"value":2733},{"type":1936,"tag":2043,"props":3527,"children":3528},{"style":2049},[3529],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3531,"children":3532},{"class":2045,"line":26},[3533,3538,3542,3546,3550],{"type":1936,"tag":2043,"props":3534,"children":3535},{"style":2049},[3536],{"type":1941,"value":3537}," VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR ",{"type":1936,"tag":2043,"props":3539,"children":3540},{"style":2055},[3541],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3543,"children":3544},{"style":2055},[3545],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":3547,"children":3548},{"style":2559},[3549],{"type":1941,"value":2708},{"type":1936,"tag":2043,"props":3551,"children":3552},{"style":2049},[3553],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3555,"children":3556},{"class":2045,"line":30},[3557,3562,3566,3570,3575],{"type":1936,"tag":2043,"props":3558,"children":3559},{"style":2049},[3560],{"type":1941,"value":3561}," VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR ",{"type":1936,"tag":2043,"props":3563,"children":3564},{"style":2055},[3565],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3567,"children":3568},{"style":2055},[3569],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":3571,"children":3572},{"style":2559},[3573],{"type":1941,"value":3574},"00000400",{"type":1936,"tag":2043,"props":3576,"children":3577},{"style":2049},[3578],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3580,"children":3581},{"class":2045,"line":34},[3582],{"type":1936,"tag":2043,"props":3583,"children":3584},{"style":2049},[3585],{"type":1941,"value":3480},{"type":1936,"tag":2043,"props":3587,"children":3588},{"class":2045,"line":38},[3589],{"type":1936,"tag":2043,"props":3590,"children":3591},{"style":2049},[3592],{"type":1941,"value":3593},"} VkBuildAccelerationStructureFlagBitsKHR;\n",{"type":1936,"tag":2043,"props":3595,"children":3596},{"class":2045,"line":42},[3597,3601],{"type":1936,"tag":2043,"props":3598,"children":3599},{"style":2055},[3600],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3602,"children":3603},{"style":2049},[3604],{"type":1941,"value":3605}," VkFlags VkBuildAccelerationStructureFlagsKHR;\n",{"type":1936,"tag":2181,"props":3607,"children":3608},{},[3609,3619,3629,3639],{"type":1936,"tag":2185,"props":3610,"children":3611},{},[3612,3617],{"type":1936,"tag":1997,"props":3613,"children":3615},{"className":3614},[],[3616],{"type":1941,"value":3336},{"type":1941,"value":3618}," specifies the build should prioritize trace time over build time",{"type":1936,"tag":2185,"props":3620,"children":3621},{},[3622,3627],{"type":1936,"tag":1997,"props":3623,"children":3625},{"className":3624},[],[3626],{"type":1941,"value":3345},{"type":1941,"value":3628}," specifies the build should prioritize build time over trace time",{"type":1936,"tag":2185,"props":3630,"children":3631},{},[3632,3637],{"type":1936,"tag":1997,"props":3633,"children":3635},{"className":3634},[],[3636],{"type":1941,"value":3327},{"type":1941,"value":3638}," specifies the micromap supports compact copies",{"type":1936,"tag":2185,"props":3640,"children":3641},{},[3642,3647],{"type":1936,"tag":1997,"props":3643,"children":3645},{"className":3644},[],[3646],{"type":1941,"value":3354},{"type":1941,"value":3648}," specifies that the implementation can build the micromap array with lossy states to\ncompress it or support more subdivision levels",{"type":1936,"tag":2032,"props":3650,"children":3652},{"className":2034,"code":3651,"language":2036,"meta":2037,"style":2037},"typedef enum VkBuildAccelerationStructureModeKHR {\n VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR = 0,\n VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR = 1,\n} VkBuildAccelerationStructureModeKHR;\n",[3653],{"type":1936,"tag":1997,"props":3654,"children":3655},{"__ignoreMap":2037},[3656,3672,3692,3712],{"type":1936,"tag":2043,"props":3657,"children":3658},{"class":2045,"line":10},[3659,3663,3667],{"type":1936,"tag":2043,"props":3660,"children":3661},{"style":2055},[3662],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3664,"children":3665},{"style":2055},[3666],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":3668,"children":3669},{"style":2049},[3670],{"type":1941,"value":3671}," VkBuildAccelerationStructureModeKHR {\n",{"type":1936,"tag":2043,"props":3673,"children":3674},{"class":2045,"line":14},[3675,3680,3684,3688],{"type":1936,"tag":2043,"props":3676,"children":3677},{"style":2049},[3678],{"type":1941,"value":3679}," VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR ",{"type":1936,"tag":2043,"props":3681,"children":3682},{"style":2055},[3683],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3685,"children":3686},{"style":2559},[3687],{"type":1941,"value":2811},{"type":1936,"tag":2043,"props":3689,"children":3690},{"style":2049},[3691],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3693,"children":3694},{"class":2045,"line":18},[3695,3700,3704,3708],{"type":1936,"tag":2043,"props":3696,"children":3697},{"style":2049},[3698],{"type":1941,"value":3699}," VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR ",{"type":1936,"tag":2043,"props":3701,"children":3702},{"style":2055},[3703],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":3705,"children":3706},{"style":2559},[3707],{"type":1941,"value":2832},{"type":1936,"tag":2043,"props":3709,"children":3710},{"style":2049},[3711],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":3713,"children":3714},{"class":2045,"line":22},[3715],{"type":1936,"tag":2043,"props":3716,"children":3717},{"style":2049},[3718],{"type":1941,"value":3719},"} VkBuildAccelerationStructureModeKHR;\n",{"type":1936,"tag":2181,"props":3721,"children":3722},{},[3723],{"type":1936,"tag":2185,"props":3724,"children":3725},{},[3726,3731],{"type":1936,"tag":1997,"props":3727,"children":3729},{"className":3728},[],[3730],{"type":1941,"value":3370},{"type":1941,"value":3732}," specifies that the micromap build operation is to build it",{"type":1936,"tag":2032,"props":3734,"children":3736},{"className":2034,"code":3735,"language":2036,"meta":2037,"style":2037},"typedef struct VkAccelerationStructureGeometryKHR {\n VkStructureType sType;\n const void* pNext;\n VkGeometryTypeKHR geometryType;\n VkAccelerationStructureGeometryDataKHR geometry;\n VkGeometryFlagsKHR flags;\n} VkAccelerationStructureGeometryKHR;\n",[3737],{"type":1936,"tag":1997,"props":3738,"children":3739},{"__ignoreMap":2037},[3740,3756,3764,3780,3788,3796,3804],{"type":1936,"tag":2043,"props":3741,"children":3742},{"class":2045,"line":10},[3743,3747,3751],{"type":1936,"tag":2043,"props":3744,"children":3745},{"style":2055},[3746],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3748,"children":3749},{"style":2055},[3750],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":3752,"children":3753},{"style":2049},[3754],{"type":1941,"value":3755}," VkAccelerationStructureGeometryKHR {\n",{"type":1936,"tag":2043,"props":3757,"children":3758},{"class":2045,"line":14},[3759],{"type":1936,"tag":2043,"props":3760,"children":3761},{"style":2049},[3762],{"type":1941,"value":3763}," VkStructureType sType;\n",{"type":1936,"tag":2043,"props":3765,"children":3766},{"class":2045,"line":18},[3767,3771,3775],{"type":1936,"tag":2043,"props":3768,"children":3769},{"style":2055},[3770],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3772,"children":3773},{"style":2055},[3774],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":3776,"children":3777},{"style":2049},[3778],{"type":1941,"value":3779}," pNext;\n",{"type":1936,"tag":2043,"props":3781,"children":3782},{"class":2045,"line":22},[3783],{"type":1936,"tag":2043,"props":3784,"children":3785},{"style":2049},[3786],{"type":1941,"value":3787}," VkGeometryTypeKHR geometryType;\n",{"type":1936,"tag":2043,"props":3789,"children":3790},{"class":2045,"line":26},[3791],{"type":1936,"tag":2043,"props":3792,"children":3793},{"style":2049},[3794],{"type":1941,"value":3795}," VkAccelerationStructureGeometryDataKHR geometry;\n",{"type":1936,"tag":2043,"props":3797,"children":3798},{"class":2045,"line":30},[3799],{"type":1936,"tag":2043,"props":3800,"children":3801},{"style":2049},[3802],{"type":1941,"value":3803}," VkGeometryFlagsKHR flags;\n",{"type":1936,"tag":2043,"props":3805,"children":3806},{"class":2045,"line":34},[3807],{"type":1936,"tag":2043,"props":3808,"children":3809},{"style":2049},[3810],{"type":1941,"value":3811},"} VkAccelerationStructureGeometryKHR;\n",{"type":1936,"tag":2181,"props":3813,"children":3814},{},[3815,3841],{"type":1936,"tag":2185,"props":3816,"children":3817},{},[3818,3824,3826,3831,3833,3839],{"type":1936,"tag":1997,"props":3819,"children":3821},{"className":3820},[],[3822],{"type":1941,"value":3823},"geometryType",{"type":1941,"value":3825}," specifies the type of the ",{"type":1936,"tag":1997,"props":3827,"children":3829},{"className":3828},[],[3830],{"type":1941,"value":124},{"type":1941,"value":3832}," member, it must be\n",{"type":1936,"tag":1997,"props":3834,"children":3836},{"className":3835},[],[3837],{"type":1941,"value":3838},"VK_GEOMETRY_TYPE_MICROMAP_KHR",{"type":1941,"value":3840}," for micromaps",{"type":1936,"tag":2185,"props":3842,"children":3843},{},[3844,3849],{"type":1936,"tag":1997,"props":3845,"children":3847},{"className":3846},[],[3848],{"type":1941,"value":2322},{"type":1941,"value":3850}," specifies flags for the geometry, must be 0 for micromaps",{"type":1936,"tag":1937,"props":3852,"children":3853},{},[3854,3856,3862,3864,3869,3871,3876],{"type":1941,"value":3855},"This structure is added to the ",{"type":1936,"tag":1997,"props":3857,"children":3859},{"className":3858},[],[3860],{"type":1941,"value":3861},"pNext",{"type":1941,"value":3863}," of ",{"type":1936,"tag":1997,"props":3865,"children":3867},{"className":3866},[],[3868],{"type":1941,"value":2016},{"type":1941,"value":3870}," to specify\nthe data for ",{"type":1936,"tag":1997,"props":3872,"children":3874},{"className":3873},[],[3875],{"type":1941,"value":3838},{"type":1941,"value":3877}," typed geometry:",{"type":1936,"tag":2032,"props":3879,"children":3881},{"className":2034,"code":3880,"language":2036,"meta":2037,"style":2037},"typedef struct VkAccelerationStructureGeometryMicromapDataKHR {\n VkStructureType sType;\n const void* pNext;\n uint32_t usageCountsCount;\n const VkMicromapUsageKHR* pUsageCounts;\n const VkMicromapUsageKHR* const* ppUsageCounts;\n VkDeviceAddress data;\n VkDeviceAddress triangleArray;\n VkDeviceSize triangleArrayStride;\n} VkAccelerationStructureGeometryMicromapDataKHR;\n",[3882],{"type":1936,"tag":1997,"props":3883,"children":3884},{"__ignoreMap":2037},[3885,3901,3909,3925,3937,3958,3982,3990,3998,4006],{"type":1936,"tag":2043,"props":3886,"children":3887},{"class":2045,"line":10},[3888,3892,3896],{"type":1936,"tag":2043,"props":3889,"children":3890},{"style":2055},[3891],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":3893,"children":3894},{"style":2055},[3895],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":3897,"children":3898},{"style":2049},[3899],{"type":1941,"value":3900}," VkAccelerationStructureGeometryMicromapDataKHR {\n",{"type":1936,"tag":2043,"props":3902,"children":3903},{"class":2045,"line":14},[3904],{"type":1936,"tag":2043,"props":3905,"children":3906},{"style":2049},[3907],{"type":1941,"value":3908}," VkStructureType sType;\n",{"type":1936,"tag":2043,"props":3910,"children":3911},{"class":2045,"line":18},[3912,3916,3920],{"type":1936,"tag":2043,"props":3913,"children":3914},{"style":2055},[3915],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3917,"children":3918},{"style":2055},[3919],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":3921,"children":3922},{"style":2049},[3923],{"type":1941,"value":3924}," pNext;\n",{"type":1936,"tag":2043,"props":3926,"children":3927},{"class":2045,"line":22},[3928,3932],{"type":1936,"tag":2043,"props":3929,"children":3930},{"style":2055},[3931],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":3933,"children":3934},{"style":2049},[3935],{"type":1941,"value":3936}," usageCountsCount;\n",{"type":1936,"tag":2043,"props":3938,"children":3939},{"class":2045,"line":26},[3940,3944,3949,3953],{"type":1936,"tag":2043,"props":3941,"children":3942},{"style":2055},[3943],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3945,"children":3946},{"style":2049},[3947],{"type":1941,"value":3948}," VkMicromapUsageKHR",{"type":1936,"tag":2043,"props":3950,"children":3951},{"style":2055},[3952],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3954,"children":3955},{"style":2049},[3956],{"type":1941,"value":3957}," pUsageCounts;\n",{"type":1936,"tag":2043,"props":3959,"children":3960},{"class":2045,"line":30},[3961,3965,3969,3973,3977],{"type":1936,"tag":2043,"props":3962,"children":3963},{"style":2055},[3964],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":3966,"children":3967},{"style":2049},[3968],{"type":1941,"value":3948},{"type":1936,"tag":2043,"props":3970,"children":3971},{"style":2055},[3972],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":3974,"children":3975},{"style":2055},[3976],{"type":1941,"value":3104},{"type":1936,"tag":2043,"props":3978,"children":3979},{"style":2049},[3980],{"type":1941,"value":3981}," ppUsageCounts;\n",{"type":1936,"tag":2043,"props":3983,"children":3984},{"class":2045,"line":34},[3985],{"type":1936,"tag":2043,"props":3986,"children":3987},{"style":2049},[3988],{"type":1941,"value":3989}," VkDeviceAddress data;\n",{"type":1936,"tag":2043,"props":3991,"children":3992},{"class":2045,"line":38},[3993],{"type":1936,"tag":2043,"props":3994,"children":3995},{"style":2049},[3996],{"type":1941,"value":3997}," VkDeviceAddress triangleArray;\n",{"type":1936,"tag":2043,"props":3999,"children":4000},{"class":2045,"line":42},[4001],{"type":1936,"tag":2043,"props":4002,"children":4003},{"style":2049},[4004],{"type":1941,"value":4005}," VkDeviceSize triangleArrayStride;\n",{"type":1936,"tag":2043,"props":4007,"children":4008},{"class":2045,"line":46},[4009],{"type":1936,"tag":2043,"props":4010,"children":4011},{"style":2049},[4012],{"type":1941,"value":4013},"} VkAccelerationStructureGeometryMicromapDataKHR;\n",{"type":1936,"tag":2181,"props":4015,"children":4016},{},[4017,4028,4044,4060,4082],{"type":1936,"tag":2185,"props":4018,"children":4019},{},[4020,4026],{"type":1936,"tag":1997,"props":4021,"children":4023},{"className":4022},[],[4024],{"type":1941,"value":4025},"usageCountsCount",{"type":1941,"value":4027}," specifies the number of usage counts structures",{"type":1936,"tag":2185,"props":4029,"children":4030},{},[4031,4036,4037,4042],{"type":1936,"tag":1997,"props":4032,"children":4034},{"className":4033},[],[4035],{"type":1941,"value":2338},{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":4038,"children":4040},{"className":4039},[],[4041],{"type":1941,"value":2330},{"type":1941,"value":4043}," specifies the topology of the micromap, one and\nonly one of these must be a valid pointer",{"type":1936,"tag":2185,"props":4045,"children":4046},{},[4047,4052,4054],{"type":1936,"tag":1997,"props":4048,"children":4050},{"className":4049},[],[4051],{"type":1941,"value":2280},{"type":1941,"value":4053}," specifies the source data to build the micromap with, this data is accessed with\n",{"type":1936,"tag":1997,"props":4055,"children":4057},{"className":4056},[],[4058],{"type":1941,"value":4059},"VK_ACCESS_SHADER_READ_BIT",{"type":1936,"tag":2185,"props":4061,"children":4062},{},[4063,4068,4070,4075,4077],{"type":1936,"tag":1997,"props":4064,"children":4066},{"className":4065},[],[4067],{"type":1941,"value":2287},{"type":1941,"value":4069}," specifies the layout of ",{"type":1936,"tag":1997,"props":4071,"children":4073},{"className":4072},[],[4074],{"type":1941,"value":2280},{"type":1941,"value":4076},", this array is accessed with\n",{"type":1936,"tag":1997,"props":4078,"children":4080},{"className":4079},[],[4081],{"type":1941,"value":4059},{"type":1936,"tag":2185,"props":4083,"children":4084},{},[4085,4091,4093],{"type":1936,"tag":1997,"props":4086,"children":4088},{"className":4087},[],[4089],{"type":1941,"value":4090},"triangleArrayStride",{"type":1941,"value":4092}," specifies the bytes between each element of the ",{"type":1936,"tag":1997,"props":4094,"children":4096},{"className":4095},[],[4097],{"type":1941,"value":2287},{"type":1936,"tag":1937,"props":4099,"children":4100},{},[4101,4103,4109],{"type":1941,"value":4102},"Builds are done in no explicit ordering within the ",{"type":1936,"tag":1997,"props":4104,"children":4106},{"className":4105},[],[4107],{"type":1941,"value":4108},"pInfos",{"type":1941,"value":4110},", so there cannot\nbe any memory aliasing between any micromap memories or scratch memories being\nused by any of the builds. Micromaps cannot be built in the same command that\nthey are being referenced by bottom-level acceleration structures.",{"type":1936,"tag":1937,"props":4112,"children":4113},{},[4114],{"type":1941,"value":4115},"Access to all buffers accessed by this command must be synchronized with the\nVK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR type.",{"type":1936,"tag":1937,"props":4117,"children":4118},{},[4119,4120,4125,4126,4131,4133,4138],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":4121,"children":4123},{"className":4122},[],[4124],{"type":1941,"value":2280},{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":4127,"children":4129},{"className":4128},[],[4130],{"type":1941,"value":2287},{"type":1941,"value":4132}," members must have been retrieved from a buffer\ncreated with ",{"type":1936,"tag":1997,"props":4134,"children":4136},{"className":4135},[],[4137],{"type":1941,"value":2604},{"type":1941,"value":4139},".",{"type":1936,"tag":2032,"props":4141,"children":4143},{"className":2034,"code":4142,"language":2036,"meta":2037,"style":2037},"typedef struct VkMicromapUsageKHR {\n uint32_t count;\n uint32_t subdivisionLevel;\n VkOpacityMicromapFormatKHR format;\n} VkMicromapUsageKHR;\n",[4144],{"type":1936,"tag":1997,"props":4145,"children":4146},{"__ignoreMap":2037},[4147,4163,4175,4187,4195],{"type":1936,"tag":2043,"props":4148,"children":4149},{"class":2045,"line":10},[4150,4154,4158],{"type":1936,"tag":2043,"props":4151,"children":4152},{"style":2055},[4153],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":4155,"children":4156},{"style":2055},[4157],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":4159,"children":4160},{"style":2049},[4161],{"type":1941,"value":4162}," VkMicromapUsageKHR {\n",{"type":1936,"tag":2043,"props":4164,"children":4165},{"class":2045,"line":14},[4166,4170],{"type":1936,"tag":2043,"props":4167,"children":4168},{"style":2055},[4169],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":4171,"children":4172},{"style":2049},[4173],{"type":1941,"value":4174}," count;\n",{"type":1936,"tag":2043,"props":4176,"children":4177},{"class":2045,"line":18},[4178,4182],{"type":1936,"tag":2043,"props":4179,"children":4180},{"style":2055},[4181],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":4183,"children":4184},{"style":2049},[4185],{"type":1941,"value":4186}," subdivisionLevel;\n",{"type":1936,"tag":2043,"props":4188,"children":4189},{"class":2045,"line":22},[4190],{"type":1936,"tag":2043,"props":4191,"children":4192},{"style":2049},[4193],{"type":1941,"value":4194}," VkOpacityMicromapFormatKHR format;\n",{"type":1936,"tag":2043,"props":4196,"children":4197},{"class":2045,"line":26},[4198],{"type":1936,"tag":2043,"props":4199,"children":4200},{"style":2049},[4201],{"type":1941,"value":4202},"} VkMicromapUsageKHR;\n",{"type":1936,"tag":2181,"props":4204,"children":4205},{},[4206,4217,4228],{"type":1936,"tag":2185,"props":4207,"children":4208},{},[4209,4215],{"type":1936,"tag":1997,"props":4210,"children":4212},{"className":4211},[],[4213],{"type":1941,"value":4214},"count",{"type":1941,"value":4216}," specifies the number of triangles for this usage",{"type":1936,"tag":2185,"props":4218,"children":4219},{},[4220,4226],{"type":1936,"tag":1997,"props":4221,"children":4223},{"className":4222},[],[4224],{"type":1941,"value":4225},"subdivisionLevel",{"type":1941,"value":4227}," specifies which subdivision level this usage is describing",{"type":1936,"tag":2185,"props":4229,"children":4230},{},[4231,4237],{"type":1936,"tag":1997,"props":4232,"children":4234},{"className":4233},[],[4235],{"type":1941,"value":4236},"format",{"type":1941,"value":4238}," specifies the format of the states for this usage",{"type":1936,"tag":2032,"props":4240,"children":4242},{"className":2034,"code":4241,"language":2036,"meta":2037,"style":2037},"typedef struct VkMicromapTriangleKHR {\n uint32_t dataOffset;\n uint16_t subdivisionLevel;\n uint16_t format;\n} VkMicromapTriangleKHR;\n",[4243],{"type":1936,"tag":1997,"props":4244,"children":4245},{"__ignoreMap":2037},[4246,4262,4274,4287,4299],{"type":1936,"tag":2043,"props":4247,"children":4248},{"class":2045,"line":10},[4249,4253,4257],{"type":1936,"tag":2043,"props":4250,"children":4251},{"style":2055},[4252],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":4254,"children":4255},{"style":2055},[4256],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":4258,"children":4259},{"style":2049},[4260],{"type":1941,"value":4261}," VkMicromapTriangleKHR {\n",{"type":1936,"tag":2043,"props":4263,"children":4264},{"class":2045,"line":14},[4265,4269],{"type":1936,"tag":2043,"props":4266,"children":4267},{"style":2055},[4268],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":4270,"children":4271},{"style":2049},[4272],{"type":1941,"value":4273}," dataOffset;\n",{"type":1936,"tag":2043,"props":4275,"children":4276},{"class":2045,"line":18},[4277,4282],{"type":1936,"tag":2043,"props":4278,"children":4279},{"style":2055},[4280],{"type":1941,"value":4281}," uint16_t",{"type":1936,"tag":2043,"props":4283,"children":4284},{"style":2049},[4285],{"type":1941,"value":4286}," subdivisionLevel;\n",{"type":1936,"tag":2043,"props":4288,"children":4289},{"class":2045,"line":22},[4290,4294],{"type":1936,"tag":2043,"props":4291,"children":4292},{"style":2055},[4293],{"type":1941,"value":4281},{"type":1936,"tag":2043,"props":4295,"children":4296},{"style":2049},[4297],{"type":1941,"value":4298}," format;\n",{"type":1936,"tag":2043,"props":4300,"children":4301},{"class":2045,"line":26},[4302],{"type":1936,"tag":2043,"props":4303,"children":4304},{"style":2049},[4305],{"type":1941,"value":4306},"} VkMicromapTriangleKHR;\n",{"type":1936,"tag":2181,"props":4308,"children":4309},{},[4310,4328,4338],{"type":1936,"tag":2185,"props":4311,"children":4312},{},[4313,4319,4321,4326],{"type":1936,"tag":1997,"props":4314,"children":4316},{"className":4315},[],[4317],{"type":1941,"value":4318},"dataOffset",{"type":1941,"value":4320}," specifies the offset in ",{"type":1936,"tag":1997,"props":4322,"children":4324},{"className":4323},[],[4325],{"type":1941,"value":2280},{"type":1941,"value":4327}," in the build command where this triangle is specified",{"type":1936,"tag":2185,"props":4329,"children":4330},{},[4331,4336],{"type":1936,"tag":1997,"props":4332,"children":4334},{"className":4333},[],[4335],{"type":1941,"value":4225},{"type":1941,"value":4337}," specifies which subdivision level this triangle is specifying",{"type":1936,"tag":2185,"props":4339,"children":4340},{},[4341,4346],{"type":1936,"tag":1997,"props":4342,"children":4344},{"className":4343},[],[4345],{"type":1941,"value":4236},{"type":1941,"value":4347}," specifies the format of the states of this triangle",{"type":1936,"tag":2032,"props":4349,"children":4351},{"className":2034,"code":4350,"language":2036,"meta":2037,"style":2037},"typedef enum VkOpacityMicromapFormatKHR {\n VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR = 1,\n VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR = 2,\n VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR,\n VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR,\n VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_KHR = 0x7FFFFFFF\n} VkOpacityMicromapFormatKHR;\n",[4352],{"type":1936,"tag":1997,"props":4353,"children":4354},{"__ignoreMap":2037},[4355,4371,4391,4411,4428,4445,4466],{"type":1936,"tag":2043,"props":4356,"children":4357},{"class":2045,"line":10},[4358,4362,4366],{"type":1936,"tag":2043,"props":4359,"children":4360},{"style":2055},[4361],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":4363,"children":4364},{"style":2055},[4365],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":4367,"children":4368},{"style":2049},[4369],{"type":1941,"value":4370}," VkOpacityMicromapFormatKHR {\n",{"type":1936,"tag":2043,"props":4372,"children":4373},{"class":2045,"line":14},[4374,4379,4383,4387],{"type":1936,"tag":2043,"props":4375,"children":4376},{"style":2049},[4377],{"type":1941,"value":4378}," VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR ",{"type":1936,"tag":2043,"props":4380,"children":4381},{"style":2055},[4382],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4384,"children":4385},{"style":2559},[4386],{"type":1941,"value":2832},{"type":1936,"tag":2043,"props":4388,"children":4389},{"style":2049},[4390],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4392,"children":4393},{"class":2045,"line":18},[4394,4399,4403,4407],{"type":1936,"tag":2043,"props":4395,"children":4396},{"style":2049},[4397],{"type":1941,"value":4398}," VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR ",{"type":1936,"tag":2043,"props":4400,"children":4401},{"style":2055},[4402],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4404,"children":4405},{"style":2559},[4406],{"type":1941,"value":2853},{"type":1936,"tag":2043,"props":4408,"children":4409},{"style":2049},[4410],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4412,"children":4413},{"class":2045,"line":22},[4414,4419,4423],{"type":1936,"tag":2043,"props":4415,"children":4416},{"style":2049},[4417],{"type":1941,"value":4418}," VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT ",{"type":1936,"tag":2043,"props":4420,"children":4421},{"style":2055},[4422],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4424,"children":4425},{"style":2049},[4426],{"type":1941,"value":4427}," VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR,\n",{"type":1936,"tag":2043,"props":4429,"children":4430},{"class":2045,"line":26},[4431,4436,4440],{"type":1936,"tag":2043,"props":4432,"children":4433},{"style":2049},[4434],{"type":1941,"value":4435}," VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT ",{"type":1936,"tag":2043,"props":4437,"children":4438},{"style":2055},[4439],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4441,"children":4442},{"style":2049},[4443],{"type":1941,"value":4444}," VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR,\n",{"type":1936,"tag":2043,"props":4446,"children":4447},{"class":2045,"line":30},[4448,4453,4457,4461],{"type":1936,"tag":2043,"props":4449,"children":4450},{"style":2049},[4451],{"type":1941,"value":4452}," VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_KHR ",{"type":1936,"tag":2043,"props":4454,"children":4455},{"style":2055},[4456],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4458,"children":4459},{"style":2055},[4460],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":4462,"children":4463},{"style":2559},[4464],{"type":1941,"value":4465},"7FFFFFFF\n",{"type":1936,"tag":2043,"props":4467,"children":4468},{"class":2045,"line":34},[4469],{"type":1936,"tag":2043,"props":4470,"children":4471},{"style":2049},[4472],{"type":1941,"value":4473},"} VkOpacityMicromapFormatKHR;\n",{"type":1936,"tag":2181,"props":4475,"children":4476},{},[4477,4488],{"type":1936,"tag":2185,"props":4478,"children":4479},{},[4480,4486],{"type":1936,"tag":1997,"props":4481,"children":4483},{"className":4482},[],[4484],{"type":1941,"value":4485},"VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR",{"type":1941,"value":4487}," specifies the encoding is 1-bit per sub-triangle specifying\nit as either fully-opaque or fully-transparent",{"type":1936,"tag":2185,"props":4489,"children":4490},{},[4491,4497],{"type":1936,"tag":1997,"props":4492,"children":4494},{"className":4493},[],[4495],{"type":1941,"value":4496},"VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR",{"type":1941,"value":4498}," specifies the encoding is 2-bits per sub-triangle, which\nadditionally allows for unknown opaque and unknown transparency",{"type":1936,"tag":2020,"props":4500,"children":4502},{"id":4501},"_build_acceleration_structure",[4503],{"type":1941,"value":4504},"Build Acceleration Structure",{"type":1936,"tag":1937,"props":4506,"children":4507},{},[4508,4510,4515,4517,4524],{"type":1941,"value":4509},"In order to use the micromap in a traversal, it needs to be built inside an acceleration structure by\nproviding the following to the ",{"type":1936,"tag":1997,"props":4511,"children":4513},{"className":4512},[],[4514],{"type":1941,"value":3861},{"type":1941,"value":4516}," of\n",{"type":1936,"tag":1948,"props":4518,"children":4521},{"href":4519,"rel":4520},"https://docs.vulkan.org/refpages/latest/refpages/source/VkAccelerationStructureGeometryTrianglesDataKHR.html",[1952],[4522],{"type":1941,"value":4523},"VkAccelerationStructureGeometryTrianglesDataKHR",{"type":1941,"value":4525},":",{"type":1936,"tag":2032,"props":4527,"children":4529},{"className":2034,"code":4528,"language":2036,"meta":2037,"style":2037},"typedef struct VkAccelerationStructureTrianglesOpacityMicromapKHR {\n VkStructureType sType;\n void* pNext;\n VkIndexType indexType;\n VkDeviceAddress indexBuffer;\n VkDeviceSize indexStride;\n uint32_t baseTriangle;\n VkAccelerationStructureKHR micromap;\n} VkAccelerationStructureTrianglesOpacityMicromapKHR;\n",[4530],{"type":1936,"tag":1997,"props":4531,"children":4532},{"__ignoreMap":2037},[4533,4549,4556,4568,4576,4584,4592,4604,4612],{"type":1936,"tag":2043,"props":4534,"children":4535},{"class":2045,"line":10},[4536,4540,4544],{"type":1936,"tag":2043,"props":4537,"children":4538},{"style":2055},[4539],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":4541,"children":4542},{"style":2055},[4543],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":4545,"children":4546},{"style":2049},[4547],{"type":1941,"value":4548}," VkAccelerationStructureTrianglesOpacityMicromapKHR {\n",{"type":1936,"tag":2043,"props":4550,"children":4551},{"class":2045,"line":14},[4552],{"type":1936,"tag":2043,"props":4553,"children":4554},{"style":2049},[4555],{"type":1941,"value":3908},{"type":1936,"tag":2043,"props":4557,"children":4558},{"class":2045,"line":18},[4559,4564],{"type":1936,"tag":2043,"props":4560,"children":4561},{"style":2055},[4562],{"type":1941,"value":4563}," void*",{"type":1936,"tag":2043,"props":4565,"children":4566},{"style":2049},[4567],{"type":1941,"value":3779},{"type":1936,"tag":2043,"props":4569,"children":4570},{"class":2045,"line":22},[4571],{"type":1936,"tag":2043,"props":4572,"children":4573},{"style":2049},[4574],{"type":1941,"value":4575}," VkIndexType indexType;\n",{"type":1936,"tag":2043,"props":4577,"children":4578},{"class":2045,"line":26},[4579],{"type":1936,"tag":2043,"props":4580,"children":4581},{"style":2049},[4582],{"type":1941,"value":4583}," VkDeviceAddress indexBuffer;\n",{"type":1936,"tag":2043,"props":4585,"children":4586},{"class":2045,"line":30},[4587],{"type":1936,"tag":2043,"props":4588,"children":4589},{"style":2049},[4590],{"type":1941,"value":4591}," VkDeviceSize indexStride;\n",{"type":1936,"tag":2043,"props":4593,"children":4594},{"class":2045,"line":34},[4595,4599],{"type":1936,"tag":2043,"props":4596,"children":4597},{"style":2055},[4598],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":4600,"children":4601},{"style":2049},[4602],{"type":1941,"value":4603}," baseTriangle;\n",{"type":1936,"tag":2043,"props":4605,"children":4606},{"class":2045,"line":38},[4607],{"type":1936,"tag":2043,"props":4608,"children":4609},{"style":2049},[4610],{"type":1941,"value":4611}," VkAccelerationStructureKHR micromap;\n",{"type":1936,"tag":2043,"props":4613,"children":4614},{"class":2045,"line":42},[4615],{"type":1936,"tag":2043,"props":4616,"children":4617},{"style":2049},[4618],{"type":1941,"value":4619},"} VkAccelerationStructureTrianglesOpacityMicromapKHR;\n",{"type":1936,"tag":2181,"props":4621,"children":4622},{},[4623,4640,4656,4667,4678],{"type":1936,"tag":2185,"props":4624,"children":4625},{},[4626,4632,4634],{"type":1936,"tag":1997,"props":4627,"children":4629},{"className":4628},[],[4630],{"type":1941,"value":4631},"indexType",{"type":1941,"value":4633}," is the format of the indices in the ",{"type":1936,"tag":1997,"props":4635,"children":4637},{"className":4636},[],[4638],{"type":1941,"value":4639},"indexBuffer",{"type":1936,"tag":2185,"props":4641,"children":4642},{},[4643,4648,4650],{"type":1936,"tag":1997,"props":4644,"children":4646},{"className":4645},[],[4647],{"type":1941,"value":4639},{"type":1941,"value":4649}," is the address of the triangle indices, and is accessed as\n",{"type":1936,"tag":1997,"props":4651,"children":4653},{"className":4652},[],[4654],{"type":1941,"value":4655},"VK_ACCESS_TRANSFER_READ_BIT",{"type":1936,"tag":2185,"props":4657,"children":4658},{},[4659,4665],{"type":1936,"tag":1997,"props":4660,"children":4662},{"className":4661},[],[4663],{"type":1941,"value":4664},"indexStride",{"type":1941,"value":4666}," is the stride in bytes between indices",{"type":1936,"tag":2185,"props":4668,"children":4669},{},[4670,4676],{"type":1936,"tag":1997,"props":4671,"children":4673},{"className":4672},[],[4674],{"type":1941,"value":4675},"baseTriangle",{"type":1941,"value":4677}," is the triangle index offset in the micromap to use for this build",{"type":1936,"tag":2185,"props":4679,"children":4680},{},[4681,4686,4688],{"type":1936,"tag":1997,"props":4682,"children":4684},{"className":4683},[],[4685],{"type":1941,"value":184},{"type":1941,"value":4687}," is the micromap used for this acceleration structure build, and is accessed as\n",{"type":1936,"tag":1997,"props":4689,"children":4691},{"className":4690},[],[4692],{"type":1941,"value":4693},"VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR",{"type":1936,"tag":1937,"props":4695,"children":4696},{},[4697,4699,4705],{"type":1941,"value":4698},"Buffer accesses must be synchronized with\n",{"type":1936,"tag":1997,"props":4700,"children":4702},{"className":4701},[],[4703],{"type":1941,"value":4704},"VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR",{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":4707,"children":4708},{},[4709,4711,4716,4718,4723,4725,4731,4733,4738],{"type":1941,"value":4710},"For each triangle in the geometry, a triangle in the micromap is fetched\nat index\nreinterpret_cast\u003CindexType>(",{"type":1936,"tag":1997,"props":4712,"children":4714},{"className":4713},[],[4715],{"type":1941,"value":4639},{"type":1941,"value":4717}," + ",{"type":1936,"tag":1997,"props":4719,"children":4721},{"className":4720},[],[4722],{"type":1941,"value":4664},{"type":1941,"value":4724}," * ",{"type":1936,"tag":1997,"props":4726,"children":4728},{"className":4727},[],[4729],{"type":1941,"value":4730},"geomTriangleIndex",{"type":1941,"value":4732},") + ",{"type":1936,"tag":1997,"props":4734,"children":4736},{"className":4735},[],[4737],{"type":1941,"value":4675},{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":4740,"children":4741},{},[4742,4744,4750],{"type":1941,"value":4743},"If the index fetched from ",{"type":1936,"tag":1997,"props":4745,"children":4747},{"className":4746},[],[4748],{"type":1941,"value":4749},"indexbuffer",{"type":1941,"value":4751}," is negative then it is a special value and no fetch from micromap happens,\ninstead it represents a special index:",{"type":1936,"tag":2032,"props":4753,"children":4755},{"className":2034,"code":4754,"language":2036,"meta":2037,"style":2037},"typedef enum VkOpacityMicromapSpecialIndexKHR {\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR = -1,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR = -2,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR = -3,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR = -4,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV = -5,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR,\n VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_KHR = 0x7FFFFFFF\n} VkOpacityMicromapSpecialIndexKHR;\n",[4756],{"type":1936,"tag":1997,"props":4757,"children":4758},{"__ignoreMap":2037},[4759,4775,4801,4826,4851,4876,4901,4918,4935,4952,4969,4989],{"type":1936,"tag":2043,"props":4760,"children":4761},{"class":2045,"line":10},[4762,4766,4770],{"type":1936,"tag":2043,"props":4763,"children":4764},{"style":2055},[4765],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":4767,"children":4768},{"style":2055},[4769],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":4771,"children":4772},{"style":2049},[4773],{"type":1941,"value":4774}," VkOpacityMicromapSpecialIndexKHR {\n",{"type":1936,"tag":2043,"props":4776,"children":4777},{"class":2045,"line":14},[4778,4783,4787,4792,4797],{"type":1936,"tag":2043,"props":4779,"children":4780},{"style":2049},[4781],{"type":1941,"value":4782}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR ",{"type":1936,"tag":2043,"props":4784,"children":4785},{"style":2055},[4786],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4788,"children":4789},{"style":2055},[4790],{"type":1941,"value":4791}," -",{"type":1936,"tag":2043,"props":4793,"children":4794},{"style":2559},[4795],{"type":1941,"value":4796},"1",{"type":1936,"tag":2043,"props":4798,"children":4799},{"style":2049},[4800],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4802,"children":4803},{"class":2045,"line":18},[4804,4809,4813,4817,4822],{"type":1936,"tag":2043,"props":4805,"children":4806},{"style":2049},[4807],{"type":1941,"value":4808}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR ",{"type":1936,"tag":2043,"props":4810,"children":4811},{"style":2055},[4812],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4814,"children":4815},{"style":2055},[4816],{"type":1941,"value":4791},{"type":1936,"tag":2043,"props":4818,"children":4819},{"style":2559},[4820],{"type":1941,"value":4821},"2",{"type":1936,"tag":2043,"props":4823,"children":4824},{"style":2049},[4825],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4827,"children":4828},{"class":2045,"line":22},[4829,4834,4838,4842,4847],{"type":1936,"tag":2043,"props":4830,"children":4831},{"style":2049},[4832],{"type":1941,"value":4833}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR ",{"type":1936,"tag":2043,"props":4835,"children":4836},{"style":2055},[4837],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4839,"children":4840},{"style":2055},[4841],{"type":1941,"value":4791},{"type":1936,"tag":2043,"props":4843,"children":4844},{"style":2559},[4845],{"type":1941,"value":4846},"3",{"type":1936,"tag":2043,"props":4848,"children":4849},{"style":2049},[4850],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4852,"children":4853},{"class":2045,"line":26},[4854,4859,4863,4867,4872],{"type":1936,"tag":2043,"props":4855,"children":4856},{"style":2049},[4857],{"type":1941,"value":4858}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR ",{"type":1936,"tag":2043,"props":4860,"children":4861},{"style":2055},[4862],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4864,"children":4865},{"style":2055},[4866],{"type":1941,"value":4791},{"type":1936,"tag":2043,"props":4868,"children":4869},{"style":2559},[4870],{"type":1941,"value":4871},"4",{"type":1936,"tag":2043,"props":4873,"children":4874},{"style":2049},[4875],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4877,"children":4878},{"class":2045,"line":30},[4879,4884,4888,4892,4897],{"type":1936,"tag":2043,"props":4880,"children":4881},{"style":2049},[4882],{"type":1941,"value":4883}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV ",{"type":1936,"tag":2043,"props":4885,"children":4886},{"style":2055},[4887],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4889,"children":4890},{"style":2055},[4891],{"type":1941,"value":4791},{"type":1936,"tag":2043,"props":4893,"children":4894},{"style":2559},[4895],{"type":1941,"value":4896},"5",{"type":1936,"tag":2043,"props":4898,"children":4899},{"style":2049},[4900],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":4902,"children":4903},{"class":2045,"line":34},[4904,4909,4913],{"type":1936,"tag":2043,"props":4905,"children":4906},{"style":2049},[4907],{"type":1941,"value":4908}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT ",{"type":1936,"tag":2043,"props":4910,"children":4911},{"style":2055},[4912],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4914,"children":4915},{"style":2049},[4916],{"type":1941,"value":4917}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR,\n",{"type":1936,"tag":2043,"props":4919,"children":4920},{"class":2045,"line":38},[4921,4926,4930],{"type":1936,"tag":2043,"props":4922,"children":4923},{"style":2049},[4924],{"type":1941,"value":4925}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT ",{"type":1936,"tag":2043,"props":4927,"children":4928},{"style":2055},[4929],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4931,"children":4932},{"style":2049},[4933],{"type":1941,"value":4934}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR,\n",{"type":1936,"tag":2043,"props":4936,"children":4937},{"class":2045,"line":42},[4938,4943,4947],{"type":1936,"tag":2043,"props":4939,"children":4940},{"style":2049},[4941],{"type":1941,"value":4942}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT ",{"type":1936,"tag":2043,"props":4944,"children":4945},{"style":2055},[4946],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4948,"children":4949},{"style":2049},[4950],{"type":1941,"value":4951}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR,\n",{"type":1936,"tag":2043,"props":4953,"children":4954},{"class":2045,"line":46},[4955,4960,4964],{"type":1936,"tag":2043,"props":4956,"children":4957},{"style":2049},[4958],{"type":1941,"value":4959}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT ",{"type":1936,"tag":2043,"props":4961,"children":4962},{"style":2055},[4963],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4965,"children":4966},{"style":2049},[4967],{"type":1941,"value":4968}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR,\n",{"type":1936,"tag":2043,"props":4970,"children":4971},{"class":2045,"line":50},[4972,4977,4981,4985],{"type":1936,"tag":2043,"props":4973,"children":4974},{"style":2049},[4975],{"type":1941,"value":4976}," VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_KHR ",{"type":1936,"tag":2043,"props":4978,"children":4979},{"style":2055},[4980],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":4982,"children":4983},{"style":2055},[4984],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":4986,"children":4987},{"style":2559},[4988],{"type":1941,"value":4465},{"type":1936,"tag":2043,"props":4990,"children":4991},{"class":2045,"line":54},[4992],{"type":1936,"tag":2043,"props":4993,"children":4994},{"style":2049},[4995],{"type":1941,"value":4996},"} VkOpacityMicromapSpecialIndexKHR;\n",{"type":1936,"tag":1937,"props":4998,"children":4999},{},[5000,5002,5008,5009,5015,5016,5022,5023],{"type":1941,"value":5001},"The following flags means that the entire triangle is fully interpreted with that respective\nopacity information instead of querying from the micromap: * ",{"type":1936,"tag":1997,"props":5003,"children":5005},{"className":5004},[],[5006],{"type":1941,"value":5007},"VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR",{"type":1941,"value":4724},{"type":1936,"tag":1997,"props":5010,"children":5012},{"className":5011},[],[5013],{"type":1941,"value":5014},"VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR",{"type":1941,"value":4724},{"type":1936,"tag":1997,"props":5017,"children":5019},{"className":5018},[],[5020],{"type":1941,"value":5021},"VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR",{"type":1941,"value":4724},{"type":1936,"tag":1997,"props":5024,"children":5026},{"className":5025},[],[5027],{"type":1941,"value":5028},"VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR",{"type":1936,"tag":1937,"props":5030,"children":5031},{},[5032,5034,5039,5041,5047],{"type":1941,"value":5033},"If the ",{"type":1936,"tag":1997,"props":5035,"children":5037},{"className":5036},[],[5038],{"type":1941,"value":184},{"type":1941,"value":5040}," provided was ",{"type":1936,"tag":1997,"props":5042,"children":5044},{"className":5043},[],[5045],{"type":1941,"value":5046},"VK_NULL_HANDLE",{"type":1941,"value":5048},", then all indices must be one of the special indices above.",{"type":1936,"tag":1937,"props":5050,"children":5051},{},[5052],{"type":1941,"value":5053},"The following acceleration structure build flags are also provided:",{"type":1936,"tag":2032,"props":5055,"children":5057},{"className":2034,"code":5056,"language":2036,"meta":2037,"style":2037},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_KHR = 0x00000040\nVK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_KHR = 0x00000080\n",[5058],{"type":1936,"tag":1997,"props":5059,"children":5060},{"__ignoreMap":2037},[5061,5082],{"type":1936,"tag":2043,"props":5062,"children":5063},{"class":2045,"line":10},[5064,5069,5073,5077],{"type":1936,"tag":2043,"props":5065,"children":5066},{"style":2049},[5067],{"type":1941,"value":5068},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_KHR ",{"type":1936,"tag":2043,"props":5070,"children":5071},{"style":2055},[5072],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":5074,"children":5075},{"style":2055},[5076],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":5078,"children":5079},{"style":2559},[5080],{"type":1941,"value":5081},"00000040\n",{"type":1936,"tag":2043,"props":5083,"children":5084},{"class":2045,"line":14},[5085,5090,5094,5098],{"type":1936,"tag":2043,"props":5086,"children":5087},{"style":2049},[5088],{"type":1941,"value":5089},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_KHR ",{"type":1936,"tag":2043,"props":5091,"children":5092},{"style":2055},[5093],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":5095,"children":5096},{"style":2055},[5097],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":5099,"children":5100},{"style":2559},[5101],{"type":1941,"value":5102},"00000080\n",{"type":1936,"tag":2181,"props":5104,"children":5105},{},[5106,5117],{"type":1936,"tag":2185,"props":5107,"children":5108},{},[5109,5115],{"type":1936,"tag":1997,"props":5110,"children":5112},{"className":5111},[],[5113],{"type":1941,"value":5114},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_KHR",{"type":1941,"value":5116}," specifies that the\nmicromaps associated with the acceleration structure can change on update",{"type":1936,"tag":2185,"props":5118,"children":5119},{},[5120,5126,5128,5134],{"type":1936,"tag":1997,"props":5121,"children":5123},{"className":5122},[],[5124],{"type":1941,"value":5125},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_KHR",{"type":1941,"value":5127}," specifies the\nacceleration structure can be referenced by an instance with the\n",{"type":1936,"tag":1997,"props":5129,"children":5131},{"className":5130},[],[5132],{"type":1941,"value":5133},"VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_KHR",{"type":1941,"value":5135}," flag set",{"type":1936,"tag":1937,"props":5137,"children":5138},{},[5139],{"type":1941,"value":5140},"The following geometry instance flags are provided:",{"type":1936,"tag":2032,"props":5142,"children":5144},{"className":2034,"code":5143,"language":2036,"meta":2037,"style":2037},"VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_KHR = 0x00000010\nVK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_KHR = 0x00000020\n",[5145],{"type":1936,"tag":1997,"props":5146,"children":5147},{"__ignoreMap":2037},[5148,5169],{"type":1936,"tag":2043,"props":5149,"children":5150},{"class":2045,"line":10},[5151,5156,5160,5164],{"type":1936,"tag":2043,"props":5152,"children":5153},{"style":2049},[5154],{"type":1941,"value":5155},"VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_KHR ",{"type":1936,"tag":2043,"props":5157,"children":5158},{"style":2055},[5159],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":5161,"children":5162},{"style":2055},[5163],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":5165,"children":5166},{"style":2559},[5167],{"type":1941,"value":5168},"00000010\n",{"type":1936,"tag":2043,"props":5170,"children":5171},{"class":2045,"line":14},[5172,5177,5181,5185],{"type":1936,"tag":2043,"props":5173,"children":5174},{"style":2049},[5175],{"type":1941,"value":5176},"VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_KHR ",{"type":1936,"tag":2043,"props":5178,"children":5179},{"style":2055},[5180],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":5182,"children":5183},{"style":2055},[5184],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":5186,"children":5187},{"style":2559},[5188],{"type":1941,"value":5189},"00000020\n",{"type":1936,"tag":2181,"props":5191,"children":5192},{},[5193,5212],{"type":1936,"tag":2185,"props":5194,"children":5195},{},[5196,5202,5204,5210],{"type":1936,"tag":1997,"props":5197,"children":5199},{"className":5198},[],[5200],{"type":1941,"value":5201},"VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_KHR",{"type":1941,"value":5203}," specifies that the micromaps built\ninto the acceleration structure referenced by this instance operate in ",{"type":1936,"tag":1997,"props":5205,"children":5207},{"className":5206},[],[5208],{"type":1941,"value":5209},"2 State override",{"type":1941,"value":5211}," mode.",{"type":1936,"tag":2185,"props":5213,"children":5214},{},[5215,5220,5222,5228],{"type":1936,"tag":1997,"props":5216,"children":5218},{"className":5217},[],[5219],{"type":1941,"value":5133},{"type":1941,"value":5221}," specifies that the micromaps built\ninto the acceleration structures referenced by this instance are disabled and uses the\ngeometry ",{"type":1936,"tag":1997,"props":5223,"children":5225},{"className":5224},[],[5226],{"type":1941,"value":5227},"VkAccelerationStructureGeometryKHR::flags",{"type":1941,"value":5229}," instead.",{"type":1936,"tag":5231,"props":5232,"children":5234},"h4",{"id":5233},"_determining_opacity_in_traversal",[5235],{"type":1941,"value":5236},"Determining Opacity in Traversal",{"type":1936,"tag":1937,"props":5238,"children":5239},{},[5240],{"type":1941,"value":5241},"The flow of, ray pipeline centric, traversal is referenced by the following diagram:",{"type":1936,"tag":1937,"props":5243,"children":5244},{},[5245],{"type":1936,"tag":5246,"props":5247,"children":5251},"img",{"alt":5248,"src":5249,"title":5250},"ray tracing execution detail","../images/ray_tracing_execution_detail.svg","Traversal",[],{"type":1936,"tag":1937,"props":5253,"children":5254},{},[5255,5257,5263,5265,5270,5272,5278,5280,5286,5288,5293],{"type":1941,"value":5256},"If the candidate was not built with a ",{"type":1936,"tag":1997,"props":5258,"children":5260},{"className":5259},[],[5261],{"type":1941,"value":5262},"VkAccelerationStructureTrianglesOpacityMicromapKHR",{"type":1941,"value":5264},",\nor micromaps were disabled at the instance level with\n",{"type":1936,"tag":1997,"props":5266,"children":5268},{"className":5267},[],[5269],{"type":1941,"value":5133},{"type":1941,"value":5271},", then the\n",{"type":1936,"tag":5273,"props":5274,"children":5275},"em",{},[5276],{"type":1941,"value":5277},"initial opacity information",{"type":1941,"value":5279},"\nis determined by whether or not ",{"type":1936,"tag":1997,"props":5281,"children":5283},{"className":5282},[],[5284],{"type":1941,"value":5285},"VK_GEOMETRY_OPAQUE_BIT_KHR",{"type":1941,"value":5287}," was\nincluded in ",{"type":1936,"tag":1997,"props":5289,"children":5291},{"className":5290},[],[5292],{"type":1941,"value":5227},{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":5295,"children":5296},{},[5297],{"type":1941,"value":5298},"Otherwise, the opacity micromap is used to initially determine this state:",{"type":1936,"tag":2181,"props":5300,"children":5301},{},[5302,5335],{"type":1936,"tag":2185,"props":5303,"children":5304},{},[5305,5307,5312,5314,5319,5321,5327,5329,5334],{"type":1941,"value":5306},"If ",{"type":1936,"tag":1997,"props":5308,"children":5310},{"className":5309},[],[5311],{"type":1941,"value":184},{"type":1941,"value":5313}," is null in ",{"type":1936,"tag":1997,"props":5315,"children":5317},{"className":5316},[],[5318],{"type":1941,"value":5262},{"type":1941,"value":5320}," or\nthe intersection is with a triangle corresponding to a special index in\n",{"type":1936,"tag":1997,"props":5322,"children":5324},{"className":5323},[],[5325],{"type":1941,"value":5326},"VkOpacityMicromapSpecialIndexKHR",{"type":1941,"value":5328},", this is fetched as the ",{"type":1936,"tag":5273,"props":5330,"children":5331},{},[5332],{"type":1941,"value":5333},"initial micromap opacity value",{"type":1941,"value":4139},{"type":1936,"tag":2185,"props":5336,"children":5337},{},[5338,5340,5344],{"type":1941,"value":5339},"Otherwise, the micromap sub-triangle that was intersected is fetched and used as\nthe ",{"type":1936,"tag":5273,"props":5341,"children":5342},{},[5343],{"type":1941,"value":5333},{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":5346,"children":5347},{},[5348,5350,5355],{"type":1941,"value":5349},"In either case, if micromap was built as lossy with\n",{"type":1936,"tag":1997,"props":5351,"children":5353},{"className":5352},[],[5354],{"type":1941,"value":3354},{"type":1941,"value":5356},", then the\nimplementation can additionally substitute any state to any of the UNKNOWN states.",{"type":1936,"tag":1937,"props":5358,"children":5359},{},[5360,5361,5365,5367,5372,5374,5380],{"type":1941,"value":2236},{"type":1936,"tag":5273,"props":5362,"children":5363},{},[5364],{"type":1941,"value":5333},{"type":1941,"value":5366}," is combined with the format of the opacity value,\nand whether or not force2state is selected by adding\n",{"type":1936,"tag":1997,"props":5368,"children":5370},{"className":5369},[],[5371],{"type":1941,"value":5201},{"type":1941,"value":5373}," to geometry instance flags or\n",{"type":1936,"tag":1997,"props":5375,"children":5377},{"className":5376},[],[5378],{"type":1941,"value":5379},"ForceOpacityMicromap2StateEXT",{"type":1941,"value":5381}," to ray flags in the shader,\naccording to the following table:",{"type":1936,"tag":5383,"props":5384,"children":5385},"table",{},[5386,5419],{"type":1936,"tag":5387,"props":5388,"children":5389},"thead",{},[5390],{"type":1936,"tag":5391,"props":5392,"children":5393},"tr",{},[5394,5400,5405,5410,5414],{"type":1936,"tag":5395,"props":5396,"children":5397},"th",{},[5398],{"type":1941,"value":5399},"4 State value",{"type":1936,"tag":5395,"props":5401,"children":5402},{},[5403],{"type":1941,"value":5404},"2 State value",{"type":1936,"tag":5395,"props":5406,"children":5407},{},[5408],{"type":1941,"value":5409},"Special index value",{"type":1936,"tag":5395,"props":5411,"children":5412},{},[5413],{"type":1941,"value":5209},{"type":1936,"tag":5395,"props":5415,"children":5416},{},[5417],{"type":1941,"value":5418},"Result",{"type":1936,"tag":5420,"props":5421,"children":5422},"tbody",{},[5423,5453,5481,5509,5536,5562,5589,5615],{"type":1936,"tag":5391,"props":5424,"children":5425},{},[5426,5431,5435,5443,5448],{"type":1936,"tag":5427,"props":5428,"children":5429},"td",{},[5430],{"type":1941,"value":2466},{"type":1936,"tag":5427,"props":5432,"children":5433},{},[5434],{"type":1941,"value":2466},{"type":1936,"tag":5427,"props":5436,"children":5437},{},[5438],{"type":1936,"tag":1997,"props":5439,"children":5441},{"className":5440},[],[5442],{"type":1941,"value":5007},{"type":1936,"tag":5427,"props":5444,"children":5445},{},[5446],{"type":1941,"value":5447},"Y",{"type":1936,"tag":5427,"props":5449,"children":5450},{},[5451],{"type":1941,"value":5452},"Ignored",{"type":1936,"tag":5391,"props":5454,"children":5455},{},[5456,5460,5464,5472,5477],{"type":1936,"tag":5427,"props":5457,"children":5458},{},[5459],{"type":1941,"value":2466},{"type":1936,"tag":5427,"props":5461,"children":5462},{},[5463],{"type":1941,"value":2466},{"type":1936,"tag":5427,"props":5465,"children":5466},{},[5467],{"type":1936,"tag":1997,"props":5468,"children":5470},{"className":5469},[],[5471],{"type":1941,"value":5007},{"type":1936,"tag":5427,"props":5473,"children":5474},{},[5475],{"type":1941,"value":5476},"N",{"type":1936,"tag":5427,"props":5478,"children":5479},{},[5480],{"type":1941,"value":5452},{"type":1936,"tag":5391,"props":5482,"children":5483},{},[5484,5488,5492,5500,5504],{"type":1936,"tag":5427,"props":5485,"children":5486},{},[5487],{"type":1941,"value":4796},{"type":1936,"tag":5427,"props":5489,"children":5490},{},[5491],{"type":1941,"value":4796},{"type":1936,"tag":5427,"props":5493,"children":5494},{},[5495],{"type":1936,"tag":1997,"props":5496,"children":5498},{"className":5497},[],[5499],{"type":1941,"value":5014},{"type":1936,"tag":5427,"props":5501,"children":5502},{},[5503],{"type":1941,"value":5447},{"type":1936,"tag":5427,"props":5505,"children":5506},{},[5507],{"type":1941,"value":5508},"Opaque",{"type":1936,"tag":5391,"props":5510,"children":5511},{},[5512,5516,5520,5528,5532],{"type":1936,"tag":5427,"props":5513,"children":5514},{},[5515],{"type":1941,"value":4796},{"type":1936,"tag":5427,"props":5517,"children":5518},{},[5519],{"type":1941,"value":4796},{"type":1936,"tag":5427,"props":5521,"children":5522},{},[5523],{"type":1936,"tag":1997,"props":5524,"children":5526},{"className":5525},[],[5527],{"type":1941,"value":5014},{"type":1936,"tag":5427,"props":5529,"children":5530},{},[5531],{"type":1941,"value":5476},{"type":1936,"tag":5427,"props":5533,"children":5534},{},[5535],{"type":1941,"value":5508},{"type":1936,"tag":5391,"props":5537,"children":5538},{},[5539,5543,5546,5554,5558],{"type":1936,"tag":5427,"props":5540,"children":5541},{},[5542],{"type":1941,"value":4821},{"type":1936,"tag":5427,"props":5544,"children":5545},{},[],{"type":1936,"tag":5427,"props":5547,"children":5548},{},[5549],{"type":1936,"tag":1997,"props":5550,"children":5552},{"className":5551},[],[5553],{"type":1941,"value":5021},{"type":1936,"tag":5427,"props":5555,"children":5556},{},[5557],{"type":1941,"value":5447},{"type":1936,"tag":5427,"props":5559,"children":5560},{},[5561],{"type":1941,"value":5452},{"type":1936,"tag":5391,"props":5563,"children":5564},{},[5565,5569,5572,5580,5584],{"type":1936,"tag":5427,"props":5566,"children":5567},{},[5568],{"type":1941,"value":4821},{"type":1936,"tag":5427,"props":5570,"children":5571},{},[],{"type":1936,"tag":5427,"props":5573,"children":5574},{},[5575],{"type":1936,"tag":1997,"props":5576,"children":5578},{"className":5577},[],[5579],{"type":1941,"value":5021},{"type":1936,"tag":5427,"props":5581,"children":5582},{},[5583],{"type":1941,"value":5476},{"type":1936,"tag":5427,"props":5585,"children":5586},{},[5587],{"type":1941,"value":5588},"Non-opaque",{"type":1936,"tag":5391,"props":5590,"children":5591},{},[5592,5596,5599,5607,5611],{"type":1936,"tag":5427,"props":5593,"children":5594},{},[5595],{"type":1941,"value":4846},{"type":1936,"tag":5427,"props":5597,"children":5598},{},[],{"type":1936,"tag":5427,"props":5600,"children":5601},{},[5602],{"type":1936,"tag":1997,"props":5603,"children":5605},{"className":5604},[],[5606],{"type":1941,"value":5028},{"type":1936,"tag":5427,"props":5608,"children":5609},{},[5610],{"type":1941,"value":5447},{"type":1936,"tag":5427,"props":5612,"children":5613},{},[5614],{"type":1941,"value":5508},{"type":1936,"tag":5391,"props":5616,"children":5617},{},[5618,5622,5625,5633,5637],{"type":1936,"tag":5427,"props":5619,"children":5620},{},[5621],{"type":1941,"value":4846},{"type":1936,"tag":5427,"props":5623,"children":5624},{},[],{"type":1936,"tag":5427,"props":5626,"children":5627},{},[5628],{"type":1936,"tag":1997,"props":5629,"children":5631},{"className":5630},[],[5632],{"type":1941,"value":5028},{"type":1936,"tag":5427,"props":5634,"children":5635},{},[5636],{"type":1941,"value":5476},{"type":1936,"tag":5427,"props":5638,"children":5639},{},[5640],{"type":1941,"value":5588},{"type":1936,"tag":1937,"props":5642,"children":5643},{},[5644,5646,5651,5653,5657],{"type":1941,"value":5645},"If the result from the table above is ",{"type":1936,"tag":1997,"props":5647,"children":5649},{"className":5648},[],[5650],{"type":1941,"value":5452},{"type":1941,"value":5652},", then processing continues by enumerating\nthe next candidate. Otherwise, the result is the ",{"type":1936,"tag":5273,"props":5654,"children":5655},{},[5656],{"type":1941,"value":5277},{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":5659,"children":5660},{},[5661,5663,5668,5670,5676,5678,5684,5685,5691],{"type":1941,"value":5662},"Next the following overrides are applied in order to modify the ",{"type":1936,"tag":5273,"props":5664,"children":5665},{},[5666],{"type":1941,"value":5667},"intial opacity information",{"type":1941,"value":5669},": * ",{"type":1936,"tag":1997,"props":5671,"children":5673},{"className":5672},[],[5674],{"type":1941,"value":5675},"VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR",{"type":1941,"value":5677}," forces opacity to opaque * ",{"type":1936,"tag":1997,"props":5679,"children":5681},{"className":5680},[],[5682],{"type":1941,"value":5683},"OpaqueKHR",{"type":1941,"value":2332},{"type":1936,"tag":1997,"props":5686,"children":5688},{"className":5687},[],[5689],{"type":1941,"value":5690},"NoOpaqueKHR",{"type":1941,"value":5692}," ray flags are applied in the shader to force opacity respectively, these are mutually exclusive",{"type":1936,"tag":1937,"props":5694,"children":5695},{},[5696,5698,5704,5705,5711],{"type":1941,"value":5697},"Then the culling ray flags, ",{"type":1936,"tag":1997,"props":5699,"children":5701},{"className":5700},[],[5702],{"type":1941,"value":5703},"CullOpaqueKHR",{"type":1941,"value":2259},{"type":1936,"tag":1997,"props":5706,"children":5708},{"className":5707},[],[5709],{"type":1941,"value":5710},"CullNoOpaqueKHR",{"type":1941,"value":5712}," are applied in the shader\nand if the respective opacity information matches, will proceed execution with the next\ncandidate.",{"type":1936,"tag":1937,"props":5714,"children":5715},{},[5716],{"type":1941,"value":5717},"Otherwise, if the intersection candidate is determined to hit non-opaque geometry, processing\nwill continue with the Any-Hit shader to determine to confirm the intersection.",{"type":1936,"tag":1937,"props":5719,"children":5720},{},[5721],{"type":1941,"value":5722},"When the intersection is confirmed or the geometry was determined to be opaque, then the\nclosest hit is updated and processing continues as indicated in the diagram.",{"type":1936,"tag":1937,"props":5724,"children":5725},{},[5726],{"type":1941,"value":5727},"In order to use micromaps with ray pipelines, the following flag must be provided:",{"type":1936,"tag":2032,"props":5729,"children":5731},{"className":2034,"code":5730,"language":2036,"meta":2037,"style":2037},"static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR = 0x01000000ULL;\n",[5732],{"type":1936,"tag":1997,"props":5733,"children":5734},{"__ignoreMap":2037},[5735],{"type":1936,"tag":2043,"props":5736,"children":5737},{"class":2045,"line":10},[5738,5743,5748,5753,5757,5761,5766,5771],{"type":1936,"tag":2043,"props":5739,"children":5740},{"style":2055},[5741],{"type":1941,"value":5742},"static",{"type":1936,"tag":2043,"props":5744,"children":5745},{"style":2055},[5746],{"type":1941,"value":5747}," const",{"type":1936,"tag":2043,"props":5749,"children":5750},{"style":2049},[5751],{"type":1941,"value":5752}," VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR ",{"type":1936,"tag":2043,"props":5754,"children":5755},{"style":2055},[5756],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":5758,"children":5759},{"style":2055},[5760],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":5762,"children":5763},{"style":2559},[5764],{"type":1941,"value":5765},"01000000",{"type":1936,"tag":2043,"props":5767,"children":5768},{"style":2055},[5769],{"type":1941,"value":5770},"ULL",{"type":1936,"tag":2043,"props":5772,"children":5773},{"style":2049},[5774],{"type":1941,"value":2567},{"type":1936,"tag":1937,"props":5776,"children":5777},{},[5778,5780,5786],{"type":1941,"value":5779},"Or the equivalent ",{"type":1936,"tag":1997,"props":5781,"children":5783},{"className":5782},[],[5784],{"type":1941,"value":5785},"VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR",{"type":1941,"value":5787}," flag. This flag\nonly affects accessing acceleration structures with micromaps as described above and has no\neffect on ray query accesses.",{"type":1936,"tag":1937,"props":5789,"children":5790},{},[5791,5793,5799],{"type":1941,"value":5792},"Ray query operations happen similarly and mostly happens within ",{"type":1936,"tag":1997,"props":5794,"children":5796},{"className":5795},[],[5797],{"type":1941,"value":5798},"OpRayQueryProceedKHR",{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":5801,"children":5802},{},[5803,5805,5810,5812,5818,5820,5825,5826,5832],{"type":1941,"value":5804},"Intersection candidates with AABB geometry cause ",{"type":1936,"tag":1997,"props":5806,"children":5808},{"className":5807},[],[5809],{"type":1941,"value":5798},{"type":1941,"value":5811}," to\nreturn ",{"type":1936,"tag":1997,"props":5813,"children":5815},{"className":5814},[],[5816],{"type":1941,"value":5817},"true",{"type":1941,"value":5819},", incomplete traversal, in order for the shader to\nconfirm the hit.\nTo query the opacity that was determined by ",{"type":1936,"tag":1997,"props":5821,"children":5823},{"className":5822},[],[5824],{"type":1941,"value":5798},{"type":1941,"value":2092},{"type":1936,"tag":1997,"props":5827,"children":5829},{"className":5828},[],[5830],{"type":1941,"value":5831},"OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",{"type":1941,"value":5833}," can be used.",{"type":1936,"tag":1937,"props":5835,"children":5836},{},[5837,5839,5844,5846,5851,5853,5858],{"type":1941,"value":5838},"Intersection candidates with triangle geometry that cause ",{"type":1936,"tag":1997,"props":5840,"children":5842},{"className":5841},[],[5843],{"type":1941,"value":5798},{"type":1941,"value":5845},"\nto return ",{"type":1936,"tag":1997,"props":5847,"children":5849},{"className":5848},[],[5850],{"type":1941,"value":5817},{"type":1941,"value":5852}," have been determined to be non-opaque.\nIntersection candidates with opaque triangle geometry continues\nexecution without causing ",{"type":1936,"tag":1997,"props":5854,"children":5856},{"className":5855},[],[5857],{"type":1941,"value":5798},{"type":1941,"value":5859}," to return.",{"type":1936,"tag":2020,"props":5861,"children":5863},{"id":5862},"_copying_micromaps",[5864],{"type":1941,"value":5865},"Copying Micromaps",{"type":1936,"tag":5231,"props":5867,"children":5869},{"id":5868},"_cloning_micromaps",[5870],{"type":1941,"value":5871},"Cloning Micromaps",{"type":1936,"tag":1937,"props":5873,"children":5874},{},[5875,5877,5883,5885,5895],{"type":1941,"value":5876},"Micromaps can be copied with ",{"type":1936,"tag":1997,"props":5878,"children":5880},{"className":5879},[],[5881],{"type":1941,"value":5882},"vkCmdCopyAccelerationStructureKHR",{"type":1941,"value":5884},".\n",{"type":1936,"tag":1948,"props":5886,"children":5888},{"href":2205,"rel":5887},[1952],[5889],{"type":1936,"tag":1997,"props":5890,"children":5892},{"className":5891},[],[5893],{"type":1941,"value":5894},"vkCopyAccelerationStructureKHR",{"type":1941,"value":5896},"\ncannot be used to copy micromaps.",{"type":1936,"tag":2032,"props":5898,"children":5900},{"className":2034,"code":5899,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureKHR(\n VkCommandBuffer commandBuffer,\n const VkCopyAccelerationStructureInfoKHR* pInfo);\n\ntypedef struct VkCopyAccelerationStructureInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkAccelerationStructureKHR src;\n VkAccelerationStructureKHR dst;\n VkCopyAccelerationStructureModeKHR mode;\n} VkCopyAccelerationStructureInfoKHR;\n",[5901],{"type":1936,"tag":1997,"props":5902,"children":5903},{"__ignoreMap":2037},[5904,5927,5943,5968,5975,5991,5999,6015,6023,6031,6039],{"type":1936,"tag":2043,"props":5905,"children":5906},{"class":2045,"line":10},[5907,5911,5915,5919,5923],{"type":1936,"tag":2043,"props":5908,"children":5909},{"style":2049},[5910],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":5912,"children":5913},{"style":2055},[5914],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":5916,"children":5917},{"style":2049},[5918],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":5920,"children":5921},{"style":2066},[5922],{"type":1941,"value":5882},{"type":1936,"tag":2043,"props":5924,"children":5925},{"style":2049},[5926],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":5928,"children":5929},{"class":2045,"line":14},[5930,5935,5939],{"type":1936,"tag":2043,"props":5931,"children":5932},{"style":2049},[5933],{"type":1941,"value":5934}," VkCommandBuffer ",{"type":1936,"tag":2043,"props":5936,"children":5937},{"style":2085},[5938],{"type":1941,"value":3038},{"type":1936,"tag":2043,"props":5940,"children":5941},{"style":2049},[5942],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":5944,"children":5945},{"class":2045,"line":18},[5946,5950,5955,5959,5964],{"type":1936,"tag":2043,"props":5947,"children":5948},{"style":2055},[5949],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":5951,"children":5952},{"style":2049},[5953],{"type":1941,"value":5954}," VkCopyAccelerationStructureInfoKHR",{"type":1936,"tag":2043,"props":5956,"children":5957},{"style":2055},[5958],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":5960,"children":5961},{"style":2085},[5962],{"type":1941,"value":5963}," pInfo",{"type":1936,"tag":2043,"props":5965,"children":5966},{"style":2049},[5967],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":5969,"children":5970},{"class":2045,"line":22},[5971],{"type":1936,"tag":2043,"props":5972,"children":5973},{"emptyLinePlaceholder":244},[5974],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":5976,"children":5977},{"class":2045,"line":26},[5978,5982,5986],{"type":1936,"tag":2043,"props":5979,"children":5980},{"style":2055},[5981],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":5983,"children":5984},{"style":2055},[5985],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":5987,"children":5988},{"style":2049},[5989],{"type":1941,"value":5990}," VkCopyAccelerationStructureInfoKHR {\n",{"type":1936,"tag":2043,"props":5992,"children":5993},{"class":2045,"line":30},[5994],{"type":1936,"tag":2043,"props":5995,"children":5996},{"style":2049},[5997],{"type":1941,"value":5998}," VkStructureType sType;\n",{"type":1936,"tag":2043,"props":6000,"children":6001},{"class":2045,"line":34},[6002,6006,6010],{"type":1936,"tag":2043,"props":6003,"children":6004},{"style":2055},[6005],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6007,"children":6008},{"style":2055},[6009],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":6011,"children":6012},{"style":2049},[6013],{"type":1941,"value":6014}," pNext;\n",{"type":1936,"tag":2043,"props":6016,"children":6017},{"class":2045,"line":38},[6018],{"type":1936,"tag":2043,"props":6019,"children":6020},{"style":2049},[6021],{"type":1941,"value":6022}," VkAccelerationStructureKHR src;\n",{"type":1936,"tag":2043,"props":6024,"children":6025},{"class":2045,"line":42},[6026],{"type":1936,"tag":2043,"props":6027,"children":6028},{"style":2049},[6029],{"type":1941,"value":6030}," VkAccelerationStructureKHR dst;\n",{"type":1936,"tag":2043,"props":6032,"children":6033},{"class":2045,"line":46},[6034],{"type":1936,"tag":2043,"props":6035,"children":6036},{"style":2049},[6037],{"type":1941,"value":6038}," VkCopyAccelerationStructureModeKHR mode;\n",{"type":1936,"tag":2043,"props":6040,"children":6041},{"class":2045,"line":50},[6042],{"type":1936,"tag":2043,"props":6043,"children":6044},{"style":2049},[6045],{"type":1941,"value":6046},"} VkCopyAccelerationStructureInfoKHR;\n",{"type":1936,"tag":1937,"props":6048,"children":6049},{},[6050,6052,6058,6060,6066],{"type":1941,"value":6051},"The micromap is copied from ",{"type":1936,"tag":1997,"props":6053,"children":6055},{"className":6054},[],[6056],{"type":1941,"value":6057},"src",{"type":1941,"value":6059}," to ",{"type":1936,"tag":1997,"props":6061,"children":6063},{"className":6062},[],[6064],{"type":1941,"value":6065},"dst",{"type":1941,"value":6067}," on the device.",{"type":1936,"tag":1937,"props":6069,"children":6070},{},[6071,6073,6078,6079,6084,6086,6091,6093,6099],{"type":1941,"value":6072},"Their access by this command are through the ",{"type":1936,"tag":1997,"props":6074,"children":6076},{"className":6075},[],[6077],{"type":1941,"value":4693},{"type":1941,"value":2982},{"type":1936,"tag":1997,"props":6080,"children":6082},{"className":6081},[],[6083],{"type":1941,"value":3404},{"type":1941,"value":6085}," respectively and must be synchronized with\npipeline stage ",{"type":1936,"tag":1997,"props":6087,"children":6089},{"className":6088},[],[6090],{"type":1941,"value":4704},{"type":1941,"value":6092},"\nor ",{"type":1936,"tag":1997,"props":6094,"children":6096},{"className":6095},[],[6097],{"type":1941,"value":6098},"VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR",{"type":1941,"value":6100}," as appropriate.",{"type":1936,"tag":2032,"props":6102,"children":6104},{"className":2034,"code":6103,"language":2036,"meta":2037,"style":2037},"typedef enum VkCopyAccelerationStructureModeKHR {\n VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0,\n VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1,\n VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2,\n VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3,\n VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,\n VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,\n} VkCopyAccelerationStructureModeKHR;\n",[6105],{"type":1936,"tag":1997,"props":6106,"children":6107},{"__ignoreMap":2037},[6108,6124,6144,6164,6184,6205,6222,6239],{"type":1936,"tag":2043,"props":6109,"children":6110},{"class":2045,"line":10},[6111,6115,6119],{"type":1936,"tag":2043,"props":6112,"children":6113},{"style":2055},[6114],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":6116,"children":6117},{"style":2055},[6118],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":6120,"children":6121},{"style":2049},[6122],{"type":1941,"value":6123}," VkCopyAccelerationStructureModeKHR {\n",{"type":1936,"tag":2043,"props":6125,"children":6126},{"class":2045,"line":14},[6127,6132,6136,6140],{"type":1936,"tag":2043,"props":6128,"children":6129},{"style":2049},[6130],{"type":1941,"value":6131}," VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR ",{"type":1936,"tag":2043,"props":6133,"children":6134},{"style":2055},[6135],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6137,"children":6138},{"style":2559},[6139],{"type":1941,"value":2811},{"type":1936,"tag":2043,"props":6141,"children":6142},{"style":2049},[6143],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6145,"children":6146},{"class":2045,"line":18},[6147,6152,6156,6160],{"type":1936,"tag":2043,"props":6148,"children":6149},{"style":2049},[6150],{"type":1941,"value":6151}," VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR ",{"type":1936,"tag":2043,"props":6153,"children":6154},{"style":2055},[6155],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6157,"children":6158},{"style":2559},[6159],{"type":1941,"value":2832},{"type":1936,"tag":2043,"props":6161,"children":6162},{"style":2049},[6163],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6165,"children":6166},{"class":2045,"line":22},[6167,6172,6176,6180],{"type":1936,"tag":2043,"props":6168,"children":6169},{"style":2049},[6170],{"type":1941,"value":6171}," VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR ",{"type":1936,"tag":2043,"props":6173,"children":6174},{"style":2055},[6175],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6177,"children":6178},{"style":2559},[6179],{"type":1941,"value":2853},{"type":1936,"tag":2043,"props":6181,"children":6182},{"style":2049},[6183],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6185,"children":6186},{"class":2045,"line":26},[6187,6192,6196,6201],{"type":1936,"tag":2043,"props":6188,"children":6189},{"style":2049},[6190],{"type":1941,"value":6191}," VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR ",{"type":1936,"tag":2043,"props":6193,"children":6194},{"style":2055},[6195],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6197,"children":6198},{"style":2559},[6199],{"type":1941,"value":6200}," 3",{"type":1936,"tag":2043,"props":6202,"children":6203},{"style":2049},[6204],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6206,"children":6207},{"class":2045,"line":30},[6208,6213,6217],{"type":1936,"tag":2043,"props":6209,"children":6210},{"style":2049},[6211],{"type":1941,"value":6212}," VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV ",{"type":1936,"tag":2043,"props":6214,"children":6215},{"style":2055},[6216],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6218,"children":6219},{"style":2049},[6220],{"type":1941,"value":6221}," VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,\n",{"type":1936,"tag":2043,"props":6223,"children":6224},{"class":2045,"line":34},[6225,6230,6234],{"type":1936,"tag":2043,"props":6226,"children":6227},{"style":2049},[6228],{"type":1941,"value":6229}," VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV ",{"type":1936,"tag":2043,"props":6231,"children":6232},{"style":2055},[6233],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6235,"children":6236},{"style":2049},[6237],{"type":1941,"value":6238}," VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,\n",{"type":1936,"tag":2043,"props":6240,"children":6241},{"class":2045,"line":38},[6242],{"type":1936,"tag":2043,"props":6243,"children":6244},{"style":2049},[6245],{"type":1941,"value":6246},"} VkCopyAccelerationStructureModeKHR;\n",{"type":1936,"tag":1937,"props":6248,"children":6249},{},[6250,6252,6258],{"type":1941,"value":6251},"An identical copy can be copied with mode equal to\n",{"type":1936,"tag":1997,"props":6253,"children":6255},{"className":6254},[],[6256],{"type":1941,"value":6257},"VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR",{"type":1941,"value":6259},". The parameters used to create both\nmicromaps must be identical.",{"type":1936,"tag":1937,"props":6261,"children":6262},{},[6263,6265,6270,6272,6277,6279,6286,6288,6294],{"type":1941,"value":6264},"The size needed for the cloned ",{"type":1936,"tag":1997,"props":6266,"children":6268},{"className":6267},[],[6269],{"type":1941,"value":6065},{"type":1941,"value":6271}," micromap can be queried from the ",{"type":1936,"tag":1997,"props":6273,"children":6275},{"className":6274},[],[6276],{"type":1941,"value":6057},{"type":1941,"value":6278},"\nmicromap with\n",{"type":1936,"tag":1948,"props":6280,"children":6283},{"href":6281,"rel":6282},"https://docs.vulkan.org/refpages/latest/refpages/source/vkCmdWriteAccelerationStructuresPropertiesKHR.html",[1952],[6284],{"type":1941,"value":6285},"vkCmdWriteAccelerationStructuresPropertiesKHR",{"type":1941,"value":6287},"\nusing query type ",{"type":1936,"tag":1997,"props":6289,"children":6291},{"className":6290},[],[6292],{"type":1941,"value":6293},"VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR",{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":6296,"children":6297},{},[6298,6300,6305,6307,6313],{"type":1941,"value":6299},"The only other mode allowed for ",{"type":1936,"tag":1997,"props":6301,"children":6303},{"className":6302},[],[6304],{"type":1941,"value":5882},{"type":1941,"value":6306}," is ",{"type":1936,"tag":1997,"props":6308,"children":6310},{"className":6309},[],[6311],{"type":1941,"value":6312},"VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR",{"type":1941,"value":4139},{"type":1936,"tag":5231,"props":6315,"children":6317},{"id":6316},"_compacting_micromaps",[6318],{"type":1941,"value":6319},"Compacting Micromaps",{"type":1936,"tag":1937,"props":6321,"children":6322},{},[6323,6325,6330,6331,6337],{"type":1941,"value":6324},"To compact a micromap, it must be first built and then the size must be queried with\n",{"type":1936,"tag":1948,"props":6326,"children":6328},{"href":6281,"rel":6327},[1952],[6329],{"type":1941,"value":6285},{"type":1941,"value":6287},{"type":1936,"tag":1997,"props":6332,"children":6334},{"className":6333},[],[6335],{"type":1941,"value":6336},"VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR",{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":6339,"children":6340},{},[6341],{"type":1941,"value":6342},"Next, the application needs to create a destination micromap of size at least that returned\nby the query with other parameters identical to the source micromap.",{"type":1936,"tag":1937,"props":6344,"children":6345},{},[6346,6348,6353,6355,6360],{"type":1941,"value":6347},"Then, the ",{"type":1936,"tag":1997,"props":6349,"children":6351},{"className":6350},[],[6352],{"type":1941,"value":5882},{"type":1941,"value":6354}," can be called with mode ",{"type":1936,"tag":1997,"props":6356,"children":6358},{"className":6357},[],[6359],{"type":1941,"value":6312},{"type":1941,"value":6361},"\nto copy the micromap from source to destination while compacting it.",{"type":1936,"tag":5231,"props":6363,"children":6365},{"id":6364},"_serializing_micromaps",[6366],{"type":1941,"value":6367},"Serializing Micromaps",{"type":1936,"tag":1937,"props":6369,"children":6370},{},[6371],{"type":1941,"value":6372},"A micromap can be serialized to memory so it can be stored and loaded in another application instance without\nhaving to regenerate the micromap.",{"type":1936,"tag":1937,"props":6374,"children":6375},{},[6376,6378,6383,6385,6391],{"type":1941,"value":6377},"First, the application needs to determine how large the serialized data is with\n",{"type":1936,"tag":1997,"props":6379,"children":6381},{"className":6380},[],[6382],{"type":1941,"value":6285},{"type":1941,"value":6384}," using query type\n",{"type":1936,"tag":1997,"props":6386,"children":6388},{"className":6387},[],[6389],{"type":1941,"value":6390},"VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR",{"type":1941,"value":6392},", and then allocate the memory.",{"type":1936,"tag":1937,"props":6394,"children":6395},{},[6396,6398,6404,6406,6416],{"type":1941,"value":6397},"Next, the application needs to issue ",{"type":1936,"tag":1997,"props":6399,"children":6401},{"className":6400},[],[6402],{"type":1941,"value":6403},"vkCmdCopyAccelerationStructureToMemoryKHR",{"type":1941,"value":6405}," to serialize it.\n",{"type":1936,"tag":1948,"props":6407,"children":6409},{"href":2205,"rel":6408},[1952],[6410],{"type":1936,"tag":1997,"props":6411,"children":6413},{"className":6412},[],[6414],{"type":1941,"value":6415},"vkCopyAccelerationStructureToMemoryKHR",{"type":1941,"value":5896},{"type":1936,"tag":2032,"props":6418,"children":6420},{"className":2034,"code":6419,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureToMemoryKHR(\n VkCommandBuffer commandBuffer,\n const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);\n\ntypedef struct VkCopyAccelerationStructureToMemoryInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkAccelerationStructureKHR src;\n VkDeviceOrHostAddressKHR dst;\n VkCopyAccelerationStructureModeKHR mode;\n} VkCopyAccelerationStructureToMemoryInfoKHR;\n",[6421],{"type":1936,"tag":1997,"props":6422,"children":6423},{"__ignoreMap":2037},[6424,6447,6463,6487,6494,6510,6517,6532,6539,6547,6554],{"type":1936,"tag":2043,"props":6425,"children":6426},{"class":2045,"line":10},[6427,6431,6435,6439,6443],{"type":1936,"tag":2043,"props":6428,"children":6429},{"style":2049},[6430],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":6432,"children":6433},{"style":2055},[6434],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":6436,"children":6437},{"style":2049},[6438],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":6440,"children":6441},{"style":2066},[6442],{"type":1941,"value":6403},{"type":1936,"tag":2043,"props":6444,"children":6445},{"style":2049},[6446],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":6448,"children":6449},{"class":2045,"line":14},[6450,6455,6459],{"type":1936,"tag":2043,"props":6451,"children":6452},{"style":2049},[6453],{"type":1941,"value":6454}," VkCommandBuffer ",{"type":1936,"tag":2043,"props":6456,"children":6457},{"style":2085},[6458],{"type":1941,"value":3038},{"type":1936,"tag":2043,"props":6460,"children":6461},{"style":2049},[6462],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6464,"children":6465},{"class":2045,"line":18},[6466,6470,6475,6479,6483],{"type":1936,"tag":2043,"props":6467,"children":6468},{"style":2055},[6469],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6471,"children":6472},{"style":2049},[6473],{"type":1941,"value":6474}," VkCopyAccelerationStructureToMemoryInfoKHR",{"type":1936,"tag":2043,"props":6476,"children":6477},{"style":2055},[6478],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":6480,"children":6481},{"style":2085},[6482],{"type":1941,"value":5963},{"type":1936,"tag":2043,"props":6484,"children":6485},{"style":2049},[6486],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":6488,"children":6489},{"class":2045,"line":22},[6490],{"type":1936,"tag":2043,"props":6491,"children":6492},{"emptyLinePlaceholder":244},[6493],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":6495,"children":6496},{"class":2045,"line":26},[6497,6501,6505],{"type":1936,"tag":2043,"props":6498,"children":6499},{"style":2055},[6500],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":6502,"children":6503},{"style":2055},[6504],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":6506,"children":6507},{"style":2049},[6508],{"type":1941,"value":6509}," VkCopyAccelerationStructureToMemoryInfoKHR {\n",{"type":1936,"tag":2043,"props":6511,"children":6512},{"class":2045,"line":30},[6513],{"type":1936,"tag":2043,"props":6514,"children":6515},{"style":2049},[6516],{"type":1941,"value":5998},{"type":1936,"tag":2043,"props":6518,"children":6519},{"class":2045,"line":34},[6520,6524,6528],{"type":1936,"tag":2043,"props":6521,"children":6522},{"style":2055},[6523],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6525,"children":6526},{"style":2055},[6527],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":6529,"children":6530},{"style":2049},[6531],{"type":1941,"value":6014},{"type":1936,"tag":2043,"props":6533,"children":6534},{"class":2045,"line":38},[6535],{"type":1936,"tag":2043,"props":6536,"children":6537},{"style":2049},[6538],{"type":1941,"value":6022},{"type":1936,"tag":2043,"props":6540,"children":6541},{"class":2045,"line":42},[6542],{"type":1936,"tag":2043,"props":6543,"children":6544},{"style":2049},[6545],{"type":1941,"value":6546}," VkDeviceOrHostAddressKHR dst;\n",{"type":1936,"tag":2043,"props":6548,"children":6549},{"class":2045,"line":46},[6550],{"type":1936,"tag":2043,"props":6551,"children":6552},{"style":2049},[6553],{"type":1941,"value":6038},{"type":1936,"tag":2043,"props":6555,"children":6556},{"class":2045,"line":50},[6557],{"type":1936,"tag":2043,"props":6558,"children":6559},{"style":2049},[6560],{"type":1941,"value":6561},"} VkCopyAccelerationStructureToMemoryInfoKHR;\n",{"type":1936,"tag":2181,"props":6563,"children":6564},{},[6565,6580,6596],{"type":1936,"tag":2185,"props":6566,"children":6567},{},[6568,6573,6575],{"type":1936,"tag":1997,"props":6569,"children":6571},{"className":6570},[],[6572],{"type":1941,"value":6057},{"type":1941,"value":6574}," is the source micromap to serialize, and is accessed as\n",{"type":1936,"tag":1997,"props":6576,"children":6578},{"className":6577},[],[6579],{"type":1941,"value":4693},{"type":1936,"tag":2185,"props":6581,"children":6582},{},[6583,6588,6590],{"type":1936,"tag":1997,"props":6584,"children":6586},{"className":6585},[],[6587],{"type":1941,"value":6065},{"type":1941,"value":6589}," is the destination addr to write the data to, and is accessed as\n",{"type":1936,"tag":1997,"props":6591,"children":6593},{"className":6592},[],[6594],{"type":1941,"value":6595},"VK_ACCESS_TRANSFER_WRITE_BIT",{"type":1936,"tag":2185,"props":6597,"children":6598},{},[6599,6604,6606],{"type":1936,"tag":1997,"props":6600,"children":6602},{"className":6601},[],[6603],{"type":1941,"value":2257},{"type":1941,"value":6605}," is the type of operation and must be ",{"type":1936,"tag":1997,"props":6607,"children":6609},{"className":6608},[],[6610],{"type":1941,"value":6611},"VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR",{"type":1936,"tag":1937,"props":6613,"children":6614},{},[6615,6617,6622,6623,6628],{"type":1941,"value":6616},"All accesses must be serialized with pipeline stage\n",{"type":1936,"tag":1997,"props":6618,"children":6620},{"className":6619},[],[6621],{"type":1941,"value":4704},{"type":1941,"value":6092},{"type":1936,"tag":1997,"props":6624,"children":6626},{"className":6625},[],[6627],{"type":1941,"value":6098},{"type":1941,"value":6100},{"type":1936,"tag":1937,"props":6630,"children":6631},{},[6632,6634,6640,6642,6648,6649,6654,6656],{"type":1941,"value":6633},"A defined header is written out to the data for reference: * ",{"type":1936,"tag":1997,"props":6635,"children":6637},{"className":6636},[],[6638],{"type":1941,"value":6639},"VK_UUID_SIZE",{"type":1941,"value":6641}," bytes of data matching ",{"type":1936,"tag":1997,"props":6643,"children":6645},{"className":6644},[],[6646],{"type":1941,"value":6647},"VkPhysicalDeviceIDProperties::driverUUID",{"type":1941,"value":4724},{"type":1936,"tag":1997,"props":6650,"children":6652},{"className":6651},[],[6653],{"type":1941,"value":6639},{"type":1941,"value":6655}," bytes of data identifying the compatibility for comparison using ",{"type":1936,"tag":1997,"props":6657,"children":6659},{"className":6658},[],[6660],{"type":1941,"value":6661},"vkGetDeviceAccelerationStructureCompatibilityKHR",{"type":1936,"tag":1937,"props":6663,"children":6664},{},[6665],{"type":1941,"value":6666},"The serialized data is written to the buffer (or read from the buffer)\naccording to the host endianness.",{"type":1936,"tag":5231,"props":6668,"children":6670},{"id":6669},"_deserializing_micromaps",[6671],{"type":1941,"value":6672},"Deserializing Micromaps",{"type":1936,"tag":1937,"props":6674,"children":6675},{},[6676],{"type":1941,"value":6677},"Micromaps can be loaded into an application by deserializing data that was previously serialized. First,\nthe application needs to check that the serialized data is compatible with this device:",{"type":1936,"tag":2032,"props":6679,"children":6681},{"className":2034,"code":6680,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkGetDeviceAccelerationStructureCompatibilityKHR(\n VkDevice device,\n const VkAccelerationStructureVersionInfoKHR* pVersionInfo,\n VkAccelerationStructureCompatibilityKHR* pCompatibility);\n\ntypedef struct VkAccelerationStructureVersionInfoKHR {\n VkStructureType sType;\n const void* pNext;\n const uint8_t* pVersionData;\n} VkAccelerationStructureVersionInfoKHR;\n\ntypedef enum VkAccelerationStructureCompatibilityKHR {\n VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0,\n VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1,\n} VkAccelerationStructureCompatibilityKHR;\n",[6682],{"type":1936,"tag":1997,"props":6683,"children":6684},{"__ignoreMap":2037},[6685,6708,6724,6749,6770,6777,6793,6800,6815,6832,6840,6847,6863,6883,6903],{"type":1936,"tag":2043,"props":6686,"children":6687},{"class":2045,"line":10},[6688,6692,6696,6700,6704],{"type":1936,"tag":2043,"props":6689,"children":6690},{"style":2049},[6691],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":6693,"children":6694},{"style":2055},[6695],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":6697,"children":6698},{"style":2049},[6699],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":6701,"children":6702},{"style":2066},[6703],{"type":1941,"value":6661},{"type":1936,"tag":2043,"props":6705,"children":6706},{"style":2049},[6707],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":6709,"children":6710},{"class":2045,"line":14},[6711,6716,6720],{"type":1936,"tag":2043,"props":6712,"children":6713},{"style":2049},[6714],{"type":1941,"value":6715}," VkDevice ",{"type":1936,"tag":2043,"props":6717,"children":6718},{"style":2085},[6719],{"type":1941,"value":278},{"type":1936,"tag":2043,"props":6721,"children":6722},{"style":2049},[6723],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6725,"children":6726},{"class":2045,"line":18},[6727,6731,6736,6740,6745],{"type":1936,"tag":2043,"props":6728,"children":6729},{"style":2055},[6730],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6732,"children":6733},{"style":2049},[6734],{"type":1941,"value":6735}," VkAccelerationStructureVersionInfoKHR",{"type":1936,"tag":2043,"props":6737,"children":6738},{"style":2055},[6739],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":6741,"children":6742},{"style":2085},[6743],{"type":1941,"value":6744}," pVersionInfo",{"type":1936,"tag":2043,"props":6746,"children":6747},{"style":2049},[6748],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6750,"children":6751},{"class":2045,"line":22},[6752,6757,6761,6766],{"type":1936,"tag":2043,"props":6753,"children":6754},{"style":2049},[6755],{"type":1941,"value":6756}," VkAccelerationStructureCompatibilityKHR",{"type":1936,"tag":2043,"props":6758,"children":6759},{"style":2055},[6760],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":6762,"children":6763},{"style":2085},[6764],{"type":1941,"value":6765}," pCompatibility",{"type":1936,"tag":2043,"props":6767,"children":6768},{"style":2049},[6769],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":6771,"children":6772},{"class":2045,"line":26},[6773],{"type":1936,"tag":2043,"props":6774,"children":6775},{"emptyLinePlaceholder":244},[6776],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":6778,"children":6779},{"class":2045,"line":30},[6780,6784,6788],{"type":1936,"tag":2043,"props":6781,"children":6782},{"style":2055},[6783],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":6785,"children":6786},{"style":2055},[6787],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":6789,"children":6790},{"style":2049},[6791],{"type":1941,"value":6792}," VkAccelerationStructureVersionInfoKHR {\n",{"type":1936,"tag":2043,"props":6794,"children":6795},{"class":2045,"line":34},[6796],{"type":1936,"tag":2043,"props":6797,"children":6798},{"style":2049},[6799],{"type":1941,"value":2373},{"type":1936,"tag":2043,"props":6801,"children":6802},{"class":2045,"line":38},[6803,6807,6811],{"type":1936,"tag":2043,"props":6804,"children":6805},{"style":2055},[6806],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6808,"children":6809},{"style":2055},[6810],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":6812,"children":6813},{"style":2049},[6814],{"type":1941,"value":2390},{"type":1936,"tag":2043,"props":6816,"children":6817},{"class":2045,"line":42},[6818,6822,6827],{"type":1936,"tag":2043,"props":6819,"children":6820},{"style":2055},[6821],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":6823,"children":6824},{"style":2055},[6825],{"type":1941,"value":6826}," uint8_t*",{"type":1936,"tag":2043,"props":6828,"children":6829},{"style":2049},[6830],{"type":1941,"value":6831}," pVersionData;\n",{"type":1936,"tag":2043,"props":6833,"children":6834},{"class":2045,"line":46},[6835],{"type":1936,"tag":2043,"props":6836,"children":6837},{"style":2049},[6838],{"type":1941,"value":6839},"} VkAccelerationStructureVersionInfoKHR;\n",{"type":1936,"tag":2043,"props":6841,"children":6842},{"class":2045,"line":50},[6843],{"type":1936,"tag":2043,"props":6844,"children":6845},{"emptyLinePlaceholder":244},[6846],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":6848,"children":6849},{"class":2045,"line":54},[6850,6854,6858],{"type":1936,"tag":2043,"props":6851,"children":6852},{"style":2055},[6853],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":6855,"children":6856},{"style":2055},[6857],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":6859,"children":6860},{"style":2049},[6861],{"type":1941,"value":6862}," VkAccelerationStructureCompatibilityKHR {\n",{"type":1936,"tag":2043,"props":6864,"children":6865},{"class":2045,"line":58},[6866,6871,6875,6879],{"type":1936,"tag":2043,"props":6867,"children":6868},{"style":2049},[6869],{"type":1941,"value":6870}," VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR ",{"type":1936,"tag":2043,"props":6872,"children":6873},{"style":2055},[6874],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6876,"children":6877},{"style":2559},[6878],{"type":1941,"value":2811},{"type":1936,"tag":2043,"props":6880,"children":6881},{"style":2049},[6882],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6884,"children":6885},{"class":2045,"line":62},[6886,6891,6895,6899],{"type":1936,"tag":2043,"props":6887,"children":6888},{"style":2049},[6889],{"type":1941,"value":6890}," VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR ",{"type":1936,"tag":2043,"props":6892,"children":6893},{"style":2055},[6894],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":6896,"children":6897},{"style":2559},[6898],{"type":1941,"value":2832},{"type":1936,"tag":2043,"props":6900,"children":6901},{"style":2049},[6902],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":6904,"children":6905},{"class":2045,"line":66},[6906],{"type":1936,"tag":2043,"props":6907,"children":6908},{"style":2049},[6909],{"type":1941,"value":6910},"} VkAccelerationStructureCompatibilityKHR;\n",{"type":1936,"tag":2181,"props":6912,"children":6913},{},[6914],{"type":1936,"tag":2185,"props":6915,"children":6916},{},[6917,6923],{"type":1936,"tag":1997,"props":6918,"children":6920},{"className":6919},[],[6921],{"type":1941,"value":6922},"pVersionData",{"type":1941,"value":6924}," is the pointer to the header of a serialized micromap",{"type":1936,"tag":1937,"props":6926,"children":6927},{},[6928],{"type":1941,"value":6929},"Next, the application needs to create the destination micromap with a size greater or equal to the serialized data.",{"type":1936,"tag":1937,"props":6931,"children":6932},{},[6933,6935,6941,6943,6953],{"type":1941,"value":6934},"Then, the application needs to issue ",{"type":1936,"tag":1997,"props":6936,"children":6938},{"className":6937},[],[6939],{"type":1941,"value":6940},"vkCmdCopyMemoryToAccelerationStructureKHR",{"type":1941,"value":6942}," to deserialize the data.\n",{"type":1936,"tag":1948,"props":6944,"children":6946},{"href":2205,"rel":6945},[1952],[6947],{"type":1936,"tag":1997,"props":6948,"children":6950},{"className":6949},[],[6951],{"type":1941,"value":6952},"vkCopyMemoryToAccelerationStructureKHR",{"type":1941,"value":5896},{"type":1936,"tag":2032,"props":6955,"children":6957},{"className":2034,"code":6956,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToAccelerationStructureKHR(\n VkCommandBuffer commandBuffer,\n const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);\n\ntypedef struct VkCopyMemoryToAccelerationStructureInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkDeviceOrHostAddressConstKHR src;\n VkAccelerationStructureKHR dst;\n VkCopyAccelerationStructureModeKHR mode;\n} VkCopyMemoryToAccelerationStructureInfoKHR;\n",[6958],{"type":1936,"tag":1997,"props":6959,"children":6960},{"__ignoreMap":2037},[6961,6984,7000,7025,7032,7048,7055,7070,7078,7085,7092],{"type":1936,"tag":2043,"props":6962,"children":6963},{"class":2045,"line":10},[6964,6968,6972,6976,6980],{"type":1936,"tag":2043,"props":6965,"children":6966},{"style":2049},[6967],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":6969,"children":6970},{"style":2055},[6971],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":6973,"children":6974},{"style":2049},[6975],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":6977,"children":6978},{"style":2066},[6979],{"type":1941,"value":6940},{"type":1936,"tag":2043,"props":6981,"children":6982},{"style":2049},[6983],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":6985,"children":6986},{"class":2045,"line":14},[6987,6992,6996],{"type":1936,"tag":2043,"props":6988,"children":6989},{"style":2049},[6990],{"type":1941,"value":6991}," VkCommandBuffer ",{"type":1936,"tag":2043,"props":6993,"children":6994},{"style":2085},[6995],{"type":1941,"value":3038},{"type":1936,"tag":2043,"props":6997,"children":6998},{"style":2049},[6999],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7001,"children":7002},{"class":2045,"line":18},[7003,7007,7012,7016,7021],{"type":1936,"tag":2043,"props":7004,"children":7005},{"style":2055},[7006],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":7008,"children":7009},{"style":2049},[7010],{"type":1941,"value":7011}," VkCopyMemoryToAccelerationStructureInfoKHR",{"type":1936,"tag":2043,"props":7013,"children":7014},{"style":2055},[7015],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":7017,"children":7018},{"style":2085},[7019],{"type":1941,"value":7020}," pInfo",{"type":1936,"tag":2043,"props":7022,"children":7023},{"style":2049},[7024],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":7026,"children":7027},{"class":2045,"line":22},[7028],{"type":1936,"tag":2043,"props":7029,"children":7030},{"emptyLinePlaceholder":244},[7031],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":7033,"children":7034},{"class":2045,"line":26},[7035,7039,7043],{"type":1936,"tag":2043,"props":7036,"children":7037},{"style":2055},[7038],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":7040,"children":7041},{"style":2055},[7042],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":7044,"children":7045},{"style":2049},[7046],{"type":1941,"value":7047}," VkCopyMemoryToAccelerationStructureInfoKHR {\n",{"type":1936,"tag":2043,"props":7049,"children":7050},{"class":2045,"line":30},[7051],{"type":1936,"tag":2043,"props":7052,"children":7053},{"style":2049},[7054],{"type":1941,"value":5998},{"type":1936,"tag":2043,"props":7056,"children":7057},{"class":2045,"line":34},[7058,7062,7066],{"type":1936,"tag":2043,"props":7059,"children":7060},{"style":2055},[7061],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":7063,"children":7064},{"style":2055},[7065],{"type":1941,"value":2385},{"type":1936,"tag":2043,"props":7067,"children":7068},{"style":2049},[7069],{"type":1941,"value":6014},{"type":1936,"tag":2043,"props":7071,"children":7072},{"class":2045,"line":38},[7073],{"type":1936,"tag":2043,"props":7074,"children":7075},{"style":2049},[7076],{"type":1941,"value":7077}," VkDeviceOrHostAddressConstKHR src;\n",{"type":1936,"tag":2043,"props":7079,"children":7080},{"class":2045,"line":42},[7081],{"type":1936,"tag":2043,"props":7082,"children":7083},{"style":2049},[7084],{"type":1941,"value":6030},{"type":1936,"tag":2043,"props":7086,"children":7087},{"class":2045,"line":46},[7088],{"type":1936,"tag":2043,"props":7089,"children":7090},{"style":2049},[7091],{"type":1941,"value":6038},{"type":1936,"tag":2043,"props":7093,"children":7094},{"class":2045,"line":50},[7095],{"type":1936,"tag":2043,"props":7096,"children":7097},{"style":2049},[7098],{"type":1941,"value":7099},"} VkCopyMemoryToAccelerationStructureInfoKHR;\n",{"type":1936,"tag":2181,"props":7101,"children":7102},{},[7103,7118,7133],{"type":1936,"tag":2185,"props":7104,"children":7105},{},[7106,7111,7113],{"type":1936,"tag":1997,"props":7107,"children":7109},{"className":7108},[],[7110],{"type":1941,"value":6057},{"type":1941,"value":7112}," is the source addr to read the data from, and is accessed as ",{"type":1936,"tag":1997,"props":7114,"children":7116},{"className":7115},[],[7117],{"type":1941,"value":4655},{"type":1936,"tag":2185,"props":7119,"children":7120},{},[7121,7126,7128],{"type":1936,"tag":1997,"props":7122,"children":7124},{"className":7123},[],[7125],{"type":1941,"value":6065},{"type":1941,"value":7127}," is the destination micromap to write the data to, and is accessed as\n",{"type":1936,"tag":1997,"props":7129,"children":7131},{"className":7130},[],[7132],{"type":1941,"value":3404},{"type":1936,"tag":2185,"props":7134,"children":7135},{},[7136,7141,7142],{"type":1936,"tag":1997,"props":7137,"children":7139},{"className":7138},[],[7140],{"type":1941,"value":2257},{"type":1941,"value":6605},{"type":1936,"tag":1997,"props":7143,"children":7145},{"className":7144},[],[7146],{"type":1941,"value":7147},"VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR",{"type":1936,"tag":1937,"props":7149,"children":7150},{},[7151,7152,7157,7158,7163],{"type":1941,"value":6616},{"type":1936,"tag":1997,"props":7153,"children":7155},{"className":7154},[],[7156],{"type":1941,"value":4704},{"type":1941,"value":6092},{"type":1936,"tag":1997,"props":7159,"children":7161},{"className":7160},[],[7162],{"type":1941,"value":6098},{"type":1941,"value":6100},{"type":1936,"tag":5231,"props":7165,"children":7167},{"id":7166},"_querying_micromaps",[7168],{"type":1941,"value":7169},"Querying Micromaps",{"type":1936,"tag":1937,"props":7171,"children":7172},{},[7173,7175,7180,7181,7191],{"type":1941,"value":7174},"Properties of a built micromap can be queried with ",{"type":1936,"tag":1997,"props":7176,"children":7178},{"className":7177},[],[7179],{"type":1941,"value":6285},{"type":1941,"value":5884},{"type":1936,"tag":1948,"props":7182,"children":7184},{"href":2205,"rel":7183},[1952],[7185],{"type":1936,"tag":1997,"props":7186,"children":7188},{"className":7187},[],[7189],{"type":1941,"value":7190},"vkWriteAccelerationStructuresPropertiesKHR",{"type":1941,"value":5896},{"type":1936,"tag":2032,"props":7193,"children":7195},{"className":2034,"code":7194,"language":2036,"meta":2037,"style":2037},"VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR(\n VkCommandBuffer commandBuffer,\n uint32_t accelerationStructureCount,\n const VkAccelerationStructureKHR* pAccelerationStructures,\n VkQueryType queryType,\n VkQueryPool queryPool,\n uint32_t firstQuery);\n",[7196],{"type":1936,"tag":1997,"props":7197,"children":7198},{"__ignoreMap":2037},[7199,7222,7237,7253,7278,7295,7312],{"type":1936,"tag":2043,"props":7200,"children":7201},{"class":2045,"line":10},[7202,7206,7210,7214,7218],{"type":1936,"tag":2043,"props":7203,"children":7204},{"style":2049},[7205],{"type":1941,"value":2052},{"type":1936,"tag":2043,"props":7207,"children":7208},{"style":2055},[7209],{"type":1941,"value":2058},{"type":1936,"tag":2043,"props":7211,"children":7212},{"style":2049},[7213],{"type":1941,"value":2063},{"type":1936,"tag":2043,"props":7215,"children":7216},{"style":2066},[7217],{"type":1941,"value":6285},{"type":1936,"tag":2043,"props":7219,"children":7220},{"style":2049},[7221],{"type":1941,"value":2074},{"type":1936,"tag":2043,"props":7223,"children":7224},{"class":2045,"line":14},[7225,7229,7233],{"type":1936,"tag":2043,"props":7226,"children":7227},{"style":2049},[7228],{"type":1941,"value":5934},{"type":1936,"tag":2043,"props":7230,"children":7231},{"style":2085},[7232],{"type":1941,"value":3038},{"type":1936,"tag":2043,"props":7234,"children":7235},{"style":2049},[7236],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7238,"children":7239},{"class":2045,"line":18},[7240,7244,7249],{"type":1936,"tag":2043,"props":7241,"children":7242},{"style":2055},[7243],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":7245,"children":7246},{"style":2085},[7247],{"type":1941,"value":7248}," accelerationStructureCount",{"type":1936,"tag":2043,"props":7250,"children":7251},{"style":2049},[7252],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7254,"children":7255},{"class":2045,"line":22},[7256,7260,7265,7269,7274],{"type":1936,"tag":2043,"props":7257,"children":7258},{"style":2055},[7259],{"type":1941,"value":2117},{"type":1936,"tag":2043,"props":7261,"children":7262},{"style":2049},[7263],{"type":1941,"value":7264}," VkAccelerationStructureKHR",{"type":1936,"tag":2043,"props":7266,"children":7267},{"style":2055},[7268],{"type":1941,"value":2127},{"type":1936,"tag":2043,"props":7270,"children":7271},{"style":2085},[7272],{"type":1941,"value":7273}," pAccelerationStructures",{"type":1936,"tag":2043,"props":7275,"children":7276},{"style":2049},[7277],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7279,"children":7280},{"class":2045,"line":26},[7281,7286,7291],{"type":1936,"tag":2043,"props":7282,"children":7283},{"style":2049},[7284],{"type":1941,"value":7285}," VkQueryType ",{"type":1936,"tag":2043,"props":7287,"children":7288},{"style":2085},[7289],{"type":1941,"value":7290},"queryType",{"type":1936,"tag":2043,"props":7292,"children":7293},{"style":2049},[7294],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7296,"children":7297},{"class":2045,"line":30},[7298,7303,7308],{"type":1936,"tag":2043,"props":7299,"children":7300},{"style":2049},[7301],{"type":1941,"value":7302}," VkQueryPool ",{"type":1936,"tag":2043,"props":7304,"children":7305},{"style":2085},[7306],{"type":1941,"value":7307},"queryPool",{"type":1936,"tag":2043,"props":7309,"children":7310},{"style":2049},[7311],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7313,"children":7314},{"class":2045,"line":34},[7315,7319,7324],{"type":1936,"tag":2043,"props":7316,"children":7317},{"style":2055},[7318],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":7320,"children":7321},{"style":2085},[7322],{"type":1941,"value":7323}," firstQuery",{"type":1936,"tag":2043,"props":7325,"children":7326},{"style":2049},[7327],{"type":1941,"value":2179},{"type":1936,"tag":2181,"props":7329,"children":7330},{},[7331],{"type":1936,"tag":2185,"props":7332,"children":7333},{},[7334,7340,7342,7348,7350,7355,7357,7362,7363,7368],{"type":1936,"tag":1997,"props":7335,"children":7337},{"className":7336},[],[7338],{"type":1941,"value":7339},"pAccelerationStructures",{"type":1941,"value":7341}," is the list of micromaps of size ",{"type":1936,"tag":1997,"props":7343,"children":7345},{"className":7344},[],[7346],{"type":1941,"value":7347},"accelerationStructureCount",{"type":1941,"value":7349}," to write out the queries for,\nand their access in this command is ",{"type":1936,"tag":1997,"props":7351,"children":7353},{"className":7352},[],[7354],{"type":1941,"value":4693},{"type":1941,"value":7356}," and must be serialized with\n",{"type":1936,"tag":1997,"props":7358,"children":7360},{"className":7359},[],[7361],{"type":1941,"value":4704},{"type":1941,"value":2332},{"type":1936,"tag":1997,"props":7364,"children":7366},{"className":7365},[],[7367],{"type":1941,"value":6098},{"type":1941,"value":7369},"\nas appropriate",{"type":1936,"tag":2032,"props":7371,"children":7373},{"className":2034,"code":7372,"language":2036,"meta":2037,"style":2037},"typedef enum VkQueryType {\n VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000,\n VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001,\n VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR = 1000386000,\n VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR = 1000386001,\n} VkQueryType;\n",[7374],{"type":1936,"tag":1997,"props":7375,"children":7376},{"__ignoreMap":2037},[7377,7393,7414,7435,7456,7477],{"type":1936,"tag":2043,"props":7378,"children":7379},{"class":2045,"line":10},[7380,7384,7388],{"type":1936,"tag":2043,"props":7381,"children":7382},{"style":2055},[7383],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":7385,"children":7386},{"style":2055},[7387],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":7389,"children":7390},{"style":2049},[7391],{"type":1941,"value":7392}," VkQueryType {\n",{"type":1936,"tag":2043,"props":7394,"children":7395},{"class":2045,"line":14},[7396,7401,7405,7410],{"type":1936,"tag":2043,"props":7397,"children":7398},{"style":2049},[7399],{"type":1941,"value":7400}," VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR ",{"type":1936,"tag":2043,"props":7402,"children":7403},{"style":2055},[7404],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7406,"children":7407},{"style":2559},[7408],{"type":1941,"value":7409}," 1000150000",{"type":1936,"tag":2043,"props":7411,"children":7412},{"style":2049},[7413],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7415,"children":7416},{"class":2045,"line":18},[7417,7422,7426,7431],{"type":1936,"tag":2043,"props":7418,"children":7419},{"style":2049},[7420],{"type":1941,"value":7421}," VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR ",{"type":1936,"tag":2043,"props":7423,"children":7424},{"style":2055},[7425],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7427,"children":7428},{"style":2559},[7429],{"type":1941,"value":7430}," 1000150001",{"type":1936,"tag":2043,"props":7432,"children":7433},{"style":2049},[7434],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7436,"children":7437},{"class":2045,"line":22},[7438,7443,7447,7452],{"type":1936,"tag":2043,"props":7439,"children":7440},{"style":2049},[7441],{"type":1941,"value":7442}," VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR ",{"type":1936,"tag":2043,"props":7444,"children":7445},{"style":2055},[7446],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7448,"children":7449},{"style":2559},[7450],{"type":1941,"value":7451}," 1000386000",{"type":1936,"tag":2043,"props":7453,"children":7454},{"style":2049},[7455],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7457,"children":7458},{"class":2045,"line":26},[7459,7464,7468,7473],{"type":1936,"tag":2043,"props":7460,"children":7461},{"style":2049},[7462],{"type":1941,"value":7463}," VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR ",{"type":1936,"tag":2043,"props":7465,"children":7466},{"style":2055},[7467],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7469,"children":7470},{"style":2559},[7471],{"type":1941,"value":7472}," 1000386001",{"type":1936,"tag":2043,"props":7474,"children":7475},{"style":2049},[7476],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":7478,"children":7479},{"class":2045,"line":30},[7480],{"type":1936,"tag":2043,"props":7481,"children":7482},{"style":2049},[7483],{"type":1941,"value":7484},"} VkQueryType;\n",{"type":1936,"tag":2181,"props":7486,"children":7487},{},[7488,7498,7508,7518],{"type":1936,"tag":2185,"props":7489,"children":7490},{},[7491,7496],{"type":1936,"tag":1997,"props":7492,"children":7494},{"className":7493},[],[7495],{"type":1941,"value":6293},{"type":1941,"value":7497}," will write out an entry per micromap that\nspecifies the size of the micromap in bytes",{"type":1936,"tag":2185,"props":7499,"children":7500},{},[7501,7506],{"type":1936,"tag":1997,"props":7502,"children":7504},{"className":7503},[],[7505],{"type":1941,"value":6390},{"type":1941,"value":7507}," will write out an entry per micromap that\nspecifies the size of the serialized micromap in bytes",{"type":1936,"tag":2185,"props":7509,"children":7510},{},[7511,7516],{"type":1936,"tag":1997,"props":7512,"children":7514},{"className":7513},[],[7515],{"type":1941,"value":6336},{"type":1941,"value":7517}," will write out an entry per micromap that specifies the size\nof the compacted micromap in bytes",{"type":1936,"tag":2185,"props":7519,"children":7520},{},[7521,7527],{"type":1936,"tag":1997,"props":7522,"children":7524},{"className":7523},[],[7525],{"type":1941,"value":7526},"VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR",{"type":1941,"value":3388},{"type":1936,"tag":2020,"props":7529,"children":7531},{"id":7530},"_features",[7532],{"type":1941,"value":223},{"type":1936,"tag":2032,"props":7534,"children":7536},{"className":2034,"code":7535,"language":2036,"meta":2037,"style":2037},"typedef struct VkPhysicalDeviceOpacityMicromapFeaturesKHR {\n VkStructureType sType;\n void* pNext;\n VkBool32 micromap;\n} VkPhysicalDeviceOpacityMicromapFeaturesKHR;\n",[7537],{"type":1936,"tag":1997,"props":7538,"children":7539},{"__ignoreMap":2037},[7540,7556,7563,7575,7583],{"type":1936,"tag":2043,"props":7541,"children":7542},{"class":2045,"line":10},[7543,7547,7551],{"type":1936,"tag":2043,"props":7544,"children":7545},{"style":2055},[7546],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":7548,"children":7549},{"style":2055},[7550],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":7552,"children":7553},{"style":2049},[7554],{"type":1941,"value":7555}," VkPhysicalDeviceOpacityMicromapFeaturesKHR {\n",{"type":1936,"tag":2043,"props":7557,"children":7558},{"class":2045,"line":14},[7559],{"type":1936,"tag":2043,"props":7560,"children":7561},{"style":2049},[7562],{"type":1941,"value":2373},{"type":1936,"tag":2043,"props":7564,"children":7565},{"class":2045,"line":18},[7566,7570],{"type":1936,"tag":2043,"props":7567,"children":7568},{"style":2055},[7569],{"type":1941,"value":4563},{"type":1936,"tag":2043,"props":7571,"children":7572},{"style":2049},[7573],{"type":1941,"value":7574}," pNext;\n",{"type":1936,"tag":2043,"props":7576,"children":7577},{"class":2045,"line":22},[7578],{"type":1936,"tag":2043,"props":7579,"children":7580},{"style":2049},[7581],{"type":1941,"value":7582}," VkBool32 micromap;\n",{"type":1936,"tag":2043,"props":7584,"children":7585},{"class":2045,"line":26},[7586],{"type":1936,"tag":2043,"props":7587,"children":7588},{"style":2049},[7589],{"type":1941,"value":7590},"} VkPhysicalDeviceOpacityMicromapFeaturesKHR;\n",{"type":1936,"tag":2181,"props":7592,"children":7593},{},[7594],{"type":1936,"tag":2185,"props":7595,"children":7596},{},[7597,7602],{"type":1936,"tag":1997,"props":7598,"children":7600},{"className":7599},[],[7601],{"type":1941,"value":184},{"type":1941,"value":7603}," main feature to enable micromap functionality, only required feature",{"type":1936,"tag":2020,"props":7605,"children":7607},{"id":7606},"_properties",[7608],{"type":1941,"value":7609},"Properties",{"type":1936,"tag":2032,"props":7611,"children":7613},{"className":2034,"code":7612,"language":2036,"meta":2037,"style":2037},"typedef struct VkPhysicalDeviceOpacityMicromapPropertiesKHR {\n VkStructureType sType;\n void* pNext;\n uint32_t maxOpacity2StateSubdivisionLevel;\n uint32_t maxOpacity4StateSubdivisionLevel;\n uint32_t maxOpacityLossy4StateSubdivisionLevel;\n uint64_t maxMicromapTriangles;\n} VkPhysicalDeviceOpacityMicromapPropertiesKHR;\n",[7614],{"type":1936,"tag":1997,"props":7615,"children":7616},{"__ignoreMap":2037},[7617,7633,7640,7651,7663,7675,7687,7700],{"type":1936,"tag":2043,"props":7618,"children":7619},{"class":2045,"line":10},[7620,7624,7628],{"type":1936,"tag":2043,"props":7621,"children":7622},{"style":2055},[7623],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":7625,"children":7626},{"style":2055},[7627],{"type":1941,"value":2360},{"type":1936,"tag":2043,"props":7629,"children":7630},{"style":2049},[7631],{"type":1941,"value":7632}," VkPhysicalDeviceOpacityMicromapPropertiesKHR {\n",{"type":1936,"tag":2043,"props":7634,"children":7635},{"class":2045,"line":14},[7636],{"type":1936,"tag":2043,"props":7637,"children":7638},{"style":2049},[7639],{"type":1941,"value":2373},{"type":1936,"tag":2043,"props":7641,"children":7642},{"class":2045,"line":18},[7643,7647],{"type":1936,"tag":2043,"props":7644,"children":7645},{"style":2055},[7646],{"type":1941,"value":4563},{"type":1936,"tag":2043,"props":7648,"children":7649},{"style":2049},[7650],{"type":1941,"value":7574},{"type":1936,"tag":2043,"props":7652,"children":7653},{"class":2045,"line":22},[7654,7658],{"type":1936,"tag":2043,"props":7655,"children":7656},{"style":2055},[7657],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":7659,"children":7660},{"style":2049},[7661],{"type":1941,"value":7662}," maxOpacity2StateSubdivisionLevel;\n",{"type":1936,"tag":2043,"props":7664,"children":7665},{"class":2045,"line":26},[7666,7670],{"type":1936,"tag":2043,"props":7667,"children":7668},{"style":2055},[7669],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":7671,"children":7672},{"style":2049},[7673],{"type":1941,"value":7674}," maxOpacity4StateSubdivisionLevel;\n",{"type":1936,"tag":2043,"props":7676,"children":7677},{"class":2045,"line":30},[7678,7682],{"type":1936,"tag":2043,"props":7679,"children":7680},{"style":2055},[7681],{"type":1941,"value":3050},{"type":1936,"tag":2043,"props":7683,"children":7684},{"style":2049},[7685],{"type":1941,"value":7686}," maxOpacityLossy4StateSubdivisionLevel;\n",{"type":1936,"tag":2043,"props":7688,"children":7689},{"class":2045,"line":34},[7690,7695],{"type":1936,"tag":2043,"props":7691,"children":7692},{"style":2055},[7693],{"type":1941,"value":7694}," uint64_t",{"type":1936,"tag":2043,"props":7696,"children":7697},{"style":2049},[7698],{"type":1941,"value":7699}," maxMicromapTriangles;\n",{"type":1936,"tag":2043,"props":7701,"children":7702},{"class":2045,"line":38},[7703],{"type":1936,"tag":2043,"props":7704,"children":7705},{"style":2049},[7706],{"type":1941,"value":7707},"} VkPhysicalDeviceOpacityMicromapPropertiesKHR;\n",{"type":1936,"tag":2181,"props":7709,"children":7710},{},[7711,7729,7745,7756],{"type":1936,"tag":2185,"props":7712,"children":7713},{},[7714,7720,7722,7727],{"type":1936,"tag":1997,"props":7715,"children":7717},{"className":7716},[],[7718],{"type":1941,"value":7719},"maxOpacity2StateSubdivisionLevel",{"type":1941,"value":7721}," max allowed subdivision level for micromaps with\n",{"type":1936,"tag":1997,"props":7723,"children":7725},{"className":7724},[],[7726],{"type":1941,"value":4485},{"type":1941,"value":7728}," format",{"type":1936,"tag":2185,"props":7730,"children":7731},{},[7732,7738,7739,7744],{"type":1936,"tag":1997,"props":7733,"children":7735},{"className":7734},[],[7736],{"type":1941,"value":7737},"maxOpacity4StateSubdivisionLevel",{"type":1941,"value":7721},{"type":1936,"tag":1997,"props":7740,"children":7742},{"className":7741},[],[7743],{"type":1941,"value":4496},{"type":1941,"value":7728},{"type":1936,"tag":2185,"props":7746,"children":7747},{},[7748,7754],{"type":1936,"tag":1997,"props":7749,"children":7751},{"className":7750},[],[7752],{"type":1941,"value":7753},"maxOpacityLossy4StateSubdivisionLevel",{"type":1941,"value":7755}," may relax the 4 state subdivision limit if the micromap is lossy",{"type":1936,"tag":2185,"props":7757,"children":7758},{},[7759,7765],{"type":1936,"tag":1997,"props":7760,"children":7762},{"className":7761},[],[7763],{"type":1941,"value":7764},"maxMicromapTriangles",{"type":1941,"value":7766}," limits the number of triangles in the micromap to this value",{"type":1936,"tag":2020,"props":7768,"children":7770},{"id":7769},"_changes_from_vk_ext_opacity_micromap",[7771],{"type":1941,"value":7772},"Changes from VK_EXT_opacity_micromap",{"type":1936,"tag":5231,"props":7774,"children":7776},{"id":7775},"_vkmicromapext_deprecation",[7777],{"type":1941,"value":7778},"VkMicromapEXT Deprecation",{"type":1936,"tag":1937,"props":7780,"children":7781},{},[7782,7783,7789,7791,7797,7799,7804,7806,7811],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":7784,"children":7786},{"className":7785},[],[7787],{"type":1941,"value":7788},"VkMicromapEXT",{"type":1941,"value":7790}," object is\n",{"type":1936,"tag":1948,"props":7792,"children":7794},{"href":7793},"%7Bextension%7Dmicromap-issues-micromap",[7795],{"type":1941,"value":7796},"deprecated",{"type":1941,"value":7798}," in this extension, instead folding micromaps into\n",{"type":1936,"tag":1997,"props":7800,"children":7802},{"className":7801},[],[7803],{"type":1941,"value":2002},{"type":1941,"value":7805},". Much of the EXT API is replaced with commands from\n",{"type":1936,"tag":1997,"props":7807,"children":7809},{"className":7808},[],[7810],{"type":1941,"value":1089},{"type":1941,"value":4139},{"type":1936,"tag":5231,"props":7813,"children":7815},{"id":7814},"_new_pipeline_flags",[7816],{"type":1941,"value":7817},"New Pipeline Flags",{"type":1936,"tag":1937,"props":7819,"children":7820},{},[7821],{"type":1941,"value":7822},"A new pipeline flag is added to this extension:",{"type":1936,"tag":2032,"props":7824,"children":7826},{"className":2034,"code":7825,"language":2036,"meta":2037,"style":2037},"static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_KHR = 0x20000000000ULL;\n",[7827],{"type":1936,"tag":1997,"props":7828,"children":7829},{"__ignoreMap":2037},[7830],{"type":1936,"tag":2043,"props":7831,"children":7832},{"class":2045,"line":10},[7833,7837,7841,7846,7850,7854,7859,7863],{"type":1936,"tag":2043,"props":7834,"children":7835},{"style":2055},[7836],{"type":1941,"value":5742},{"type":1936,"tag":2043,"props":7838,"children":7839},{"style":2055},[7840],{"type":1941,"value":5747},{"type":1936,"tag":2043,"props":7842,"children":7843},{"style":2049},[7844],{"type":1941,"value":7845}," VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_KHR ",{"type":1936,"tag":2043,"props":7847,"children":7848},{"style":2055},[7849],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7851,"children":7852},{"style":2055},[7853],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":7855,"children":7856},{"style":2559},[7857],{"type":1941,"value":7858},"20000000000",{"type":1936,"tag":2043,"props":7860,"children":7861},{"style":2055},[7862],{"type":1941,"value":5770},{"type":1936,"tag":2043,"props":7864,"children":7865},{"style":2049},[7866],{"type":1941,"value":2567},{"type":1936,"tag":2181,"props":7868,"children":7869},{},[7870],{"type":1936,"tag":2185,"props":7871,"children":7872},{},[7873,7879],{"type":1936,"tag":1997,"props":7874,"children":7876},{"className":7875},[],[7877],{"type":1941,"value":7878},"VK_PIPELINE_CREATE_2_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_KHR",{"type":1941,"value":7880}," specifies that pipelines cannot use\nacceleration structures built with geometry that has an index buffer including both special indices and indices\npointing to an associated micromap array. Geometry which has an index buffer using only special indices without an\nassociated micromap array can still be used with this flag. Using this flag may allow some implementations to\nperform a faster traversal.",{"type":1936,"tag":1937,"props":7882,"children":7883},{},[7884,7886,7891,7893,7898,7900,7906],{"type":1941,"value":7885},"For ray pipelines, this flag can only be specified if the ",{"type":1936,"tag":1997,"props":7887,"children":7889},{"className":7888},[],[7890],{"type":1941,"value":5785},{"type":1941,"value":7892},"\nflag is also provided. For ray query traversals, the\n",{"type":1936,"tag":1997,"props":7894,"children":7896},{"className":7895},[],[7897],{"type":1941,"value":7878},{"type":1941,"value":7899}," flag\nis ignored if the shader does not enable the ",{"type":1936,"tag":1997,"props":7901,"children":7903},{"className":7902},[],[7904],{"type":1941,"value":7905},"OpacityMicromapKHR",{"type":1941,"value":7907}," execution mode.",{"type":1936,"tag":1937,"props":7909,"children":7910},{},[7911],{"type":1941,"value":7912},"The equivalent flag for shader objects is also provided:",{"type":1936,"tag":2032,"props":7914,"children":7916},{"className":2034,"code":7915,"language":2036,"meta":2037,"style":2037},"VK_SHADER_CREATE_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_EXT = 0x00001000\n",[7917],{"type":1936,"tag":1997,"props":7918,"children":7919},{"__ignoreMap":2037},[7920],{"type":1936,"tag":2043,"props":7921,"children":7922},{"class":2045,"line":10},[7923,7928,7932,7936],{"type":1936,"tag":2043,"props":7924,"children":7925},{"style":2049},[7926],{"type":1941,"value":7927},"VK_SHADER_CREATE_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_EXT ",{"type":1936,"tag":2043,"props":7929,"children":7930},{"style":2055},[7931],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":7933,"children":7934},{"style":2055},[7935],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":7937,"children":7938},{"style":2559},[7939],{"type":1941,"value":7940},"00001000\n",{"type":1936,"tag":5231,"props":7942,"children":7944},{"id":7943},"_ray_query",[7945],{"type":1941,"value":7946},"Ray Query",{"type":1936,"tag":1937,"props":7948,"children":7949},{},[7950,7952,7957,7959,7966],{"type":1941,"value":7951},"Ray query operations could use opacity micromaps in the ",{"type":1936,"tag":1997,"props":7953,"children":7955},{"className":7954},[],[7956],{"type":1941,"value":402},{"type":1941,"value":7958}," extension\nwithout needing to supply a flag like ray pipelines. This has changed in this extension, which adds\na new execution mode in the\n",{"type":1936,"tag":1948,"props":7960,"children":7963},{"href":7961,"rel":7962},"https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_opacity_micromap.html",[1952],[7964],{"type":1941,"value":7965},"SPV_KHR_opacity_micromap",{"type":1941,"value":7967},"\nextension to enable opacity micromaps with ray query in shaders:",{"type":1936,"tag":2181,"props":7969,"children":7970},{},[7971],{"type":1936,"tag":2185,"props":7972,"children":7973},{},[7974,7979],{"type":1936,"tag":1997,"props":7975,"children":7977},{"className":7976},[],[7978],{"type":1941,"value":7905},{"type":1941,"value":7980}," - this execution mode takes a specialization constant boolean value to determine\nif ray queries in that shader can use opacity micromaps",{"type":1936,"tag":1937,"props":7982,"children":7983},{},[7984,7985,7990,7992,7997],{"type":1941,"value":5033},{"type":1936,"tag":1997,"props":7986,"children":7988},{"className":7987},[],[7989],{"type":1941,"value":402},{"type":1941,"value":7991}," extension is not enabled, this execution mode must be supplied to use opacity micromaps with ray queries,\neven if executed inside a ray pipeline shader with the\n",{"type":1936,"tag":1997,"props":7993,"children":7995},{"className":7994},[],[7996],{"type":1941,"value":5785},{"type":1941,"value":7998}," flag specified.",{"type":1936,"tag":5231,"props":8000,"children":8002},{"id":8001},"_glsl",[8003],{"type":1941,"value":8004},"GLSL",{"type":1936,"tag":1937,"props":8006,"children":8007},{},[8008,8010,8015,8017,8028],{"type":1941,"value":8009},"A built-in to enable encoding the ",{"type":1936,"tag":1997,"props":8011,"children":8013},{"className":8012},[],[8014],{"type":1941,"value":7905},{"type":1941,"value":8016}," execution mode in SPIR-V is added in the\n",{"type":1936,"tag":1948,"props":8018,"children":8021},{"href":8019,"rel":8020},"https://github.com/KhronosGroup/GLSL/blob/main/extensions/ext/GLSL_EXT_opacity_micromap_ray_query_mode.txt",[1952],[8022],{"type":1936,"tag":1997,"props":8023,"children":8025},{"className":8024},[],[8026],{"type":1941,"value":8027},"GLSL_EXT_opacity_micromap_ray_query_mode",{"type":1941,"value":8029},"\nextension:",{"type":1936,"tag":2032,"props":8031,"children":8033},{"className":2034,"code":8032,"language":2036,"meta":2037,"style":2037},"layout(constant_id = \u003Cspecialization constant id>) gl_EnableOpacityMicromapExt;\n",[8034],{"type":1936,"tag":1997,"props":8035,"children":8036},{"__ignoreMap":2037},[8037],{"type":1936,"tag":2043,"props":8038,"children":8039},{"class":2045,"line":10},[8040,8045,8050,8054,8059,8064,8069],{"type":1936,"tag":2043,"props":8041,"children":8042},{"style":2066},[8043],{"type":1941,"value":8044},"layout",{"type":1936,"tag":2043,"props":8046,"children":8047},{"style":2049},[8048],{"type":1941,"value":8049},"(constant_id ",{"type":1936,"tag":2043,"props":8051,"children":8052},{"style":2055},[8053],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8055,"children":8056},{"style":2055},[8057],{"type":1941,"value":8058}," \u003C",{"type":1936,"tag":2043,"props":8060,"children":8061},{"style":2049},[8062],{"type":1941,"value":8063},"specialization constant id",{"type":1936,"tag":2043,"props":8065,"children":8066},{"style":2055},[8067],{"type":1941,"value":8068},">",{"type":1936,"tag":2043,"props":8070,"children":8071},{"style":2049},[8072],{"type":1941,"value":8073},") gl_EnableOpacityMicromapExt;\n",{"type":1936,"tag":1937,"props":8075,"children":8076},{},[8077,8079,8084,8086,8093],{"type":1941,"value":8078},"In order to maintain backwards compatibility with existing shaders, high-level compilers should target\nthe ",{"type":1936,"tag":1997,"props":8080,"children":8082},{"className":8081},[],[8083],{"type":1941,"value":7965},{"type":1941,"value":8085}," extension when this built-in is defined by the shader, and target the\n",{"type":1936,"tag":1948,"props":8087,"children":8090},{"href":8088,"rel":8089},"https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_opacity_micromap.html",[1952],[8091],{"type":1941,"value":8092},"SPV_EXT_opacity_micromap",{"type":1941,"value":8094},"\nextension otherwise.",{"type":1936,"tag":1937,"props":8096,"children":8097},{},[8098,8100,8105,8107,8112],{"type":1941,"value":8099},"Applications can provide shaders that use either SPIR-V extension with this Vulkan extension, but must\nprovide a shader that uses ",{"type":1936,"tag":1997,"props":8101,"children":8103},{"className":8102},[],[8104],{"type":1941,"value":7965},{"type":1941,"value":8106}," if ",{"type":1936,"tag":1997,"props":8108,"children":8110},{"className":8109},[],[8111],{"type":1941,"value":7905},{"type":1941,"value":8113}," is encoded.",{"type":1936,"tag":5231,"props":8115,"children":8117},{"id":8116},"_host_commands",[8118],{"type":1941,"value":8119},"Host Commands",{"type":1936,"tag":1937,"props":8121,"children":8122},{},[8123,8129],{"type":1936,"tag":1948,"props":8124,"children":8126},{"href":2205,"rel":8125},[1952],[8127],{"type":1941,"value":8128},"Host commands",{"type":1941,"value":8130}," are not widely supported and\nupdating the entry-points to support using host addresses instead of a buffer would have added complexity.",{"type":1936,"tag":1937,"props":8132,"children":8133},{},[8134,8136,8142,8144,8149],{"type":1941,"value":8135},"The\n",{"type":1936,"tag":1948,"props":8137,"children":8140},{"href":8138,"rel":8139},"https://docs.vulkan.org/refpages/latest/refpages/source/VkAccelerationStructureTrianglesOpacityMicromapKHR.html",[1952],[8141],{"type":1941,"value":5262},{"type":1941,"value":8143},"\nstructure is not equivalent to the one provided with ",{"type":1936,"tag":1997,"props":8145,"children":8147},{"className":8146},[],[8148],{"type":1941,"value":402},{"type":1941,"value":4139},{"type":1936,"tag":2181,"props":8151,"children":8152},{},[8153,8172],{"type":1936,"tag":2185,"props":8154,"children":8155},{},[8156,8157,8162,8164,8170],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":8158,"children":8160},{"className":8159},[],[8161],{"type":1941,"value":4639},{"type":1941,"value":8163}," parameter is now a ",{"type":1936,"tag":1997,"props":8165,"children":8167},{"className":8166},[],[8168],{"type":1941,"value":8169},"VkDeviceAddress",{"type":1941,"value":8171}," type as micromaps\nare not permitted in host acceleration structure builds.",{"type":1936,"tag":2185,"props":8173,"children":8174},{},[8175,8176,8181,8182,8187],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":8177,"children":8179},{"className":8178},[],[8180],{"type":1941,"value":184},{"type":1941,"value":8163},{"type":1936,"tag":1997,"props":8183,"children":8185},{"className":8184},[],[8186],{"type":1941,"value":2002},{"type":1941,"value":8188}," object",{"type":1936,"tag":5231,"props":8190,"children":8192},{"id":8191},"_lossy_micromaps",[8193],{"type":1941,"value":8194},"Lossy Micromaps",{"type":1936,"tag":1937,"props":8196,"children":8197},{},[8198],{"type":1941,"value":8199},"Micromaps can be built as lossy with a new flag:",{"type":1936,"tag":2032,"props":8201,"children":8203},{"className":2034,"code":8202,"language":2036,"meta":2037,"style":2037},"VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR = 0x00000400\n",[8204],{"type":1936,"tag":1997,"props":8205,"children":8206},{"__ignoreMap":2037},[8207],{"type":1936,"tag":2043,"props":8208,"children":8209},{"class":2045,"line":10},[8210,8215,8219,8223],{"type":1936,"tag":2043,"props":8211,"children":8212},{"style":2049},[8213],{"type":1941,"value":8214},"VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR ",{"type":1936,"tag":2043,"props":8216,"children":8217},{"style":2055},[8218],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8220,"children":8221},{"style":2055},[8222],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":8224,"children":8225},{"style":2559},[8226],{"type":1941,"value":8227},"00000400\n",{"type":1936,"tag":1937,"props":8229,"children":8230},{},[8231],{"type":1941,"value":8232},"Lossy micromaps allow an implementation to build the micromap with lossy compression\nand/or support more subdivision levels.",{"type":1936,"tag":1937,"props":8234,"children":8235},{},[8236,8238,8243,8245,8250],{"type":1941,"value":8237},"During traversal, a micromap built as lossy may substitute any state for\n",{"type":1936,"tag":1997,"props":8239,"children":8241},{"className":8240},[],[8242],{"type":1941,"value":5021},{"type":1941,"value":8244}," or\n",{"type":1936,"tag":1997,"props":8246,"children":8248},{"className":8247},[],[8249],{"type":1941,"value":5028},{"type":1941,"value":8251},". The implementation,\non an identically created instance and device, must perform any lossy substitutions\ninvariantly with respect to acceleration structures and micromaps constructed\nwith an equivalent shape and data.",{"type":1936,"tag":1937,"props":8253,"children":8254},{},[8255],{"type":1941,"value":8256},"Equivalent shape and data is left without complete definition since there\nare many ways to eventually construct the same effective micromap. The most\nconservative option would be for app to construct the micromap using the\nexact same methods and inputs to guarantee invariance. The invariance\nguarantee is only provided to give a deterministic workload and should\nnot be relied upon for functional invariance.",{"type":1936,"tag":1937,"props":8258,"children":8259},{},[8260],{"type":1941,"value":8261},"Applications should make sure that the any-hit shader or ray query hit\nconfirmation is compatible with the built state, for example, it should\nignore intersections with elements built with fully transparent and\naccept intersections with elements built with fully opaque states.\nThis way, when a potential substitution happens from one of those states\nto a fully unknown state, traversal still behaves in the expected manner\neven though the shader is invoked.",{"type":1936,"tag":1937,"props":8263,"children":8264},{},[8265],{"type":1941,"value":8266},"Lossy compression potentially offers a tradeoff between speeding up traversal at the\ncost of possibly more shader invocations. It allows the implementation to\napproximate regions of the micromap to a single state, conservatively invoking\nshader code instead of finding the exact intersection element. Since the\nsubstitution is required to be invariantly applied, this tradeoff is deterministic.",{"type":1936,"tag":1937,"props":8268,"children":8269},{},[8270,8272,8277],{"type":1941,"value":8271},"Similar methods could also be employed by the implementation to expose more\nsubdivision levels than what it normally supports without requiring applications\nto downsample the micromap. The implementation could compress the micromap such\nthat the highest level it supports is an approximation of the levels above it,\nletting the application to finely resolve these unsupported levels in the\nshader. The limit ",{"type":1936,"tag":1997,"props":8273,"children":8275},{"className":8274},[],[8276],{"type":1941,"value":7753},{"type":1941,"value":8278}," reports\nthe new maximum subdivision levels.",{"type":1936,"tag":5231,"props":8280,"children":8282},{"id":8281},"_features_2",[8283],{"type":1941,"value":223},{"type":1936,"tag":1937,"props":8285,"children":8286},{},[8287,8289,8294,8296,8303,8305,8310],{"type":1941,"value":8288},"This extension provides a significantly different interface than ",{"type":1936,"tag":1997,"props":8290,"children":8292},{"className":8291},[],[8293],{"type":1941,"value":402},{"type":1941,"value":8295},",\ndescribed elsewhere, therefore the feature struct\n",{"type":1936,"tag":1948,"props":8297,"children":8300},{"href":8298,"rel":8299},"https://docs.vulkan.org/refpages/latest/refpages/source/VkPhysicalDeviceOpacityMicromapFeaturesKHR.html",[1952],[8301],{"type":1941,"value":8302},"VkPhysicalDeviceOpacityMicromapFeaturesKHR",{"type":1941,"value":8304},"\nis not equivalent to the feature struct from ",{"type":1936,"tag":1997,"props":8306,"children":8308},{"className":8307},[],[8309],{"type":1941,"value":402},{"type":1941,"value":4139},{"type":1936,"tag":1937,"props":8312,"children":8313},{},[8314],{"type":1941,"value":8315},"Enabling features for one of these will not enable the counterpart feature in the other extension.",{"type":1936,"tag":1937,"props":8317,"children":8318},{},[8319,8320,8326,8328,8334,8336,8342],{"type":1941,"value":2236},{"type":1936,"tag":1997,"props":8321,"children":8323},{"className":8322},[],[8324],{"type":1941,"value":8325},"VkPhysicalDeviceOpacityMicromapFeaturesEXT::micromapHostCommands",{"type":1941,"value":8327}," feature is not promoted\ndue to host commands being removed, and\n",{"type":1936,"tag":1997,"props":8329,"children":8331},{"className":8330},[],[8332],{"type":1941,"value":8333},"VkPhysicalDeviceOpacityMicromapFeaturesEXT::micromapCaptureReplay",{"type":1941,"value":8335}," is superseded with\n",{"type":1936,"tag":1997,"props":8337,"children":8339},{"className":8338},[],[8340],{"type":1941,"value":8341},"VkPhysicalDeviceAccelerationStructureFeaturesKHR ::accelerationStructureCaptureReplay",{"type":1941,"value":4139},{"type":1936,"tag":5231,"props":8344,"children":8346},{"id":8345},"_properties_2",[8347],{"type":1941,"value":7609},{"type":1936,"tag":1937,"props":8349,"children":8350},{},[8351,8353,8360,8362,8367],{"type":1941,"value":8352},"The property struct\n",{"type":1936,"tag":1948,"props":8354,"children":8357},{"href":8355,"rel":8356},"https://docs.vulkan.org/refpages/latest/refpages/source/VkPhysicalDeviceOpacityMicromapPropertiesKHR.html",[1952],[8358],{"type":1941,"value":8359},"VkPhysicalDeviceOpacityMicromapPropertiesKHR",{"type":1941,"value":8361},"\nis not equivalent to the property struct from ",{"type":1936,"tag":1997,"props":8363,"children":8365},{"className":8364},[],[8366],{"type":1941,"value":402},{"type":1941,"value":8368}," due to inclusion of\na couple new properties:",{"type":1936,"tag":2181,"props":8370,"children":8371},{},[8372,8380],{"type":1936,"tag":2185,"props":8373,"children":8374},{},[8375],{"type":1936,"tag":1997,"props":8376,"children":8378},{"className":8377},[],[8379],{"type":1941,"value":7753},{"type":1936,"tag":2185,"props":8381,"children":8382},{},[8383],{"type":1936,"tag":1997,"props":8384,"children":8386},{"className":8385},[],[8387],{"type":1941,"value":7764},{"type":1936,"tag":5231,"props":8389,"children":8391},{"id":8390},"_discardable",[8392],{"type":1941,"value":8393},"Discardable",{"type":1936,"tag":1937,"props":8395,"children":8396},{},[8397],{"type":1941,"value":8398},"The discardable property for micromaps is not promoted, and the BLAS will always hold a reference to the micromap.\nThis feature was not widely supported and has minimal benefit to memory footprint. Not promoting this reduces the\nnumber of paths that applications should support.",{"type":1936,"tag":1937,"props":8400,"children":8401},{},[8402,8404,8410],{"type":1941,"value":8403},"This also includes removal of\n",{"type":1936,"tag":1997,"props":8405,"children":8407},{"className":8406},[],[8408],{"type":1941,"value":8409},"VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_BIT_EXT",{"type":1941,"value":8411},", as this was mostly intended for use\nwith discardable micromaps where the implementation integrates it within the acceleration structure’s internal\nrepresentation.",{"type":1936,"tag":5231,"props":8413,"children":8415},{"id":8414},"_serializing_acceleration_structures",[8416],{"type":1941,"value":8417},"Serializing Acceleration Structures",{"type":1936,"tag":1937,"props":8419,"children":8420},{},[8421,8423,8429],{"type":1941,"value":8422},"Acceleration structures being serialized have references to micromaps built with them. These device addresses\nare placed in a newly defined ",{"type":1936,"tag":1997,"props":8424,"children":8426},{"className":8425},[],[8427],{"type":1941,"value":8428},"VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_OPACITY_MICROMAP_KHR",{"type":1941,"value":8430}," type block in the serialized data.",{"type":1936,"tag":2032,"props":8432,"children":8434},{"className":2034,"code":8433,"language":2036,"meta":2037,"style":2037},"typedef enum VkAccelerationStructureSerializedBlockTypeKHR {\n VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_OPACITY_MICROMAP_KHR = 0,\n VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF\n} VkAccelerationStructureSerializedBlockTypeKHR;\n",[8435],{"type":1936,"tag":1997,"props":8436,"children":8437},{"__ignoreMap":2037},[8438,8454,8474,8494],{"type":1936,"tag":2043,"props":8439,"children":8440},{"class":2045,"line":10},[8441,8445,8449],{"type":1936,"tag":2043,"props":8442,"children":8443},{"style":2055},[8444],{"type":1941,"value":2355},{"type":1936,"tag":2043,"props":8446,"children":8447},{"style":2055},[8448],{"type":1941,"value":2657},{"type":1936,"tag":2043,"props":8450,"children":8451},{"style":2049},[8452],{"type":1941,"value":8453}," VkAccelerationStructureSerializedBlockTypeKHR {\n",{"type":1936,"tag":2043,"props":8455,"children":8456},{"class":2045,"line":14},[8457,8462,8466,8470],{"type":1936,"tag":2043,"props":8458,"children":8459},{"style":2049},[8460],{"type":1941,"value":8461}," VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_OPACITY_MICROMAP_KHR ",{"type":1936,"tag":2043,"props":8463,"children":8464},{"style":2055},[8465],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8467,"children":8468},{"style":2559},[8469],{"type":1941,"value":2811},{"type":1936,"tag":2043,"props":8471,"children":8472},{"style":2049},[8473],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":8475,"children":8476},{"class":2045,"line":18},[8477,8482,8486,8490],{"type":1936,"tag":2043,"props":8478,"children":8479},{"style":2049},[8480],{"type":1941,"value":8481}," VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_MAX_ENUM_KHR ",{"type":1936,"tag":2043,"props":8483,"children":8484},{"style":2055},[8485],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8487,"children":8488},{"style":2055},[8489],{"type":1941,"value":2556},{"type":1936,"tag":2043,"props":8491,"children":8492},{"style":2559},[8493],{"type":1941,"value":4465},{"type":1936,"tag":2043,"props":8495,"children":8496},{"class":2045,"line":22},[8497],{"type":1936,"tag":2043,"props":8498,"children":8499},{"style":2049},[8500],{"type":1941,"value":8501},"} VkAccelerationStructureSerializedBlockTypeKHR;\n",{"type":1936,"tag":1937,"props":8503,"children":8504},{},[8505],{"type":1941,"value":8506},"First, a bottom-level acceleration structure defines how many blocks it contains in the serialized header:",{"type":1936,"tag":2181,"props":8508,"children":8509},{},[8510],{"type":1936,"tag":2185,"props":8511,"children":8512},{},[8513],{"type":1941,"value":8514},"A 64-bit integer consisting of two packed 32 bit values. The high 32 bits\nare 0xFFFFFFFF to indicate a block-based format, and the low 32 bits\ncontain the number of serialized blocks that follow",{"type":1936,"tag":1937,"props":8516,"children":8517},{},[8518],{"type":1941,"value":8519},"Then each block is enumerated in the header, which looks like the following:",{"type":1936,"tag":2181,"props":8521,"children":8522},{},[8523,8533,8538,8543],{"type":1936,"tag":2185,"props":8524,"children":8525},{},[8526,8528],{"type":1941,"value":8527},"A 32-bit unsigned integer set to\n",{"type":1936,"tag":1997,"props":8529,"children":8531},{"className":8530},[],[8532],{"type":1941,"value":8428},{"type":1936,"tag":2185,"props":8534,"children":8535},{},[8536],{"type":1941,"value":8537},"A 32-bit reserved value for alignment",{"type":1936,"tag":2185,"props":8539,"children":8540},{},[8541],{"type":1941,"value":8542},"A 64-bit unsigned integer indicating the number of block buffer device\naddresses that follow the block header",{"type":1936,"tag":2185,"props":8544,"children":8545},{},[8546],{"type":1941,"value":8547},"An array of 64-bit buffer device addresses pointing to micromaps,\nwith the count matching the previous value",{"type":1936,"tag":1937,"props":8549,"children":8550},{},[8551],{"type":1941,"value":8552},"The application is responsible for keeping a mapping between these addresses and their respective micromaps.\nBefore deserializing the BLAS, applications must replace them in the serialized block with the addresses of newly\ncreated micromaps, or create the micromaps with the same device addresses through capture/replay mechanisms.",{"type":1936,"tag":1937,"props":8554,"children":8555},{},[8556,8558,8563],{"type":1941,"value":8557},"Before the BLAS is used, its micromaps must be deserialized from the serialized data of the micromaps\noriginally referenced by the serialized BLAS, or replaced by newly constructed micromaps with a BLAS\nupdate if it was originally built with the\n",{"type":1936,"tag":1997,"props":8559,"children":8561},{"className":8560},[],[8562],{"type":1941,"value":5114},{"type":1941,"value":8564}," flag.",{"type":1936,"tag":1937,"props":8566,"children":8567},{},[8568],{"type":1941,"value":8569},"Applications cannot update a deserialized BLAS with a micromap data only update, it can only perform\na full micromap reference replacement build update. Implementations cannot reasonably guarantee that\nthe internal data structures are compatible for data only update between the serialize and\ndeserialize Vulkan instances.",{"type":1936,"tag":1958,"props":8571,"children":8573},{"id":8572},"_examples",[8574],{"type":1941,"value":8575},"Examples",{"type":1936,"tag":2032,"props":8577,"children":8579},{"className":2034,"code":8578,"language":2036,"meta":2037,"style":2037}," VkAccelerationStructureGeometryMicromapDataKHR micromapData = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MICROMAP_DATA_KHR,\n .usageCountsCount = usageCount,\n .pUsageCounts = &usage,\n .triangleArrayStride = 8\n };\n\n VkAccelerationStructureGeometryKHR geometry = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR,\n .pNext = µmapData,\n .geometryType = VK_GEOMETRY_TYPE_MICROMAP_KHR\n };\n\n VkAccelerationStructureBuildGeometryInfoKHR buildInfo = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR,\n .type = VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR,\n .mode = VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR,\n .geometryCount = 1,\n .pGeometries = &geometry\n };\n\n VkAccelerationStructureBuildSizesInfoKHR sizeInfo = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR,\n };\n\n vkGetAccelerationStructureBuildSizesKHR(device,\n VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR\n &buildInfo,\n NULL,\n &sizeInfo);\n\n // Create with VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR | VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n micromapBufferAddress = CreateBuffer(sizeInfo.accelerationStructureSize);\n\n // Create with VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n scratchBufferAddress = CreateBuffer(sizeInfo.buildScratchSize);\n\n VkAccelerationStructureCreateInfo2KHR createInfo = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR,\n .addressRange = bufferAddress,\n .type = VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR\n };\n\n vkCreateAccelerationStructure2KHR(device, &createInfo, NULL, µmap);\n\n buildInfo.dstAccelerationStructure = micromap;\n buildInfo.scratchData = scratchBufferAddress;\n\n // Created with VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR | VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n buildInfo.pGeometries[0].geometry.data = dataAddress;\n buildInfo.pGeometries[0].geometry.triangleArray = triangleArrayAddress;\n\n VkAccelerationStructureBuildRangeInfoKHR buildRangeInfo[1] = {};\n\n vkCmdBuildAccelerationStructuresKHR(cmdBuf, 1, &buildInfo, &buildRangeInfo);\n\n VkAccelerationStructureTrianglesOpacityMicromapKHR opacityGeometryMicromap = {\n .sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_KHR,\n .indexType = indexType,\n .indexBuffer = indexBufferAddress,\n .indexStride = indexStride,\n .baseTriangle = baseTriangle,\n .micromap = micromap\n };\n\n VkAccelerationStructureGeometryKHR bottomASGeometry = { VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR };\n\n bottomASGeometry... = ;\n bottomASGeometry.pNext = &opacityGeometryMicromap;\n\n vkGetAccelerationStructureBuildSizesKHR()\n vkCreateAccelerationStructureKHR()\n vkCmdBuildAccelerationStructureKHR()\n",[8580],{"type":1936,"tag":1997,"props":8581,"children":8582},{"__ignoreMap":2037},[8583,8600,8617,8634,8656,8673,8681,8688,8704,8721,8742,8759,8766,8773,8789,8806,8823,8840,8860,8881,8888,8895,8911,8928,8935,8942,8955,8963,8980,8992,9008,9015,9024,9046,9053,9061,9082,9089,9105,9122,9139,9156,9163,9170,9218,9225,9242,9259,9266,9274,9309,9342,9349,9384,9391,9436,9443,9459,9475,9492,9509,9526,9543,9560,9567,9574,9591,9598,9615,9636,9643,9655,9667],{"type":1936,"tag":2043,"props":8584,"children":8585},{"class":2045,"line":10},[8586,8591,8595],{"type":1936,"tag":2043,"props":8587,"children":8588},{"style":2049},[8589],{"type":1941,"value":8590}," VkAccelerationStructureGeometryMicromapDataKHR micromapData ",{"type":1936,"tag":2043,"props":8592,"children":8593},{"style":2055},[8594],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8596,"children":8597},{"style":2049},[8598],{"type":1941,"value":8599}," {\n",{"type":1936,"tag":2043,"props":8601,"children":8602},{"class":2045,"line":14},[8603,8608,8612],{"type":1936,"tag":2043,"props":8604,"children":8605},{"style":2049},[8606],{"type":1941,"value":8607}," .sType ",{"type":1936,"tag":2043,"props":8609,"children":8610},{"style":2055},[8611],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8613,"children":8614},{"style":2049},[8615],{"type":1941,"value":8616}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MICROMAP_DATA_KHR,\n",{"type":1936,"tag":2043,"props":8618,"children":8619},{"class":2045,"line":18},[8620,8625,8629],{"type":1936,"tag":2043,"props":8621,"children":8622},{"style":2049},[8623],{"type":1941,"value":8624}," .usageCountsCount ",{"type":1936,"tag":2043,"props":8626,"children":8627},{"style":2055},[8628],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8630,"children":8631},{"style":2049},[8632],{"type":1941,"value":8633}," usageCount,\n",{"type":1936,"tag":2043,"props":8635,"children":8636},{"class":2045,"line":22},[8637,8642,8646,8651],{"type":1936,"tag":2043,"props":8638,"children":8639},{"style":2049},[8640],{"type":1941,"value":8641}," .pUsageCounts ",{"type":1936,"tag":2043,"props":8643,"children":8644},{"style":2055},[8645],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8647,"children":8648},{"style":2055},[8649],{"type":1941,"value":8650}," &",{"type":1936,"tag":2043,"props":8652,"children":8653},{"style":2049},[8654],{"type":1941,"value":8655},"usage,\n",{"type":1936,"tag":2043,"props":8657,"children":8658},{"class":2045,"line":26},[8659,8664,8668],{"type":1936,"tag":2043,"props":8660,"children":8661},{"style":2049},[8662],{"type":1941,"value":8663}," .triangleArrayStride ",{"type":1936,"tag":2043,"props":8665,"children":8666},{"style":2055},[8667],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8669,"children":8670},{"style":2559},[8671],{"type":1941,"value":8672}," 8\n",{"type":1936,"tag":2043,"props":8674,"children":8675},{"class":2045,"line":30},[8676],{"type":1936,"tag":2043,"props":8677,"children":8678},{"style":2049},[8679],{"type":1941,"value":8680}," };\n",{"type":1936,"tag":2043,"props":8682,"children":8683},{"class":2045,"line":34},[8684],{"type":1936,"tag":2043,"props":8685,"children":8686},{"emptyLinePlaceholder":244},[8687],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":8689,"children":8690},{"class":2045,"line":38},[8691,8696,8700],{"type":1936,"tag":2043,"props":8692,"children":8693},{"style":2049},[8694],{"type":1941,"value":8695}," VkAccelerationStructureGeometryKHR geometry ",{"type":1936,"tag":2043,"props":8697,"children":8698},{"style":2055},[8699],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8701,"children":8702},{"style":2049},[8703],{"type":1941,"value":8599},{"type":1936,"tag":2043,"props":8705,"children":8706},{"class":2045,"line":42},[8707,8712,8716],{"type":1936,"tag":2043,"props":8708,"children":8709},{"style":2049},[8710],{"type":1941,"value":8711}," .sType ",{"type":1936,"tag":2043,"props":8713,"children":8714},{"style":2055},[8715],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8717,"children":8718},{"style":2049},[8719],{"type":1941,"value":8720}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR,\n",{"type":1936,"tag":2043,"props":8722,"children":8723},{"class":2045,"line":46},[8724,8729,8733,8737],{"type":1936,"tag":2043,"props":8725,"children":8726},{"style":2049},[8727],{"type":1941,"value":8728}," .pNext ",{"type":1936,"tag":2043,"props":8730,"children":8731},{"style":2055},[8732],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8734,"children":8735},{"style":2055},[8736],{"type":1941,"value":8650},{"type":1936,"tag":2043,"props":8738,"children":8739},{"style":2049},[8740],{"type":1941,"value":8741},"micromapData,\n",{"type":1936,"tag":2043,"props":8743,"children":8744},{"class":2045,"line":50},[8745,8750,8754],{"type":1936,"tag":2043,"props":8746,"children":8747},{"style":2049},[8748],{"type":1941,"value":8749}," .geometryType ",{"type":1936,"tag":2043,"props":8751,"children":8752},{"style":2055},[8753],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8755,"children":8756},{"style":2049},[8757],{"type":1941,"value":8758}," VK_GEOMETRY_TYPE_MICROMAP_KHR\n",{"type":1936,"tag":2043,"props":8760,"children":8761},{"class":2045,"line":54},[8762],{"type":1936,"tag":2043,"props":8763,"children":8764},{"style":2049},[8765],{"type":1941,"value":8680},{"type":1936,"tag":2043,"props":8767,"children":8768},{"class":2045,"line":58},[8769],{"type":1936,"tag":2043,"props":8770,"children":8771},{"emptyLinePlaceholder":244},[8772],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":8774,"children":8775},{"class":2045,"line":62},[8776,8781,8785],{"type":1936,"tag":2043,"props":8777,"children":8778},{"style":2049},[8779],{"type":1941,"value":8780}," VkAccelerationStructureBuildGeometryInfoKHR buildInfo ",{"type":1936,"tag":2043,"props":8782,"children":8783},{"style":2055},[8784],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8786,"children":8787},{"style":2049},[8788],{"type":1941,"value":8599},{"type":1936,"tag":2043,"props":8790,"children":8791},{"class":2045,"line":66},[8792,8797,8801],{"type":1936,"tag":2043,"props":8793,"children":8794},{"style":2049},[8795],{"type":1941,"value":8796}," .sType ",{"type":1936,"tag":2043,"props":8798,"children":8799},{"style":2055},[8800],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8802,"children":8803},{"style":2049},[8804],{"type":1941,"value":8805}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR,\n",{"type":1936,"tag":2043,"props":8807,"children":8808},{"class":2045,"line":70},[8809,8814,8818],{"type":1936,"tag":2043,"props":8810,"children":8811},{"style":2049},[8812],{"type":1941,"value":8813}," .type ",{"type":1936,"tag":2043,"props":8815,"children":8816},{"style":2055},[8817],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8819,"children":8820},{"style":2049},[8821],{"type":1941,"value":8822}," VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR,\n",{"type":1936,"tag":2043,"props":8824,"children":8825},{"class":2045,"line":74},[8826,8831,8835],{"type":1936,"tag":2043,"props":8827,"children":8828},{"style":2049},[8829],{"type":1941,"value":8830}," .mode ",{"type":1936,"tag":2043,"props":8832,"children":8833},{"style":2055},[8834],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8836,"children":8837},{"style":2049},[8838],{"type":1941,"value":8839}," VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR,\n",{"type":1936,"tag":2043,"props":8841,"children":8842},{"class":2045,"line":78},[8843,8848,8852,8856],{"type":1936,"tag":2043,"props":8844,"children":8845},{"style":2049},[8846],{"type":1941,"value":8847}," .geometryCount ",{"type":1936,"tag":2043,"props":8849,"children":8850},{"style":2055},[8851],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8853,"children":8854},{"style":2559},[8855],{"type":1941,"value":2832},{"type":1936,"tag":2043,"props":8857,"children":8858},{"style":2049},[8859],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":8861,"children":8862},{"class":2045,"line":82},[8863,8868,8872,8876],{"type":1936,"tag":2043,"props":8864,"children":8865},{"style":2049},[8866],{"type":1941,"value":8867}," .pGeometries ",{"type":1936,"tag":2043,"props":8869,"children":8870},{"style":2055},[8871],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8873,"children":8874},{"style":2055},[8875],{"type":1941,"value":8650},{"type":1936,"tag":2043,"props":8877,"children":8878},{"style":2049},[8879],{"type":1941,"value":8880},"geometry\n",{"type":1936,"tag":2043,"props":8882,"children":8883},{"class":2045,"line":86},[8884],{"type":1936,"tag":2043,"props":8885,"children":8886},{"style":2049},[8887],{"type":1941,"value":8680},{"type":1936,"tag":2043,"props":8889,"children":8890},{"class":2045,"line":90},[8891],{"type":1936,"tag":2043,"props":8892,"children":8893},{"emptyLinePlaceholder":244},[8894],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":8896,"children":8897},{"class":2045,"line":94},[8898,8903,8907],{"type":1936,"tag":2043,"props":8899,"children":8900},{"style":2049},[8901],{"type":1941,"value":8902}," VkAccelerationStructureBuildSizesInfoKHR sizeInfo ",{"type":1936,"tag":2043,"props":8904,"children":8905},{"style":2055},[8906],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8908,"children":8909},{"style":2049},[8910],{"type":1941,"value":8599},{"type":1936,"tag":2043,"props":8912,"children":8913},{"class":2045,"line":98},[8914,8919,8923],{"type":1936,"tag":2043,"props":8915,"children":8916},{"style":2049},[8917],{"type":1941,"value":8918}," .sType ",{"type":1936,"tag":2043,"props":8920,"children":8921},{"style":2055},[8922],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":8924,"children":8925},{"style":2049},[8926],{"type":1941,"value":8927}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR,\n",{"type":1936,"tag":2043,"props":8929,"children":8930},{"class":2045,"line":102},[8931],{"type":1936,"tag":2043,"props":8932,"children":8933},{"style":2049},[8934],{"type":1941,"value":8680},{"type":1936,"tag":2043,"props":8936,"children":8937},{"class":2045,"line":106},[8938],{"type":1936,"tag":2043,"props":8939,"children":8940},{"emptyLinePlaceholder":244},[8941],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":8943,"children":8944},{"class":2045,"line":110},[8945,8950],{"type":1936,"tag":2043,"props":8946,"children":8947},{"style":2066},[8948],{"type":1941,"value":8949}," vkGetAccelerationStructureBuildSizesKHR",{"type":1936,"tag":2043,"props":8951,"children":8952},{"style":2049},[8953],{"type":1941,"value":8954},"(device,\n",{"type":1936,"tag":2043,"props":8956,"children":8957},{"class":2045,"line":114},[8958],{"type":1936,"tag":2043,"props":8959,"children":8960},{"style":2049},[8961],{"type":1941,"value":8962}," VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR\n",{"type":1936,"tag":2043,"props":8964,"children":8965},{"class":2045,"line":118},[8966,8971,8976],{"type":1936,"tag":2043,"props":8967,"children":8968},{"style":2055},[8969],{"type":1941,"value":8970}," &",{"type":1936,"tag":2043,"props":8972,"children":8973},{"style":2085},[8974],{"type":1941,"value":8975},"buildInfo",{"type":1936,"tag":2043,"props":8977,"children":8978},{"style":2049},[8979],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":8981,"children":8982},{"class":2045,"line":122},[8983,8988],{"type":1936,"tag":2043,"props":8984,"children":8985},{"style":2559},[8986],{"type":1941,"value":8987}," NULL",{"type":1936,"tag":2043,"props":8989,"children":8990},{"style":2049},[8991],{"type":1941,"value":2092},{"type":1936,"tag":2043,"props":8993,"children":8994},{"class":2045,"line":126},[8995,8999,9004],{"type":1936,"tag":2043,"props":8996,"children":8997},{"style":2055},[8998],{"type":1941,"value":8970},{"type":1936,"tag":2043,"props":9000,"children":9001},{"style":2085},[9002],{"type":1941,"value":9003},"sizeInfo",{"type":1936,"tag":2043,"props":9005,"children":9006},{"style":2049},[9007],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":9009,"children":9010},{"class":2045,"line":130},[9011],{"type":1936,"tag":2043,"props":9012,"children":9013},{"emptyLinePlaceholder":244},[9014],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9016,"children":9017},{"class":2045,"line":134},[9018],{"type":1936,"tag":2043,"props":9019,"children":9021},{"style":9020},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[9022],{"type":1941,"value":9023}," // Create with VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR | VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n",{"type":1936,"tag":2043,"props":9025,"children":9026},{"class":2045,"line":138},[9027,9032,9036,9041],{"type":1936,"tag":2043,"props":9028,"children":9029},{"style":2049},[9030],{"type":1941,"value":9031}," micromapBufferAddress ",{"type":1936,"tag":2043,"props":9033,"children":9034},{"style":2055},[9035],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9037,"children":9038},{"style":2066},[9039],{"type":1941,"value":9040}," CreateBuffer",{"type":1936,"tag":2043,"props":9042,"children":9043},{"style":2049},[9044],{"type":1941,"value":9045},"(sizeInfo.accelerationStructureSize);\n",{"type":1936,"tag":2043,"props":9047,"children":9048},{"class":2045,"line":142},[9049],{"type":1936,"tag":2043,"props":9050,"children":9051},{"emptyLinePlaceholder":244},[9052],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9054,"children":9055},{"class":2045,"line":146},[9056],{"type":1936,"tag":2043,"props":9057,"children":9058},{"style":9020},[9059],{"type":1941,"value":9060}," // Create with VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n",{"type":1936,"tag":2043,"props":9062,"children":9063},{"class":2045,"line":150},[9064,9069,9073,9077],{"type":1936,"tag":2043,"props":9065,"children":9066},{"style":2049},[9067],{"type":1941,"value":9068}," scratchBufferAddress ",{"type":1936,"tag":2043,"props":9070,"children":9071},{"style":2055},[9072],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9074,"children":9075},{"style":2066},[9076],{"type":1941,"value":9040},{"type":1936,"tag":2043,"props":9078,"children":9079},{"style":2049},[9080],{"type":1941,"value":9081},"(sizeInfo.buildScratchSize);\n",{"type":1936,"tag":2043,"props":9083,"children":9084},{"class":2045,"line":154},[9085],{"type":1936,"tag":2043,"props":9086,"children":9087},{"emptyLinePlaceholder":244},[9088],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9090,"children":9091},{"class":2045,"line":158},[9092,9097,9101],{"type":1936,"tag":2043,"props":9093,"children":9094},{"style":2049},[9095],{"type":1941,"value":9096}," VkAccelerationStructureCreateInfo2KHR createInfo ",{"type":1936,"tag":2043,"props":9098,"children":9099},{"style":2055},[9100],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9102,"children":9103},{"style":2049},[9104],{"type":1941,"value":8599},{"type":1936,"tag":2043,"props":9106,"children":9107},{"class":2045,"line":162},[9108,9113,9117],{"type":1936,"tag":2043,"props":9109,"children":9110},{"style":2049},[9111],{"type":1941,"value":9112}," .sType ",{"type":1936,"tag":2043,"props":9114,"children":9115},{"style":2055},[9116],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9118,"children":9119},{"style":2049},[9120],{"type":1941,"value":9121}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR,\n",{"type":1936,"tag":2043,"props":9123,"children":9124},{"class":2045,"line":166},[9125,9130,9134],{"type":1936,"tag":2043,"props":9126,"children":9127},{"style":2049},[9128],{"type":1941,"value":9129}," .addressRange ",{"type":1936,"tag":2043,"props":9131,"children":9132},{"style":2055},[9133],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9135,"children":9136},{"style":2049},[9137],{"type":1941,"value":9138}," bufferAddress,\n",{"type":1936,"tag":2043,"props":9140,"children":9141},{"class":2045,"line":170},[9142,9147,9151],{"type":1936,"tag":2043,"props":9143,"children":9144},{"style":2049},[9145],{"type":1941,"value":9146}," .type ",{"type":1936,"tag":2043,"props":9148,"children":9149},{"style":2055},[9150],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9152,"children":9153},{"style":2049},[9154],{"type":1941,"value":9155}," VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR\n",{"type":1936,"tag":2043,"props":9157,"children":9158},{"class":2045,"line":174},[9159],{"type":1936,"tag":2043,"props":9160,"children":9161},{"style":2049},[9162],{"type":1941,"value":8680},{"type":1936,"tag":2043,"props":9164,"children":9165},{"class":2045,"line":178},[9166],{"type":1936,"tag":2043,"props":9167,"children":9168},{"emptyLinePlaceholder":244},[9169],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9171,"children":9172},{"class":2045,"line":182},[9173,9178,9183,9188,9193,9197,9202,9206,9210,9214],{"type":1936,"tag":2043,"props":9174,"children":9175},{"style":2066},[9176],{"type":1941,"value":9177}," vkCreateAccelerationStructure2KHR",{"type":1936,"tag":2043,"props":9179,"children":9180},{"style":2049},[9181],{"type":1941,"value":9182},"(device, ",{"type":1936,"tag":2043,"props":9184,"children":9185},{"style":2055},[9186],{"type":1941,"value":9187},"&",{"type":1936,"tag":2043,"props":9189,"children":9190},{"style":2085},[9191],{"type":1941,"value":9192},"createInfo",{"type":1936,"tag":2043,"props":9194,"children":9195},{"style":2049},[9196],{"type":1941,"value":2244},{"type":1936,"tag":2043,"props":9198,"children":9199},{"style":2559},[9200],{"type":1941,"value":9201},"NULL",{"type":1936,"tag":2043,"props":9203,"children":9204},{"style":2049},[9205],{"type":1941,"value":2244},{"type":1936,"tag":2043,"props":9207,"children":9208},{"style":2055},[9209],{"type":1941,"value":9187},{"type":1936,"tag":2043,"props":9211,"children":9212},{"style":2085},[9213],{"type":1941,"value":184},{"type":1936,"tag":2043,"props":9215,"children":9216},{"style":2049},[9217],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":9219,"children":9220},{"class":2045,"line":186},[9221],{"type":1936,"tag":2043,"props":9222,"children":9223},{"emptyLinePlaceholder":244},[9224],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9226,"children":9227},{"class":2045,"line":190},[9228,9233,9237],{"type":1936,"tag":2043,"props":9229,"children":9230},{"style":2049},[9231],{"type":1941,"value":9232}," buildInfo.dstAccelerationStructure ",{"type":1936,"tag":2043,"props":9234,"children":9235},{"style":2055},[9236],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9238,"children":9239},{"style":2049},[9240],{"type":1941,"value":9241}," micromap;\n",{"type":1936,"tag":2043,"props":9243,"children":9244},{"class":2045,"line":194},[9245,9250,9254],{"type":1936,"tag":2043,"props":9246,"children":9247},{"style":2049},[9248],{"type":1941,"value":9249}," buildInfo.scratchData ",{"type":1936,"tag":2043,"props":9251,"children":9252},{"style":2055},[9253],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9255,"children":9256},{"style":2049},[9257],{"type":1941,"value":9258}," scratchBufferAddress;\n",{"type":1936,"tag":2043,"props":9260,"children":9261},{"class":2045,"line":198},[9262],{"type":1936,"tag":2043,"props":9263,"children":9264},{"emptyLinePlaceholder":244},[9265],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9267,"children":9268},{"class":2045,"line":202},[9269],{"type":1936,"tag":2043,"props":9270,"children":9271},{"style":9020},[9272],{"type":1941,"value":9273}," // Created with VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR | VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT\n",{"type":1936,"tag":2043,"props":9275,"children":9276},{"class":2045,"line":206},[9277,9282,9286,9291,9295,9300,9304],{"type":1936,"tag":2043,"props":9278,"children":9279},{"style":2049},[9280],{"type":1941,"value":9281}," buildInfo.",{"type":1936,"tag":2043,"props":9283,"children":9284},{"style":2085},[9285],{"type":1941,"value":3424},{"type":1936,"tag":2043,"props":9287,"children":9288},{"style":2049},[9289],{"type":1941,"value":9290},"[",{"type":1936,"tag":2043,"props":9292,"children":9293},{"style":2559},[9294],{"type":1941,"value":2466},{"type":1936,"tag":2043,"props":9296,"children":9297},{"style":2049},[9298],{"type":1941,"value":9299},"].geometry.data ",{"type":1936,"tag":2043,"props":9301,"children":9302},{"style":2055},[9303],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9305,"children":9306},{"style":2049},[9307],{"type":1941,"value":9308}," dataAddress;\n",{"type":1936,"tag":2043,"props":9310,"children":9311},{"class":2045,"line":210},[9312,9316,9320,9324,9328,9333,9337],{"type":1936,"tag":2043,"props":9313,"children":9314},{"style":2049},[9315],{"type":1941,"value":9281},{"type":1936,"tag":2043,"props":9317,"children":9318},{"style":2085},[9319],{"type":1941,"value":3424},{"type":1936,"tag":2043,"props":9321,"children":9322},{"style":2049},[9323],{"type":1941,"value":9290},{"type":1936,"tag":2043,"props":9325,"children":9326},{"style":2559},[9327],{"type":1941,"value":2466},{"type":1936,"tag":2043,"props":9329,"children":9330},{"style":2049},[9331],{"type":1941,"value":9332},"].geometry.triangleArray ",{"type":1936,"tag":2043,"props":9334,"children":9335},{"style":2055},[9336],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9338,"children":9339},{"style":2049},[9340],{"type":1941,"value":9341}," triangleArrayAddress;\n",{"type":1936,"tag":2043,"props":9343,"children":9344},{"class":2045,"line":214},[9345],{"type":1936,"tag":2043,"props":9346,"children":9347},{"emptyLinePlaceholder":244},[9348],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9350,"children":9351},{"class":2045,"line":218},[9352,9357,9362,9366,9370,9375,9379],{"type":1936,"tag":2043,"props":9353,"children":9354},{"style":2049},[9355],{"type":1941,"value":9356}," VkAccelerationStructureBuildRangeInfoKHR ",{"type":1936,"tag":2043,"props":9358,"children":9359},{"style":2085},[9360],{"type":1941,"value":9361},"buildRangeInfo",{"type":1936,"tag":2043,"props":9363,"children":9364},{"style":2049},[9365],{"type":1941,"value":9290},{"type":1936,"tag":2043,"props":9367,"children":9368},{"style":2559},[9369],{"type":1941,"value":4796},{"type":1936,"tag":2043,"props":9371,"children":9372},{"style":2049},[9373],{"type":1941,"value":9374},"] ",{"type":1936,"tag":2043,"props":9376,"children":9377},{"style":2055},[9378],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9380,"children":9381},{"style":2049},[9382],{"type":1941,"value":9383}," {};\n",{"type":1936,"tag":2043,"props":9385,"children":9386},{"class":2045,"line":222},[9387],{"type":1936,"tag":2043,"props":9388,"children":9389},{"emptyLinePlaceholder":244},[9390],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9392,"children":9393},{"class":2045,"line":226},[9394,9399,9404,9408,9412,9416,9420,9424,9428,9432],{"type":1936,"tag":2043,"props":9395,"children":9396},{"style":2066},[9397],{"type":1941,"value":9398}," vkCmdBuildAccelerationStructuresKHR",{"type":1936,"tag":2043,"props":9400,"children":9401},{"style":2049},[9402],{"type":1941,"value":9403},"(cmdBuf, ",{"type":1936,"tag":2043,"props":9405,"children":9406},{"style":2559},[9407],{"type":1941,"value":4796},{"type":1936,"tag":2043,"props":9409,"children":9410},{"style":2049},[9411],{"type":1941,"value":2244},{"type":1936,"tag":2043,"props":9413,"children":9414},{"style":2055},[9415],{"type":1941,"value":9187},{"type":1936,"tag":2043,"props":9417,"children":9418},{"style":2085},[9419],{"type":1941,"value":8975},{"type":1936,"tag":2043,"props":9421,"children":9422},{"style":2049},[9423],{"type":1941,"value":2244},{"type":1936,"tag":2043,"props":9425,"children":9426},{"style":2055},[9427],{"type":1941,"value":9187},{"type":1936,"tag":2043,"props":9429,"children":9430},{"style":2085},[9431],{"type":1941,"value":9361},{"type":1936,"tag":2043,"props":9433,"children":9434},{"style":2049},[9435],{"type":1941,"value":2179},{"type":1936,"tag":2043,"props":9437,"children":9438},{"class":2045,"line":230},[9439],{"type":1936,"tag":2043,"props":9440,"children":9441},{"emptyLinePlaceholder":244},[9442],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9444,"children":9445},{"class":2045,"line":234},[9446,9451,9455],{"type":1936,"tag":2043,"props":9447,"children":9448},{"style":2049},[9449],{"type":1941,"value":9450}," VkAccelerationStructureTrianglesOpacityMicromapKHR opacityGeometryMicromap ",{"type":1936,"tag":2043,"props":9452,"children":9453},{"style":2055},[9454],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9456,"children":9457},{"style":2049},[9458],{"type":1941,"value":8599},{"type":1936,"tag":2043,"props":9460,"children":9461},{"class":2045,"line":238},[9462,9466,9470],{"type":1936,"tag":2043,"props":9463,"children":9464},{"style":2049},[9465],{"type":1941,"value":9112},{"type":1936,"tag":2043,"props":9467,"children":9468},{"style":2055},[9469],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9471,"children":9472},{"style":2049},[9473],{"type":1941,"value":9474}," VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_KHR,\n",{"type":1936,"tag":2043,"props":9476,"children":9477},{"class":2045,"line":1801},[9478,9483,9487],{"type":1936,"tag":2043,"props":9479,"children":9480},{"style":2049},[9481],{"type":1941,"value":9482}," .indexType ",{"type":1936,"tag":2043,"props":9484,"children":9485},{"style":2055},[9486],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9488,"children":9489},{"style":2049},[9490],{"type":1941,"value":9491}," indexType,\n",{"type":1936,"tag":2043,"props":9493,"children":9494},{"class":2045,"line":1222},[9495,9500,9504],{"type":1936,"tag":2043,"props":9496,"children":9497},{"style":2049},[9498],{"type":1941,"value":9499}," .indexBuffer ",{"type":1936,"tag":2043,"props":9501,"children":9502},{"style":2055},[9503],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9505,"children":9506},{"style":2049},[9507],{"type":1941,"value":9508}," indexBufferAddress,\n",{"type":1936,"tag":2043,"props":9510,"children":9511},{"class":2045,"line":1145},[9512,9517,9521],{"type":1936,"tag":2043,"props":9513,"children":9514},{"style":2049},[9515],{"type":1941,"value":9516}," .indexStride ",{"type":1936,"tag":2043,"props":9518,"children":9519},{"style":2055},[9520],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9522,"children":9523},{"style":2049},[9524],{"type":1941,"value":9525}," indexStride,\n",{"type":1936,"tag":2043,"props":9527,"children":9528},{"class":2045,"line":971},[9529,9534,9538],{"type":1936,"tag":2043,"props":9530,"children":9531},{"style":2049},[9532],{"type":1941,"value":9533}," .baseTriangle ",{"type":1936,"tag":2043,"props":9535,"children":9536},{"style":2055},[9537],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9539,"children":9540},{"style":2049},[9541],{"type":1941,"value":9542}," baseTriangle,\n",{"type":1936,"tag":2043,"props":9544,"children":9545},{"class":2045,"line":1568},[9546,9551,9555],{"type":1936,"tag":2043,"props":9547,"children":9548},{"style":2049},[9549],{"type":1941,"value":9550}," .micromap ",{"type":1936,"tag":2043,"props":9552,"children":9553},{"style":2055},[9554],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9556,"children":9557},{"style":2049},[9558],{"type":1941,"value":9559}," micromap\n",{"type":1936,"tag":2043,"props":9561,"children":9562},{"class":2045,"line":1383},[9563],{"type":1936,"tag":2043,"props":9564,"children":9565},{"style":2049},[9566],{"type":1941,"value":8680},{"type":1936,"tag":2043,"props":9568,"children":9569},{"class":2045,"line":909},[9570],{"type":1936,"tag":2043,"props":9571,"children":9572},{"emptyLinePlaceholder":244},[9573],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9575,"children":9576},{"class":2045,"line":915},[9577,9582,9586],{"type":1936,"tag":2043,"props":9578,"children":9579},{"style":2049},[9580],{"type":1941,"value":9581}," VkAccelerationStructureGeometryKHR bottomASGeometry ",{"type":1936,"tag":2043,"props":9583,"children":9584},{"style":2055},[9585],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9587,"children":9588},{"style":2049},[9589],{"type":1941,"value":9590}," { VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR };\n",{"type":1936,"tag":2043,"props":9592,"children":9593},{"class":2045,"line":954},[9594],{"type":1936,"tag":2043,"props":9595,"children":9596},{"emptyLinePlaceholder":244},[9597],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9599,"children":9600},{"class":2045,"line":451},[9601,9606,9610],{"type":1936,"tag":2043,"props":9602,"children":9603},{"style":2049},[9604],{"type":1941,"value":9605}," bottomASGeometry... ",{"type":1936,"tag":2043,"props":9607,"children":9608},{"style":2055},[9609],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9611,"children":9612},{"style":2049},[9613],{"type":1941,"value":9614}," ;\n",{"type":1936,"tag":2043,"props":9616,"children":9617},{"class":2045,"line":805},[9618,9623,9627,9631],{"type":1936,"tag":2043,"props":9619,"children":9620},{"style":2049},[9621],{"type":1941,"value":9622}," bottomASGeometry.pNext ",{"type":1936,"tag":2043,"props":9624,"children":9625},{"style":2055},[9626],{"type":1941,"value":2551},{"type":1936,"tag":2043,"props":9628,"children":9629},{"style":2055},[9630],{"type":1941,"value":8650},{"type":1936,"tag":2043,"props":9632,"children":9633},{"style":2049},[9634],{"type":1941,"value":9635},"opacityGeometryMicromap;\n",{"type":1936,"tag":2043,"props":9637,"children":9638},{"class":2045,"line":1249},[9639],{"type":1936,"tag":2043,"props":9640,"children":9641},{"emptyLinePlaceholder":244},[9642],{"type":1941,"value":3121},{"type":1936,"tag":2043,"props":9644,"children":9645},{"class":2045,"line":1149},[9646,9650],{"type":1936,"tag":2043,"props":9647,"children":9648},{"style":2066},[9649],{"type":1941,"value":8949},{"type":1936,"tag":2043,"props":9651,"children":9652},{"style":2049},[9653],{"type":1941,"value":9654},"()\n",{"type":1936,"tag":2043,"props":9656,"children":9657},{"class":2045,"line":1185},[9658,9663],{"type":1936,"tag":2043,"props":9659,"children":9660},{"style":2066},[9661],{"type":1941,"value":9662}," vkCreateAccelerationStructureKHR",{"type":1936,"tag":2043,"props":9664,"children":9665},{"style":2049},[9666],{"type":1941,"value":9654},{"type":1936,"tag":2043,"props":9668,"children":9669},{"class":2045,"line":1181},[9670,9675],{"type":1936,"tag":2043,"props":9671,"children":9672},{"style":2066},[9673],{"type":1941,"value":9674}," vkCmdBuildAccelerationStructureKHR",{"type":1936,"tag":2043,"props":9676,"children":9677},{"style":2049},[9678],{"type":1941,"value":9654},{"type":1936,"tag":1958,"props":9680,"children":9682},{"id":9681},"_issues",[9683],{"type":1941,"value":9684},"Issues",{"type":1936,"tag":2020,"props":9686,"children":9688},{"id":9687},"_resolved_are_there_any_issues_that_belong_here",[9689],{"type":1941,"value":9690},"RESOLVED: Are there any issues that belong here?",{"type":1936,"tag":1937,"props":9692,"children":9693},{},[9694],{"type":1941,"value":9695},"All of the issues are in the spec documents.",{"type":1936,"tag":9697,"props":9698,"children":9699},"style",{},[9700],{"type":1941,"value":9701},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":2037,"searchDepth":14,"depth":14,"links":9703},[9704,9705,9706,9716,9717],{"id":1960,"depth":14,"text":1963},{"id":1971,"depth":14,"text":1974},{"id":1987,"depth":14,"text":1990,"children":9707},[9708,9709,9710,9711,9712,9713,9714,9715],{"id":2022,"depth":18,"text":2025},{"id":2486,"depth":18,"text":2489},{"id":2955,"depth":18,"text":2303},{"id":4501,"depth":18,"text":4504},{"id":5862,"depth":18,"text":5865},{"id":7530,"depth":18,"text":223},{"id":7606,"depth":18,"text":7609},{"id":7769,"depth":18,"text":7772},{"id":8572,"depth":14,"text":8575},{"id":9681,"depth":14,"text":9684,"children":9718},[9719],{"id":9687,"depth":18,"text":9690},"markdown",1778234276797]