vblanco20-1 / vkguide-comments

Storage for the comments of vulkan-guide
0 stars 0 forks source link

Index Comments #1

Open utterances-bot opened 3 years ago

utterances-bot commented 3 years ago

Home - Vulkan Guide

Guide to the Vulkan API

https://www.vkguide.dev/

vblanco20-1 commented 3 years ago

Welcome to the guide

Be civil while commenting.

LapysDev commented 3 years ago

My thanks to everyone involved in making this guide. Can't wait to get started 😊

Pikachuxxxx commented 3 years ago

Well I found it just in time to start my journey into Vulkan.

NubDevice commented 3 years ago

This thing rocked from start to finish. The one or two validation omissions were brilliant. Made you think and use the system.

RobertTorrell commented 3 years ago

This guide is just what I need! Thanks for writing it!

sparsebase commented 3 years ago

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!

alexpanter commented 3 years ago

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.

ASR-Engineering-Consulting commented 3 years ago

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

ChrisBeGames commented 3 years ago

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.

positivcheg94 commented 2 years ago

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

alexpanter commented 2 years ago

@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.