Who this book is for
This book has been written for experienced graphics software engineers who would like to learn more about Vulkan. Knowing at least one other graphics API, such as OpenGL, and one of its variants, such as WebGL, OpenGL ES, or DirectX (up to version 9 or 10), is suggested but not strictly necessary. It is important to know graphics principles, such as transformations, graphics pipelines, shaders, lighting, the basics of ray tracing, and depth and stencil buffers, to name a few. More advanced topics, such as PBR and all its concepts, aren’t necessary but may be helpful.
Finally, the code has been written entirely in C++, as it is the most widely used programming language for writing graphics applications. Even though some C++20 features are used in the book because they help reduce Vulkan’s verbosity, you are not expected to have intimate knowledge of the newest C++ features.