Open utterances-bot opened 3 years ago
Be civil while commenting.
My thanks to everyone involved in making this guide. Can't wait to get started 😊
Well I found it just in time to start my journey into Vulkan.
This thing rocked from start to finish. The one or two validation omissions were brilliant. Made you think and use the system.
This guide is just what I need! Thanks for writing it!
I think this tutorial is easier to follow than the vulkan-tutorial.com one. Vulkan API is cognitively fragmental. It is nice to layout the mental model first and then dive into the implementation. Plus the code is organized toward production use instead of a huge boilerplate mess. Thank you so much for the wonderful tutorial!
This tutorial (I wouldn't exactly call it a tutorial) assumes a lot and will generally not present details for WHY certain steps are in-place. It feels to me like more of a copy/paste guide for quickly getting a Vulkan engine up and running.
If you are new to Vulkan I do not recommend this guide - vulkan-tutorial.com a far better starting option. I don't think this guide is bad, but I just don't recommend it to beginners.
Hi Vulkanners, I would like to start an inactive on Raspberry Pi 4 on GPU with Videocore VI. There are many good initiatives and amazing project on the Raspberry Pi 4 but without using the GPU resource. It is sounds having a Ferrari and just driving. I am doing my PhD in Heterogeneous computing based on System on Chip. Many paper highlighting Broadcom luck of support on documentation and vulkan driver. I am looking for ideas on how vulkan could contribute with development of videocore VI for Raspberry pi 4. I am here to help our open source community and also support the academy to facilitate the access to GPU.
my contact. antonio.rodriguez@icomp.ufam.edu.br Antonio
Thank you so much for this tutorial. As a professional game developer, with moderate graphics background but haven't specialized on my day to day, I found it perfect for understanding the core of the rendering API without too much of the graphics techniques that while appreciated, are currently secondary for me.
I wanted to have a fully functional rendering system and then I would slowly get whatever feature I wanted. This tutorial got me there at the right incremental pace with little to no fluff. Excited to go over the GPU Driven Rendering section (Which was my original motivation, but got hooked by the other chapters and building the renderer).
Took me around 1 week or 2 to go over the first 5 chapters? This was around 1 hour a day while doing my own changes and "forcing myself" to not always look at the samples.
Very grateful! Hopefully I can give back in the future.
From the first glance, I feel like this guide is a bit more cleaner compared to Sascha Williams. It is not like https://vulkan-tutorial.com/ is bad, more like this tutorial is better personally for me.
The only thing that I feel like missing here (and for Vulkan in general) is that for example, you can see in any advanced tutorial mentions that it is good to be caching everything (compiled pipelines, descriptor sets, etc) and I barely see any clear implementations of that caching (generic one). And many tutorials demonstrate how to do some triangles in Vulkan but it is not scalable to the real app because nearly all of the objects in those tutorials are built single time in the "init" function while real engines build something on the go, cache it, etc. And Vulkan in that matter is much harder (compared to Metal Api that I freely using) because you need to manage the lifetimes and so on - can't delete any objects used in command buffer up to the moment it finished execution on GPU which automatically makes a newcomer try to do some very chaotic implementation based in shared_ptr
@positivcheg94 For caching of pipeline objects on disk I suspect one needs to roll their own serialization (I have not tried it!). Any use of smart pointers for Vulkan objects sounds like a very bad idea.
Regarding your comment on how tutorials only use a single triangle, is because for real-world applications, geometry need to be streamed to the GPU in the background and rendered when ready. And this setup is either too complicated or too difficult to generalize for any tutorial, and depends upon a lot of external factors.
From personal experience, I would say one has to have a solid understanding of how to work with OpenGL before attempting to do Vulkan. Simply because the amount of details are overwhelming, even for experienced programmers.
Home - Vulkan Guide
Guide to the Vulkan API
https://www.vkguide.dev/