







Practical guide to vulkan graphics programming
Introduction - Vulkan Tutorial
A tutorial that teaches you everything it takes to render 3D graphics with the Vulkan API. It covers everything from Windows/Linux setup to rendering and debugging.
Vulkan Ray Tracing Tutorial KHR
A comprehensive tutorial for learning Vulkan ray tracing with practical examples.
How I learned Vulkan and wrote a small game engine with it
The personal website of Elias Daler about programming, technology and videogames
Writing an efficient Vulkan renderer
In 2018, I wrote an article “Writing an efficient Vulkan renderer” for GPU Zen 2 book, which was published in 2019. In this article I tried to aggregate as much information about Vulkan performance as I could - instead of trying to focus on one particular aspect or application, this is trying to cover a wide range of topics, give readers an understanding of the behavior of different APIs on real hardware and provide a range of options for each problem that needs to be solved. At the time of publishing this article, the Kindle edition of the book is available for $2.99 on Amazon - that’s cheaper than a cup of coffee and it’s definitely worth your time and money. It contains many great articles about rendering effects and design. This, however, is the full, free of charge copy of the article - hopefully it will help graphics programmers to understand and use Vulkan to the full of its ability. The article has been lightly edited to mention Vulkan 1.1/1.2 promotions where applicable - fortunately, not much has changed in the last two years for Vulkan performance, so the content should still be mostly accurate. Enjoy!
Diagram of vertex input and multiple bindings
31K subscribers in the vulkan community. News, information and discussion about Khronos Vulkan, the high performance cross-platform graphics API.
Vulkan Memory Management
Vulkan offers another key difference to OpenGL with respect to memory allocation. When it comes to managing memory allocations as well as assigning it to individual resources, the OpenGL driver does most of the work for the developer.

Learn | Vulkan | Cross platform 3D Graphics
In this three part series AMD and Quantic Dream break down the process of porting the hit title Detroit Become Human to PC.
Vulkan Shader Resource Binding
In this blog post we will go into further details of one of the most common state changes in scene rendering: binding shader resources such as uniform- or storage-buffers, images or samplers.

KhronosGroup/SPIRV-Reflect
SPIRV-Reflect is a lightweight library that provides a C/C++ reflection API for SPIR-V shader bytecode in Vulkan applications.
Command Buffers :: Vulkan Documentation Project
Command buffers are objects used to record commands which can be subsequently submitted to a device queue for execution. There are two levels of command buffers - primary command buffers, which can execute secondary command buffers, and which are submitted to queues, and secondary command buffers, which can be executed by primary command buffers, and which are not directly submitted to queues.
expenses/vulkan-without-abstractions
Contribute to expenses/vulkan-without-abstractions development by creating an account on GitHub.
Sparse Virtual Shadow Maps
Devlogs and tutorials about GPGPU and graphics programming