Basic lighting system implemented in Vulkan.
Roughly based on lighting section in learnopengl.
- Implement instanced rendering
- Distance attenuated point lights (phong shading)
- Use multiple vulkan graphics pipelines
- Practice using vulkan dynamic descriptor sets for uniform and storage buffers
- Practice using vulkan push constants
- vk_bootstrap: For vulkan boiler plate (Instance, Physical Device, Device creation)
- vma: Vulkan memory allocator
- stb_image: Loading image files
All other dependencies are self-contained in this project using git's submodule system.
git clone https://github.com/eqdiag/lightBx
cd lightBx
git submodule update --init
mkdir build
cd build
cmake ..
make
W
Translate camera forwardA
Translate camera leftS
Translate camera backD
Translate camera right
Click + Drag
Rotate camera forward direction