The repository contains the following Vulkan Tools:
VK_LAYER_LUNARG_api_dump
, VK_LAYER_LUNARG_screenshot
and VK_LAYER_LUNARG_monitor
layersThese tools have binaries included within the Vulkan SDK.
VkTrace and VkReplay have been deprecated and replaced by gfxreconstruct. Both VkTrace and VkReplay have been removed from VulkanTools and can now be found in the vktrace archive. Both these tools are also no longer part of the Vulkan SDK.
Vulkan-Layer-Factory is deprecated and has been archived in its own repository which is available here.
If you intend to contribute, the preferred work flow is for you to develop your contribution in a fork of this repo in your GitHub account and then submit a pull request. Please see the CONTRIBUTING file in this repository for more details
BUILD.md includes directions for building all the components and running the tests.
Some of the source code in this repository is generated in layersvt/generated/
, from data descriptive headers in the Vulkan-Headers repository.
Linux:
scripts/generate_source.py external/Vulkan-Headers/[config]/[architecture]/registry/
where
config is, for example, 'Debug' or 'Release', and architecture is '64' or '32'.
Windows Powershell:
pwsh -Command { python3 scripts/generate_source.py external/Vulkan-Headers/[config]/[arch]/registry/ }
Windows Command:
cmd /C "python3 scripts/generate_source.py external/Vulkan-Headers/[config]/[arch]/registry/"
When making change to the scripts/
folder, make sure to run generate_source.py
and check in both the changes to
scripts/
and layersvt/generated/
in any PR. (Code generation does not happen automatically at build time.)
A helper CMake target vt_codegen
is also provided to simplify the invocation of scripts/generate_source.py
from the build directory:
cmake -S . -B build -D VT_CODEGEN=ON
cmake --build build --target vt_codegen
Updates to this repository which correspond to a new Vulkan specification release are tagged using the following format: v<
version
>
(e.g., v1.3.266
).
Note: Marked version releases have undergone thorough testing but do not imply the same quality level as SDK tags. SDK tags follow the vulkan-sdk-<
version
>.<
patch
>
format (e.g., vulkan-sdk-1.3.266.0
).
This scheme was adopted following the 1.3.266
Vulkan specification release.
This work is released as open source under a Apache-style license from Khronos including a Khronos copyright.
While this project has been developed primarily by LunarG, Inc., there are many other companies and individuals making this possible: Valve Corporation, funding project development.