Go to file
2018-12-06 16:16:16 -07:00
cmake repo: Remove MIR specific code 2018-10-25 09:39:32 -06:00
external build: CMakeLists.txt cleanup, part 1 2018-09-20 12:12:14 -06:00
loader docs: Use "ICD" instead of "layer" in ICD info 2018-11-28 17:04:17 -07:00
scripts repo: Bump known good to 1.1.95 2018-12-04 15:17:10 -07:00
tests tests: Modify vk_layer_logging.h for hdr 1.1.95 2018-12-03 18:29:45 -07:00
.appveyor.yml tests: Use specific version of gtest for CI 2018-10-10 12:03:34 -06:00
.clang-format repo: Change source style from LLVM to Google 2017-01-26 15:45:50 -07:00
.cmake-format.py build: CMakeLists.txt cleanup, part 1 2018-09-20 12:12:14 -06:00
.gitattributes build: Modify .gitattributes for unix line endings 2018-02-26 08:25:38 -07:00
.gitignore repo: Add update_deps.py script 2018-07-23 13:18:57 -06:00
.travis.yml build: Update Travis-CI to Ubuntu 16.04 2018-12-06 16:16:16 -07:00
BUILD.md repo: Remove MIR specific code 2018-10-25 09:39:32 -06:00
CMakeLists.txt build: fix ninja on windows 2018-10-30 15:44:52 -06:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-10-10 16:06:35 -04:00
CONTRIBUTING.md build: Beautify cmake files 2018-06-30 22:55:12 -06:00
COPYRIGHT.txt repo: normalize line termination across repo 2017-10-29 22:13:33 -06:00
GOVERNANCE.md repo: Update documentation files 2018-05-13 12:07:08 -06:00
LICENSE.txt Revert LICENSE to Apache 2.0 2018-10-03 10:18:32 -04:00
README.md repo: Add MacOS config to Travis CI 2018-05-16 14:51:25 -06:00

Vulkan Ecosystem Components

This project provides the Khronos official Vulkan ICD desktop loader for Windows, Linux, and MacOS.

CI Build Status

Platform Build Status
Linux/MacOS Build Status
Windows Build status

Introduction

Vulkan is an explicit API, enabling direct control over how GPUs actually work. As such, Vulkan supports systems that have multiple GPUs, each running with a different driver, or ICD (Installable Client Driver). Vulkan also supports multiple global contexts (instances, in Vulkan terminology). The ICD loader is a library that is placed between a Vulkan application and any number of Vulkan drivers, in order to support multiple drivers and the instance-level functionality that works across these drivers. Additionally, the loader manages inserting Vulkan layer libraries, such as validation layers, between an application and the drivers.

This repository contains the Vulkan loader that is used for Linux, Windows, MacOS, and iOS. There is also a separate loader, maintained by Google, which is used on Android.

The following components are available in this repository:

Contact Information

Information for Developing or Contributing

Please see the CONTRIBUTING.md file in this repository for more details. Please see the GOVERNANCE.md file in this repository for repository management details.

How to Build and Run

BUILD.md Includes directions for building all components.

Architecture and interface information for the loader is in loader/LoaderAndLayerInterface.md.

License

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.

Acknowledgements

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; Khronos providing oversight and hosting of the project.