Name Date Size

..25-Oct-20244 KiB

.gitignoreH A D25-Oct-20241.2 KiB

antora/H25-Oct-20244 KiB

appendices/H25-Oct-202436 KiB

BUILD.adocH A D25-Oct-202419.3 KiB

build_tests/H25-Oct-20244 KiB

ChangeLog.adocH A D25-Oct-2024610.3 KiB

ChangeLog.txtH A D25-Oct-2024450.9 KiB

ChangeLogSC.adocH A D25-Oct-20246.4 KiB

chapters/H25-Oct-202412 KiB

CODE_OF_CONDUCT.adocH A D25-Oct-2024375

config/H25-Oct-20244 KiB

CONTRIBUTING.adocH A D25-Oct-20241.5 KiB

COPYING.adocH A D25-Oct-20244.2 KiB

copyright-spec.txtH A D25-Oct-20244.8 KiB

gen-script-docs.shH A D25-Oct-20241.8 KiB

images/H25-Oct-20244 KiB

include/vulkan/H25-Oct-20244 KiB

installReleaseH A D25-Oct-20241.1 KiB

json/H25-Oct-20244 KiB

katex/H25-Oct-20244 KiB

LICENSE.adocH A D25-Oct-20241.2 KiB

LICENSES/H25-Oct-20244 KiB

makeAllExtsH A D25-Oct-2024236

makeExtH A D25-Oct-2024410

MakefileH A D25-Oct-202428.3 KiB

makeKHRH A D25-Oct-2024315

makeSpecH A D25-Oct-20246.8 KiB

package-lock.jsonH A D25-Oct-20241.1 KiB

package.jsonH A D25-Oct-2024128

proposals/H25-Oct-20244 KiB

README.adocH A D25-Oct-20242.7 KiB

READMESC.adocH A D25-Oct-20242.6 KiB

READMEVK.adocH A D25-Oct-20242.7 KiB

registry.adocH A D25-Oct-2024124.6 KiB

registry.txtH A D25-Oct-2024113.7 KiB

sandboxCopyH A D25-Oct-2024613

scripts/H25-Oct-20244 KiB

src/ext_loader/H25-Oct-20244 KiB

style/H25-Oct-20244 KiB

styleguide.adocH A D25-Oct-20241.2 KiB

styleguide.txtH A D25-Oct-202417.9 KiB

testBuildH A D25-Oct-20242.4 KiB

tests/H25-Oct-20244 KiB

update_valid_usage_ids.shH A D25-Oct-2024348

vkspec.adocH A D25-Oct-20246 KiB

vkspec.txtH A D25-Oct-20244.8 KiB

xml/H25-Oct-20244 KiB

README.adoc

1// Copyright 2017-2024 The Khronos Group Inc.
2// SPDX-License-Identifier: CC-BY-4.0
3
4ifdef::env-github[]
5:note-caption: :information_source:
6endif::[]
7
8= Vulkan^(R)^ and Vulkan^(R)^ SC API Documentation Project
9
10For Vulkan^(R)^ API specific documentation see link:READMEVK.adoc[READMEVK.adoc]
11
12For Vulkan^(R)^ SC API specific documentation see link:READMESC.adoc[READMESC.adoc]
13
14== Directory Structure
15
16The directory structure is as follows:
17
18```
19README.adoc           This file
20READMESC.adoc         Readme for the Vulkan SC specification
21READMEVK.adoc         Readme for the Vulkan specification
22BUILD.adoc            Documents how to build the specifications and reference pages
23CONTRIBUTING.adoc     Requirements for external contributions to the repository
24COPYING.adoc          Copyright and licensing information
25CODE_OF_CONDUCT.adoc  Code of Conduct
26LICENSE.adoc          Summary of licenses used by files in the repository
27ChangeLog.adoc        Change log summary for each public Vulkan spec update
28ChangeLogSC.adoc      Change log summary for each public Vulkan SC spec update
29Makefile, make*       Makefile and helper build scripts (see BUILD.adoc)
30appendices/           Specification appendices
31chapters/             Specification chapters
32proposals/            Design documents for extensions
33config/               Asciidoctor configuration, CSS, and index generator
34images/               Images (figures, diagrams, icons)
35gen/out/              Default directory for the generated documents
36scripts/              Helper scripts used in specification, header, and reference page generation
37style/                Sources for "styleguide" (Vulkan Documentation and Extensions: Procedures and Conventions)
38xml/                  XML API Registry (`vk.xml`) as well as XML for non-Vulkan
39                      data structures used with Video extensions (`video.xml`)
40registry.adoc         Source for documentation of the XML format
41```
42
43
44== Building the Specification and Reference Pages
45
46The document sources are marked up in Asciidoctor format, and we use
47`asciidoctor` and related toolchain components to generate output documents.
48See link:BUILD.adoc[BUILD.adoc] for more information on installing the
49toolchain and building the Specification.
50
51
52== Generating Headers and Related Files
53
54See link:xml/README.adoc[xml/README.adoc].
55
56The header files (`include/vulkan/vulkan*.h`) and many parts of the
57specification and reference page documents are generated from descriptions
58in the XML API Registry (link:xml/vk.xml[`xml/vk.xml`]).
59The generated files are not checked into the repository.
60If you change `vk.xml`, you can regenerate the headers by going into
61`xml/` and running:
62
63    $ make clean install
64
65The other generated files are built as required via dependencies in
66the top-level `Makefile`.
67
68

READMESC.adoc

