Skip to content

LightweightVK is a deeply refactored fork of https://github.com/facebook/igl. It provides a lean cross-platform graphics API running on top of Vulkan 1.3.

License

Notifications You must be signed in to change notification settings

f6cd/lightweightvk

 
 

Repository files navigation

LightweightVK Build Status

LightweightVK is a deeply refactored fork of IGL which is designed to run on top of Vulkan 1.3.

The main goals of LightweightVK:

  1. Lean. Minimalistic API without bloat (no std::vector, std::unordered_map etc in the API).
  2. Bindless. Utilize Vulkan 1.3+ dynamic rendering, descriptor indexing, and buffer device address features for modern API design.
  3. Agile. A playground for experiments to enable quick exploration of ideas and adoption of Vulkan API changes. Designed for rapid prototyping of Vulkan-based renderers.

There are no plans to keep this fork in sync with the upstream.

Supported rendering backends

  • Vulkan 1.3

Supported platforms

  • Linux
  • Windows

API Support

Windows Linux
Vulkan 1.3 ✔️ ✔️

Build

Before building, run the deployment scripts:

python3 deploy_content.py
python3 deploy_deps.py

These scripts download external third-party dependencies. Please check [Dependencies] for the full list.

  • Windows
cd build
cmake .. -G "Visual Studio 17 2022"
  • Linux
sudo apt-get install clang xorg-dev libxinerama-dev libxcursor-dev libgles2-mesa-dev libegl1-mesa-dev libglfw3-dev libglew-dev libstdc++-12-dev
cd build
cmake .. -G "Unix Makefiles"

Screenshots

image

License

LightweightVK is released under the MIT license, see LICENSE.md for the full text as well as third-party library acknowledgements.

About

LightweightVK is a deeply refactored fork of https://github.com/facebook/igl. It provides a lean cross-platform graphics API running on top of Vulkan 1.3.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 84.7%
  • C 12.3%
  • CMake 2.7%
  • Python 0.3%