// Copyright 2014-2021 The Khronos Group Inc. // // SPDX-License-Identifier: CC-BY-4.0 // :regtitle: is explained in // http://discuss.asciidoctor.org/How-to-add-markup-to-author-information-in-document-title-td6488.html = Vulkan^®^ {revnumber} - A Specification {apititle} :regtitle: pass:q,r[^®^] The Khronos{regtitle} Vulkan Working Group :data-uri: :icons: font :toc2: :toclevels: 2 :numbered: :source-highlighter: rouge :rouge-style: github // Various special / math symbols. This is easier to edit with than Unicode. include::config/attribs.txt[] // Table of contents is inserted here toc::[] :leveloffset: 1 <<<< [[preamble]] = Preamble include::copyright-spec.txt[] :test: 0 ifeval::["{test}"=="1"] // Include or insert trivial test markup here, to bypass building full spec // include::chapters/textest.txt[] include::chapters/introduction.txt[] endif::[] ifeval::["{test}"!="1"] include::chapters/introduction.txt[] include::chapters/fundamentals.txt[] include::chapters/initialization.txt[] include::chapters/devsandqueues.txt[] include::chapters/cmdbuffers.txt[] include::chapters/synchronization.txt[] include::chapters/renderpass.txt[] include::chapters/shaders.txt[] include::chapters/pipelines.txt[] include::chapters/memory.txt[] include::chapters/resources.txt[] include::chapters/samplers.txt[] include::chapters/descriptorsets.txt[] include::chapters/interfaces.txt[] include::chapters/textures.txt[] ifdef::VK_EXT_fragment_density_map[] include::chapters/fragmentdensitymapops.txt[] endif::VK_EXT_fragment_density_map[] include::chapters/queries.txt[] // Transfer operations include::chapters/clears.txt[] include::chapters/copies.txt[] // Graphics Operations include::chapters/drawing.txt[] include::chapters/fxvertex.txt[] include::chapters/tessellation.txt[] include::chapters/geometry.txt[] ifdef::VK_NV_mesh_shader[] include::chapters/VK_NV_mesh_shader/mesh.txt[] endif::VK_NV_mesh_shader[] include::chapters/vertexpostproc.txt[] include::chapters/primsrast.txt[] include::chapters/fragops.txt[] include::chapters/framebuffer.txt[] // Compute include::chapters/dispatch.txt[] // Device Generated Commands ifdef::VK_NV_device_generated_commands[] include::chapters/VK_NV_device_generated_commands/generatedcommands.txt[] endif::VK_NV_device_generated_commands[] // Sparse include::chapters/sparsemem.txt[] ifdef::VK_KHR_surface[] include::chapters/VK_KHR_surface/wsi.txt[] endif::VK_KHR_surface[] // Deferred host ops ifdef::VK_KHR_deferred_host_operations[] include::chapters/VK_KHR_deferred_host_operations/deferred_host_operations.txt[] endif::VK_KHR_deferred_host_operations[] // Private data ifdef::VK_EXT_private_data[] include::chapters/VK_EXT_private_data.txt[] endif::VK_EXT_private_data[] // Acceleration structures ifdef::VK_NV_ray_tracing,VK_KHR_acceleration_structure[] include::chapters/accelstructures.txt[] endif::VK_NV_ray_tracing,VK_KHR_acceleration_structure[] // Ray traversal ifdef::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline,VK_KHR_ray_query[] include::chapters/raytraversal.txt[] endif::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline,VK_KHR_ray_query[] // Ray tracing ifdef::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline[] include::chapters/raytracing.txt[] endif::VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline[] // Vulkan Video extensions ifdef::VK_KHR_video_queue[] include::chapters/video_extensions.txt[] endif::VK_KHR_video_queue[] ifdef::VK_KHR_video_decode_queue[] include::chapters/video_decode_extensions.txt[] endif::VK_KHR_video_decode_queue[] ifdef::VK_EXT_video_decode_h264[] include::chapters/video_decode_h264_extensions.txt[] endif::VK_EXT_video_decode_h264[] ifdef::VK_EXT_video_decode_h265[] include::chapters/video_decode_h265_extensions.txt[] endif::VK_EXT_video_decode_h265[] ifdef::VK_KHR_video_encode_queue[] include::chapters/video_encode_extensions.txt[] endif::VK_KHR_video_encode_queue[] ifdef::VK_EXT_video_encode_h264[] include::chapters/video_encode_h264_extensions.txt[] endif::VK_EXT_video_encode_h264[] ifdef::VK_EXT_video_encode_h265[] include::chapters/video_encode_h265_extensions.txt[] endif::VK_EXT_video_encode_h265[] // Sort of an appendix include::chapters/extensions.txt[] include::chapters/features.txt[] include::chapters/limits.txt[] include::chapters/formats.txt[] include::chapters/capabilities.txt[] include::chapters/debugging.txt[] // Appendices :numbered!: include::appendices/spirvenv.txt[] ifdef::VK_VERSION_1_2,VK_KHR_vulkan_memory_model[] include::appendices/memorymodel.txt[] endif::VK_VERSION_1_2,VK_KHR_vulkan_memory_model[] include::appendices/compressedtex.txt[] include::appendices/versions.txt[] // Extension appendices are now included from extensions.txt include::appendices/extensions.txt[] include::appendices/boilerplate.txt[] include::appendices/invariance.txt[] include::appendices/glossary.txt[] include::appendices/credits.txt[] endif::[]