C++ Vulkan Engine | Memory Barriers, Descriptor (Layout, Pool, Set) and Sampler
In this Tutorial we transition the VkImage Layout using Barriers. We also create a Descriptor Layout, allocate one Set and create a Sampler. ···················································································· Twitch ➤ / cakez77 Twitter ➤ / cakez77 Patreon ➤ / cakez77 Discord ➤ / discord TokTok ➤ / cakez_77 Coding ► / @cakezdev Gaming ► / @cakeztv ···················································································· My Game Tangy Defense https://store.steampowered.com/app/22... Final Result: https://github.com/Cakez77/PongFromSc... Clone Branch: git clone --branch 04_vulkan_renderer_textured_quad https://github.com/Cakez77/PongFromSc... Pastebin, because YouTube shortens the Link https://pastebin.com/hRpm5x9D Or Switch to Branch (might need git fetch): git fetch (could be needed, this fetches remote data) git checkout 04_vulkan_renderer_textured_quad Repository: https://github.com/Cakez77/PongFromSc... The cakez.DDS File is part of the branch 04_vulkan_renderer_textured_quad, no need to download. Texconv from Microsoft: https://github.com/Microsoft/DirectXT... Gamma Correction: https://learnopengl.com/Advanced-Ligh... DDS Header: https://docs.microsoft.com/en-us/wind... Vulkan Normalized Device Coordinates: https://vulkan-tutorial.com/Drawing_a... ···················································································· About Me * Hey! And welcome. I'm an indie game developer, currently working on a Tower Defense Game written entirely in C/C++, I tried using Unity or Unreal Engine in the past, but never really found much success. I'm mostly posting devlog / devblog videos where I show off the progress I make on the game. ···················································································· Check out some of my other videos! • I Tried JAI, Can It Replace C++?! (Program... • First Time Using Godot As C++ Developer • Tired Of Unity? Let's Make Celeste In C++ • This Made My Game So Much Better - Devlog • I Made Vampire Survivors In C++ • A Day In The Life Of An Indie Developer & ... • My life changing year of C++ game development ···················································································· #cpp #gamedev #programming VkDescriptorLayouts describe the datatypes(layout) used in a shader(VkPipeline, consists of VkShaderModule's). VkDescriptorSet's are allocated from VkDescriptorPool's and point to Data(think of it like pointers in C/C++) the GPU can use. We point to a VkImage holding the data of our Texture. VkImageMemoryBarrier's are used in vkCmdPipelineBarrier calls and are used to transition the Layout of a VkImage. I always find it difficult to select the proper Access Masks and Pipeline Stages. The best advice I can give is to just try out and see if the validation layers complain. Also the Vulkan Discord Server is a good place to ask questions. I hope you liked the video, if you did you can support me by subscribing and leaving a like.

C++ Vulkan Engine | Logger and Vulkan Buffer/Image allocation Interface

Image Memory Barriers // Vulkan For Beginners #11

Co-Creator of Haskell: Functional Programming, Thinking in Types, Useless Languages | Simon Jones

My Game Got Taken Down

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

Tips for C Programming

I Hacked This Temu Router. What I Found Should Be Illegal.

China Just Build What TSMC Said Was Impossible

Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)

Is This DIY EMP Device Actually Dangerous?

Something is jamming GPS over Europe. Here's what we found

We're 99.9% sure this pattern is true, but no one can prove it

I Gave ChatGPT a Body

C++ cache locality and branch predictability

One man just liberated Fable... and now it’s illegal

How to Actually Learn C (2027 Edition)

How Rockstar fit an entire city into PlayStation 2 memory

Building the PERFECT Linux PC with Linus Torvalds

