This repository holds many samples, showing various aspect of Vulkan, debugging tips and usage of other Nvidia tools.
Most of the samples have for starting point, the base_sample sample. They are applying a few modifications to that base sample to illustrate the modifications required to enable the feature or what need to be demonstrate.
Each sample have its own documentation written in Markdown describing what was modified and where to get more information.
Easy Method (Windows)
Clone this repository
git clone https://github.com/nvpro-samples/vk_samples.git
- Deploy.bat : pull and update all dependencies.
- Build.bat : build all projects in release and optionally to debug.
- Install.bat : copy the binaries and dlls to the
git clone --recursive --shallow-submodules https://github.com/nvpro-samples/nvpro_core.git git clone https://github.com/nvpro-samples/vk_samples.git
cd vk_samples mkdir build cd build cmake ..
Note: If there are missing dependencies in
nvpro_core, run the following command in nvpro_core directory.
git submodule update --init --recursive --checkout --force
Some samples depend on other SDKs. They are only required if you intend to build these projects.
This is a simple but complete Vulkan sample. It loads glTF scenes and renders using rasterizer or ray tracer. Note, at some point, the other samples were created from this one.
Adding Aftermath SDK to automatically generate GPU crash dump when a there is a device lost. Dumps are written before the computer crashes and can be inspected in Nsight Graphics.
Using the inherited extension to avoid re-generating multiple recorded command buffers for different viewport sizes.
Using multi-sampling anti-aliasing in efficient way for the rasterizer.
Adding debug printing information directly in the shader code.
Using the OptiX denoiser on the path traced image to remove residual noise.
High Dynamic Range image sampling is added to the base sample for both raster and ray trace, using multiple importance sampling acceleration structure and convoluted cubemaps.
Copyright 2021 NVIDIA CORPORATION. Released under Apache License, Version 2.0. See "LICENSE" file for details.