commit | 1df2ebd329df1ece1a5ed485573ea58e5bc6ff97 | [log] [tgz] |
---|---|---|
author | Mike Schuchardt <mikes@lunarg.com> | Sat Mar 16 17:09:25 2019 |
committer | Shannon McPherson <shannon@lunarg.com> | Mon Apr 08 22:38:37 2019 |
tree | 2ec9c7cc157e7f5a93d48cd8c081ab6be53ede78 | |
parent | c2c2abeb6392f0de1ba16bbe6206adb071322be4 [diff] |
scripts: Update known-good for 1.1.106 header Changes: - Integrate upstream script changes: We have to plumb-through the new conventions object to continue using the makeCParamDecl utility function - Add GGP to available platforms - Add handling for extension dependencies: Previously, the codegen for loader trampolines could not handle an extension command that depends on more than one extension being present. This removes that limitation - Add checks for device extensions: This adds a check for two functions at device creation time: * VK_KHR_device_group * VK_EXT_full_screen_exclusive The loader needs to know about these extensions for proper handling of the vkGetDeviceGroupSurfacePresentModes2EXT terminator - Update known-good file Updated: - `loader/loader.c` - `loader/loader.h` - `scripts/common_codegen.py` - `scripts/dispatch_table_helper_generator.py` - `scripts/helper_file_generator.py` - `scripts/known_good.json` - `scripts/loader_extension_generator.py` - `scripts/loader_genvk.py` Change-Id: I9f0828a8eee0e8e95b479e1b8feb31acaa10040d
This project provides the Khronos official Vulkan ICD desktop loader for Windows, Linux, and MacOS.
Platform | Build Status |
---|---|
Linux/MacOS | |
Windows |
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:
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.
BUILD.md Includes directions for building all components.
Architecture and interface information for the loader is in loader/LoaderAndLayerInterface.md.
Updates to the Vulkan-Loader
repository which correspond to a new Vulkan specification release are tagged using the following format: v<
version
>
(e.g., v1.1.96
).
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.
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; Khronos providing oversight and hosting of the project.