A collection of vulkan renderers, from triangle drawing to global illumination.
Roughly following Brendan Galea's tutorials at the moment.
- GLFW 3
- vulkan dev headers
This project is using meson since it seemed easiest at the time. To build and run the triangle
project (others follow similarly):
cd triangle
meson output
meson compile -C output
./output/triangle
These instructions can be very mildly simplified after mesonbuild/meson#9584 is solved.
For (probably) optimal performance and using clang+mold:
cd triangle
CC=clang CXX=clang++ CC_LD=mold CXX_LD=mold meson output
meson compile -j8 -C output
./output/triangle
- https://vulkano.rs/guide/introduction
- https://renderdoc.org/vulkan-layer-guide.html
- https://kylemayes.github.io/vulkanalia/
- https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html
- https://zeux.io/2020/02/27/writing-an-efficient-vulkan-renderer/
- https://github.com/ARM-software/vulkan_best_practice_for_mobile_developers#introduction
- https://github.com/gwihlidal/ash-nv-rt
- https://gpuopen.com/vulkan/#tutorials
- https://vkguide.dev/
- https://www.intel.com/content/www/us/en/developer/articles/training/api-without-secrets-introduction-to-vulkan-preface.html
- https://www.ea.com/frostbite/news/moving-frostbite-to-pb
- https://google.github.io/filament/Filament.html
- https://github.com/cadenji/foolrenderer
- https://raytracing.github.io/
- https://github.com/GPSnoopy/RayTracingInVulkan
- https://github.com/SaschaWillems/Vulkan
- https://thebookofshaders.com/
- https://www.thingiverse.com/thing:2984264
- https://gpuopen-librariesandsdks.github.io/VulkanMemoryAllocator/html/usage_patterns.html
- https://developer.nvidia.com/vulkan-memory-management