Tools to aid in Vulkan development including useful layers, trace and replay, and tests
C++ C Python Shell CMake Makefile Other
Failed to load latest commit information.
build-android Merge branch 'trunk' Feb 17, 2017
cmake Merge branch 'trunk' Dec 9, 2016
common repo: Clang-format LVL source files using Google Jan 26, 2017
demos Merge branch 'trunk' Feb 17, 2017
external_revisions Merge branch 'trunk' Feb 20, 2017
include/vulkan header: Update to Vulkan 1.0.41 Feb 17, 2017
layers Merge branch 'trunk' Feb 17, 2017
layersvt layersvt: Run clang-format on source files Feb 17, 2017
libs Merge branch 'trunk' Jan 5, 2017
loader loader: Fix a few potential overruns Feb 17, 2017
scripts scripts: Update apidump gen for latexmath changes Feb 17, 2017
tests Merge branch 'trunk' Feb 17, 2017
via via: Clang-format source files Feb 17, 2017
vktrace vktrace: Log trim start and end frames Feb 20, 2017
windowsRuntimeInstaller winsdk: Build runtime from RelWithDebInfo Feb 10, 2017
.appveyor.yml build: Add config file for AppVeyor Windows CI Dec 30, 2016
.clang-format repo: Change source style from LLVM to Google Jan 26, 2017
.gitignore Merge branch 'trunk' Dec 23, 2016
.travis.yml vktrace: trim packages added to travis conf Feb 10, 2017 vktrace: trim additional packages Feb 10, 2017
CMakeLists.txt Merge branch 'trunk' Feb 13, 2017 docs: Update contributing doc Jan 25, 2017
COPYRIGHT.txt via: Add new tools application Nov 11, 2016
LICENSE.txt misc: Update licenses to Apache 2.0 Apr 19, 2016 doc: Add CI build status to README Jan 5, 2017
build_windows_targets.bat scripts: Move determine_vs_version into scripts dir Nov 21, 2016
update_external_sources.bat Merge branch 'trunk' Feb 20, 2017 Merge branch 'trunk' Feb 20, 2017

Vulkan Ecosystem Components

This project provides vktrace capture/replay tool and other layer tools and driver tests.

CI Build Status

Platform Build Status
Linux/Android Build Status
Windows Build status


Branches within this repository include the Vulkan loader, validation layers, header files, and associated tests. These pieces are mirrored from this Github repository: These pieces are required to enable this repository to be built standalone; that is without having to clone the Vulkan-LoaderAndValidationLayers repository.

The following components are available in this repository over and above what is mirrored from Vulkan-LoaderAndValidationLayers repository

  • Api_dump, screenshot and example layers (layersvt/)
  • tests for the vktrace and vkreplay (tests/)
  • vktrace and vkreplay, API capture and replay (vktrace/)


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 respository for more details.

How to Build and Run includes directions for building all the components, running the tests and running the demo applications.

Information on how to enable the various layers is in layers/

Architecture and interface information for the loader is in loader/

NOTE: Update Nvidia Drivers

  • A recent glslang change exposed a bug in the texel fetch behavior on Nvidia devices under certain situations.
  • Previously, we reverted the glslang change which exposed it.
  • Nvidia has since resolved the issue, and we are now removing the workaround.
  • Driver installs with the fix are available on their download page, just look for:
    • Linux Drivers starting with version 367.35
    • Windows Drivers starting at version 372.54


This work is released as open source under a Apache-style license from Khronos including a Khronos copyright.

See COPYRIGHT.txt for a full list of licenses used in this repository.


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; Google providing significant contributions to the validation layers; Khronos providing oversight and hosting of the project.