Giter Club home page Giter Club logo

vulkansc-loader's Introduction

Vulkan and Vulkan SC Ecosystem Components

This project provides the Khronos Vulkan SC ICD Desktop loader for Windows, Linux, and MacOS, and the Khronos Vulkan SC Development ICD loader for Windows, Linux, and QNX.

IMPORTANT NOTE: This repository is to be used with the Vulkan SC API and should not be confused with the similar repository that exists for the Vulkan API (see https://github.com/KhronosGroup/Vulkan-Loader). While it is possible to build the Vulkan version from this repository, this repository contains a forked version of the upstream code and may not be up-to-date with the latest changes in the upstream repository.

CI Build Status

Build Status

Introduction

Vulkan

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.

The Vulkan-Loader 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.

Vulkan SC

Vulkan SC is an API derived from Vulkan with various changes applied to fulfill the special requirements of safety critical applications. The Vulkan SC API has a large overlap with Vulkan. As such, we endeavor to leverage as many of the Vulkan Ecosystem components as possible.

This Repository

The following components are available in this repository:

This repository contains the Vulkan SC Loader which is intended for development environments, and is not expected to be used in production (safety) environments.

NOTE: This repository is a downstream fork of KhronosGroup/Vulkan-Loader which is periodically rebased.

This repository continues to have a functioning Vulkan loader with equivalent functionality to the upstream branch point.

The choice of Vulkan or Vulkan SC support is determined at build time.

The sc_main branch is currently based on the sdk-1.2.198 Vulkan-Loader tag and contains Vulkan SC modifications to support the Vulkan SC 1.0 API.

Contact Information

For Vulkan SC specific issues, or issues specific to this fork:

General loader issues should be reported to the upstream repository:

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 docs/LoaderInterfaceArchitecture.md.

Version Tagging Scheme

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.

For Vulkan SC, updates to a new API version will be tagged using the following format vksc<version>.<patch> (e.g., vksc1.0.11).

License

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

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.

Vulkan SC modifications have been contributed by NVIDIA CORPORATION.

vulkansc-loader's People

Contributors

charles-lunarg avatar chrisforbes avatar cnorthrop avatar courtney-g avatar courtney-lunarg avatar davidlunarg avatar dustin-lunarg avatar felixdoerre avatar greg-lunarg avatar ianatlunarg avatar ianelliottus avatar jensowen avatar jeremy-lunarg avatar jon-lunarg avatar jzulauf-lunarg avatar karl-lunarg avatar krooze avatar lenny-lunarg avatar lunarpapillo avatar mark-lunarg avatar marky-lunarg avatar mikes-lunarg avatar null77 avatar olvaffe avatar pdaniell-nv avatar scygan avatar shannon-lunarg avatar stroyan avatar tobine avatar tony-lunarg avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

neonkingfr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.