1// Copyright 2014-2021 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5// :regtitle: is explained in 6// http://discuss.asciidoctor.org/How-to-add-markup-to-author-information-in-document-title-td6488.html 7= Vulkan^®^ {revnumber} - A Specification {apititle} 8:regtitle: pass:q,r[^®^] 9The Khronos{regtitle} Vulkan Working Group 10:data-uri: 11:icons: font 12:toc2: 13:toclevels: 2 14:numbered: 15:source-highlighter: rouge 16:rouge-style: github 17 18// Various special / math symbols. This is easier to edit with than Unicode. 19include::config/attribs.txt[] 20 21// Table of contents is inserted here 22toc::[] 23 24:leveloffset: 1 25 26<<<< 27 28[[preamble]] 29= Preamble 30 31include::copyright-spec.txt[] 32 33:test: 0 34ifeval::["{test}"=="1"] 35 36// Include or insert trivial test markup here, to bypass building full spec 37// include::chapters/textest.txt[] 38 39include::chapters/introduction.txt[] 40 41endif::[] 42 43ifeval::["{test}"!="1"] 44include::chapters/introduction.txt[] 45 46include::chapters/fundamentals.txt[] 47 48include::chapters/initialization.txt[] 49 50include::chapters/devsandqueues.txt[] 51 52include::chapters/cmdbuffers.txt[] 53 54include::chapters/synchronization.txt[] 55 56include::chapters/renderpass.txt[] 57 58include::chapters/shaders.txt[] 59 60include::chapters/pipelines.txt[] 61 62include::chapters/memory.txt[] 63 64include::chapters/resources.txt[] 65 66include::chapters/samplers.txt[] 67 68include::chapters/descriptorsets.txt[] 69 70include::chapters/interfaces.txt[] 71 72include::chapters/textures.txt[] 73 74ifdef::VK_EXT_fragment_density_map[] 75include::chapters/fragmentdensitymapops.txt[] 76endif::VK_EXT_fragment_density_map[] 77 78include::chapters/queries.txt[] 79 80// Transfer operations 81include::chapters/clears.txt[] 82 83include::chapters/copies.txt[] 84 85// Graphics Operations 86include::chapters/drawing.txt[] 87 88include::chapters/fxvertex.txt[] 89 90include::chapters/tessellation.txt[] 91 92include::chapters/geometry.txt[] 93 94ifdef::VK_NV_mesh_shader[] 95include::chapters/VK_NV_mesh_shader/mesh.txt[] 96endif::VK_NV_mesh_shader[] 97 98include::chapters/vertexpostproc.txt[] 99 100include::chapters/primsrast.txt[] 101 102include::chapters/fragops.txt[] 103 104include::chapters/framebuffer.txt[] 105 106// Compute 107include::chapters/dispatch.txt[] 108 109// Device Generated Commands 110ifdef::VK_NV_device_generated_commands[] 111include::chapters/VK_NV_device_generated_commands/generatedcommands.txt[] 112endif::VK_NV_device_generated_commands[] 113 114// Sparse 115include::chapters/sparsemem.txt[] 116 117ifdef::VK_KHR_surface[] 118include::chapters/VK_KHR_surface/wsi.txt[] 119endif::VK_KHR_surface[] 120 121// Deferred host ops 122ifdef::VK_KHR_deferred_host_operations[] 123include::chapters/VK_KHR_deferred_host_operations/deferred_host_operations.txt[] 124endif::VK_KHR_deferred_host_operations[] 125 126// Private data 127ifdef::VK_EXT_private_data[] 128include::chapters/VK_EXT_private_data.txt[] 129endif::VK_EXT_private_data[] 130 131// Acceleration structures 132ifdef::VK_NV_ray_tracing,VK_KHR_acceleration_structure[] 133include::chapters/accelstructures.txt[] 134endif::VK_NV_ray_tracing,VK_KHR_acceleration_structure[] 135 136// Ray traversal 137ifdef::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline,VK_KHR_ray_query[] 138include::chapters/raytraversal.txt[] 139endif::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline,VK_KHR_ray_query[] 140 141// Ray tracing 142ifdef::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline[] 143include::chapters/raytracing.txt[] 144endif::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline[] 145 146// Vulkan Video extensions 147ifdef::VK_KHR_video_queue[] 148include::chapters/video_extensions.txt[] 149endif::VK_KHR_video_queue[] 150 151ifdef::VK_KHR_video_decode_queue[] 152include::chapters/video_decode_extensions.txt[] 153endif::VK_KHR_video_decode_queue[] 154 155ifdef::VK_EXT_video_decode_h264[] 156include::chapters/video_decode_h264_extensions.txt[] 157endif::VK_EXT_video_decode_h264[] 158 159ifdef::VK_EXT_video_decode_h265[] 160include::chapters/video_decode_h265_extensions.txt[] 161endif::VK_EXT_video_decode_h265[] 162 163ifdef::VK_KHR_video_encode_queue[] 164include::chapters/video_encode_extensions.txt[] 165endif::VK_KHR_video_encode_queue[] 166 167ifdef::VK_EXT_video_encode_h264[] 168include::chapters/video_encode_h264_extensions.txt[] 169endif::VK_EXT_video_encode_h264[] 170 171ifdef::VK_EXT_video_encode_h265[] 172include::chapters/video_encode_h265_extensions.txt[] 173endif::VK_EXT_video_encode_h265[] 174 175// Sort of an appendix 176include::chapters/extensions.txt[] 177 178include::chapters/features.txt[] 179 180include::chapters/limits.txt[] 181 182include::chapters/formats.txt[] 183 184include::chapters/capabilities.txt[] 185 186include::chapters/debugging.txt[] 187 188// Appendices 189:numbered!: 190 191include::appendices/spirvenv.txt[] 192 193ifdef::VK_VERSION_1_2,VK_KHR_vulkan_memory_model[] 194include::appendices/memorymodel.txt[] 195endif::VK_VERSION_1_2,VK_KHR_vulkan_memory_model[] 196 197include::appendices/compressedtex.txt[] 198 199include::appendices/versions.txt[] 200 201// Extension appendices are now included from extensions.txt 202include::appendices/extensions.txt[] 203 204include::appendices/boilerplate.txt[] 205 206include::appendices/invariance.txt[] 207 208include::appendices/glossary.txt[] 209 210include::appendices/credits.txt[] 211 212endif::[] 213