Home

Awesome

vuk logo

vuk - A rendergraph-based abstraction for Vulkan

Discord Server Documentation CI

Quick Start

  1. Grab the vuk repository
  2. Compile the examples
  3. Run the example browser and get a feel for the library
git clone http://github.com/martty/vuk
cd vuk
git submodule init
git submodule update --recursive
mkdir build
cd build
mkdir debug
cd debug
cmake ../.. -G Ninja -DVUK_BUILD_EXAMPLES=ON -DVUK_USE_DXC=OFF
cmake --build .
./vuk_all_examples

(if building with a multi-config generator, do not make the debug folder)

Overview of using vuk

  1. Initialize your window(s) and Vulkan device
  2. Create a vuk::Context object
  3. Each frame:
  4. Each frame, prepare high level description of your rendering, in the form of vuk::Pass
  5. Bind concrete resources as inputs and outputs
  6. Bind managed resources (temporary resources used by the rendergraph)
  7. Record the execution your rendergraph into a command buffer
  8. Submit and present

What does vuk do