1// Copyright 2017-2024 The Khronos Group Inc.
2// SPDX-License-Identifier: CC-BY-4.0
3
4ifdef::env-github[]
5:note-caption: :information_source:
6endif::[]
7
8= Vulkan^(R)^ SC API Documentation Project
9
10The link:https://github.com/KhronosGroup/VulkanSC-Docs[VulkanSC-Docs]
11repository (or the equivalent internal Khronos tracking repository)
12contains sources for the formal documentation of the Vulkan SC
13API. This includes:
14
15[options="compact"]
16  * The Vulkan SC API Specification
17  * Specification of API extensions
18  * API reference ("`man`") pages
19  * The XML API Registry (also mirrored at
20    link:https://github.com/KhronosGroup/Vulkan-Headers[Vulkan-Headers] under the `sc_main` branch)
21  * Vulkan SC header files (also mirrored at
22    link:https://github.com/KhronosGroup/Vulkan-Headers[Vulkan-Headers] under the `sc_main` branch)
23  * Related tools and scripts.
24
25The authoritative public repository is located at
26link:https://github.com/KhronosGroup/VulkanSC-Docs[VulkanSC-Docs].
27It hosts a public Issue tracker, and outside developers can file proposed
28changes (Pull Requests) against the Specification, subject to approval by
29Khronos.
30
31Questions and feedback on the Vulkan SC specification can be made using the GitHub
32link:https://github.com/KhronosGroup/VulkanSC-Docs/issues/[Issues]
33and
34link:https://github.com/KhronosGroup/VulkanSC-Docs/discussions[Discussions]
35features on the
36link:https://github.com/KhronosGroup/VulkanSC-Docs/[VulkanSC-Docs]
37repository.
38
39For standard Vulkan (not Vulkan SC) related issues, consult the
40link:https://github.com/KhronosGroup/Vulkan-Web-Registry/blob/main/Vulkan-Projects.adoc[Vulkan-Projects] list on the link:https://github.com/KhronosGroup/Vulkan-Web-Registry[Vulkan-Web-Registry]
41repository.
42
43== External Contributions
44
45Khronos welcomes feedback in GitHub Issues, and proposed changes in GitHub
46Pull Requests (PRs), but will not necessarily accept all such changes.
47
48Please keep your issues and pull requests focused on solving a single
49problem. Broader feedback that tries to solve multiple problems, or touches
50many parts of the Specification at once, is difficult for the Vulkan SC Working
51Group to review in a timely fashion.
52
53
54== Branch Structure
55
56The current Specification is maintained in the default branch (currently
57`sc_main`) of the repository.
58From this branch it is possible to generate Specifications for any published
59version of Vulkan SC, and incorporating any desired set of extensions.
60Each published update is tagged in the form `vksc1.0.*release*` where *release*
61is a constantly incrementing release number and `1.0` is the latest
62published version of the API.
63
64
65

READMEVK.adoc

1// Copyright 2017-2024 The Khronos Group Inc.
2// SPDX-License-Identifier: CC-BY-4.0
3
4ifdef::env-github[]
5:note-caption: :information_source:
6endif::[]
7
8= Vulkan^(R)^ API Documentation Project
9
10The link:https://github.com/KhronosGroup/Vulkan-Docs[Vulkan-Docs]
11repository (or the equivalent internal Khronos tracking repository)
12contains sources for the formal documentation of the Vulkan
13API. This includes:
14
15[options="compact"]
16  * The Vulkan API Specification
17  * Specification of API extensions
18  * API reference ("`man`") pages
19  * The XML API Registry (also mirrored at
20    link:https://github.com/KhronosGroup/Vulkan-Headers[Vulkan-Headers])
21  * Vulkan header files (also mirrored at
22    link:https://github.com/KhronosGroup/Vulkan-Headers[Vulkan-Headers])
23  * Related tools and scripts.
24
25The authoritative public repository is located at
26link:https://github.com/KhronosGroup/Vulkan-Docs/[Vulkan-Docs].
27It hosts a public Issue tracker, and outside developers can file proposed
28changes (Pull Requests) against the Specification, subject to approval by
29Khronos.
30
31If in doubt where to submit your Issue, consult the
32link:https://github.com/KhronosGroup/Vulkan-Web-Registry/blob/main/Vulkan-Projects.adoc[Vulkan-Projects] list on the link:https://github.com/KhronosGroup/Vulkan-Web-Registry[Vulkan-Web-Registry]
33repository.
34
35The Vulkan-Docs repository also includes the sources for the Vulkan SC
36specification in order to simplify the long-term maintenance of the Vulkan SC
37specification. These are not considered normative. The formal sources for
38Vulkan SC can be found as detailed in link:READMESC.adoc[READMESC.adoc]
39
40== External Contributions
41
42Khronos welcomes feedback in GitHub Issues, and proposed changes in GitHub
43Pull Requests (PRs), but will not necessarily accept all such changes.
44
45Please keep your issues and pull requests focused on solving a single
46problem. Broader feedback that tries to solve multiple problems, or touches
47many parts of the Specification at once, is difficult for the Vulkan Working
48Group to review in a timely fashion.
49
50
51== Branch Structure
52
53The current Specification is maintained in the default branch (currently
54`main`) of the repository.
55From this branch it is possible to generate Specifications for any published
56version of Vulkan (1.3, 1.2, 1.1, and 1.0), and incorporating any desired set of
57extensions.
58Each published update is tagged in the form `1.3.*release*` where *release*
59is a constantly incrementing release number and `1.3` is the latest
60published version of the API.
61The last public spec update prior to Vulkan 1.3 is tagged `v1.2.???`.
62
63The last state of the default branch in Khronos' internal GitLab server,
64before 1.3 content was merged into it, is tagged `1.2-archive` (this tag is
65not in GitHub).
66
67
68