// 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::[]
