• Post category:StudyBullet-7
  • Reading time:6 mins read


Learn the fundamentals of the popular Vulkan API for modern graphics rendering using C++!

What you will learn

Create 3D graphical applications using C++ and the Vulkan API

What the Vulkan API is

Set up Vulkan to work on a GPU

Create essential Vulkan elements such as the Swapchain, Pipeline, and Command Buffers

Load in models from external files

Descriptor Sets and Push Constants (including Dynamic Uniform Buffers)

Implementing a Depth Buffer

Using Textures

Subpasses and Multiple Subpasses

Description

Learn one of the hottest new Graphics APIs in the industry!

The Vulkan API was released in 2016 as the high-performance successor to OpenGL, and is already used in a wide range of modern graphical applications, including video games such as Doom Eternal, Red Dead Redemption 2, and Rainbow Six: Siege.

If you’re looking for the most modern, high-quality graphics, then look no further than Vulkan!

The Vulkan API is very new when compared to most graphics APIs out there, and so there aren’t yet that many in-depth tutorials to help you learn it. I hope to fix that with this course!


Get Instant Notification of New Courses on our Telegram channel.


In this course, you will learn how to set up and use a Vulkan application, as well as implement several key features exclusive to Vulkan itself, such as Descriptor Sets, Push Constants, and Subpasses. Each aspect is explained in great amounts of detail, to ensure you really understand what all the parts mean, and how they all connect together.

I want to help you learn. If you still don’t understand something after a lesson, then you just have to let me know! If something didn’t make sense, or you just want clarification on a subject, I’ll try my best to give you a more detailed insight into those intricacies, and ensure you have a proper understanding of Vulkan.

It is my goal, that when you finally finish the course, you will have enough knowledge of Vulkan to create your own Vulkan applications, and eventually gain enough experience to design the graphical applications you have only dreamed of!

English
language

Content

Introduction

About This Course

Vulkan Core

[THEORY] Overview of Vulkan
[CODE] Setup & Compatibility Test
[THEORY] Instances, Devices, and Validation Layers
[CODE] Window, Instances, and Devices
[IMPORTANT FIX] VulkanValidation Include Location
[CODE] Validation Layers
[THEORY] Surfaces, Image Views, and the Swapchain
[CODE] Swapchain Part 1: The Surface
[CODE] Swapchain Part 2: Creating the Swapchain and Image Views
[THEORY] Graphics Pipeline
[CODE] Graphics Pipeline Part 1: Shader Modules
[CODE] Graphics Pipeline Part 2: Fixed Functionality and the Render Pass
[THEORY] Framebuffers, Command Buffers, and Synchronization
[CODE] Framebuffer and Command Buffers
[CODE] Drawing and Synchronisation
[THEORY] Resource Loading
[CODE] Resource Loading Part 1: Vertex Input
[CODE] Resource Loading Part 2: Index Buffers and Staging Buffers

Important Techniques

[THEORY] Descriptor Sets and Push Constants
[CODE] Descriptor Sets: Uniform Buffers
[CODE] Descriptor Sets: Dynamic Uniform Buffers
[CODE] Push Constants
[THEORY] Depth Buffer
[CODE] Depth Buffer
[THEORY] Textures
[CODE] Textures Part 1: Image Setup & Pipeline Barriers
[CODE] Textures Part 2: Samplers & Descriptors
[CODE] Model Loading
[THEORY] Subpasses
[CODE] Subpasses

Outro

Summary and Further Reading
[BONUS] Bonus Content