vulkan-headers/README.md
Daniel Koch c9792dff5d Fix build for downstream VulkanSC uses
- video headers don't exist on this branch (and are not supported for Vulkan SC)
- loader interface files need to use vulkansc include instead of vulkan
- update documentation
2022-05-17 05:30:31 -07:00

89 lines
2.9 KiB
Markdown

# Vulkan-Headers
Vulkan header files and API registry
The default branch of this repository is `main`, containing files for the Vulkan API.
The `sc_main` branch contains files for the Vulkan SC API.
The API XML and some of the scripts in this branch differ slightly from the
equivalent files in the `main` branch for Vulkan, and there are additional
generated `.json` files in the `json/` directory.
## Repository Content
The contents of this repository are largely obtained from other repositories
and are collected, coordinated, and curated here.
If proposing changes to any file originating from a different repository,
please propose such changes in that repository, rather than Vulkan-Headers.
Files in this repository originate from:
### Specification repository
For the `main` branch, these files are derived from https://github.com/KhronosGroup/Vulkan-Docs
For the `sc_main` branch, these files are derived from https://github.com/KhronosGroup/VulkanSC-Docs
* registry/cgenerator.py
* registry/conventions.py
* registry/generator.py
* registry/genvk.py
* registry/reg.py
* registry/spec_tools/util.py
* registry/validusage.json
* registry/vk.xml
* registry/vkconventions.py
* All files under include/vulkan/ which are *not* listed explicitly as originating from another repository.
* For the `sc_main` branch, all `.json` files under `json/`
### This repository (https://github.com/KhronosGroup/Vulkan-Headers)
* .cmake-format.py
* BUILD.gn
* BUILD.md
* CMakeLists.txt
* CODE_OF_CONDUCT.md
* LICENSE.txt
* README.md
* cmake/Copyright_cmake.txt
* cmake/cmake_uninstall.cmake.in
* Non-API headers (report issues to the [Vulkan-Loader/issues](https://github.com/KhronosGroup/Vulkan-Loader/issues) tracker)
* include/vulkan/vk_icd.h
* include/vulkan/vk_layer.h
* include/vulkan/vk_sdk_platform.h
### Vulkan C++ Binding Repository (https://github.com/KhronosGroup/Vulkan-Hpp)
As of the Vulkan-Docs 1.2.182 spec update, the Vulkan-Hpp headers have been
split into multiple files. All of those files are now included in this
repository.
**Note**: the `sc_main_ branch does not currently contain C++ headers, which
are not currently generated for Vulkan SC.
* include/vulkan/vulkan.hpp
* include/vulkan/vulkan_enums.hpp
* include/vulkan/vulkan_funcs.hpp
* include/vulkan/vulkan_handles.hpp
* include/vulkan/vulkan_raii.hpp
* include/vulkan/vulkan_structs.hpp
## Version Tagging Scheme
Updates to `main` branch corresponding to a new Vulkan specification release
are tagged with the format: `v<`_`version`_`>` (e.g., `v1.3.202`).
Updates to `sc_main` branch corresponding to a new Vulkan SC specification
release are tagged with the format: `vksc<`_`version`_`>` (e.g., `vksc1.0.9`).
**Note**: Marked version releases have undergone thorough testing but do not
imply the same quality level as SDK tags. SDK tags follow the
`sdk-<`_`version`_`>.<`_`patch`_`>` format (e.g., `sdk-1.1.92.0`).
This scheme was adopted following the 1.1.96 Vulkan specification release.