Vulkan Programming Guide: The Official Guide to Learning Vulkan (OpenGL)
P**I
Awesome reference, not so great for beginners
As a handy reference, and through API explanation for people, who already know how to write efficient OpenGL code, it is an awesome book. It bridges the initial steps and explains the concepts you already know, but you were not responsible for handling them.If you are a newcomer to graphics programming, it is a tutorial; it is merely a programming reference/guide.
C**Y
Solid Resource w/ Good Coverage of the Vulkan API Spec. Could Use More Source Code Examples. Delivery a Little Dry.
Although the Vulkan API has been available for about a year now, it was just at the tail end of 2016 that we started to see books published on the topic. For me personally, I prefer learning from books over just reading documentation, and Vulkan Programming Guide is a fine effort. At 480 pages, it is a comfortable length, and manages to hit on a lot of major elements in the API. It is by no means comprehensive, as most of the coverage just shows function or structure prototypes (something you can likely find in the online docs) but there is at least some explanation of what each function does. I found useful the explanation of device limits (such as the maximum frame buffer size, number of bytes in a push constant, etc.) and how to query them, as I have not seen this touched in other texts. Sellers also does a great job of introducing synchronization concepts in one of the later chapters. This is absolutely essential for proper multi-threading, and I have not seen this in other books (at this depth). There is some discussion here and there to performance characteristics. Maybe not enough, but the author does attempt to give guidance on how expensive a particular call could be, or when it might hurt performance. Overall the book was solid. This will be my 3rd Vulkan book, along with a number of tutorials, and I felt there was relevant info gleaned from the text.Vulkan Programming Guide has 13 chapters, each focusing on a key aspect of the Vulkan API. Inside these chapters are: a high-level overview of Vulkan itself, memory and resources, queues and commands, memory barriers and buffers, presentation, shaders and pipelines, graphics pipelines, drawing, geometry processing, fragment processing, synchronization, queries, and multipass rendering. Not a bad mix of topics. I don’t think anything major was left out, however, some of the coverage could be more fleshed out. While there was great detail on some things. For example, showing SPIR-V disassembly code, other topics were only giving a cursory look. In particular, there is very little source code in the book. While the author goes to great lengths to show structure and function prototypes, there isn’t a whole lot of code showing actual usage. While it’s debatable if this is necessary, I would find more code examples to be useful. To be fair, the code that is shown looks good, there just needs to be more it.All in all, I feel the book is solid and, considering Vulkan is relatively new and there aren’t that many texts available, it’s not a bad choice. One thing to note: I would recommend you start with Learning Vulkan by Parminder Singh. Learning Vulkan is a much more approachable resource, and I found it a little easier to follow. While Vulkan Programming Guide is more in-depth in many cases (in terms of the API spec itself), Learning Vulkan has a lot more C++ sample code, and may be more useful in that respect. In any case, I would buy both books because there are unique advantages in each one. Could Vulkan Programming Guide be improved? Sure. But it’s not a bad book and if you are getting into learning Vulkan today you’ll really need any and every resource you can get your hands on, and this should certainly be on your shelf.
S**U
Outstanding information
I see a lot of the reviews giving it 3 stars because it's not a book for the beginner graphics programmer. If you study the Vulkan API you need to make sure you are VERY familiar with OpenGL AZDO techniques. If you are not, then this book is not for you. If you are, you'll realize that Vulkan is just a more friendly and more explicit variant of OpenGL AZDO. DON'T buy this book to learn graphics programming! It assumes you are already good and know what you are doing. This is not an 'Introduction to' kind of book. It goes into detail of the Vulkan API and underlines how it should be used. For example a function might take 10 parameters and one of them can have 8 values, but in real life you'll probably only use 2 of those values. That kind of information is what makes this book good. It underlines what is important to know while still being thorough. It also functions as a reference book for that reason.
J**S
Good first effort, looking forward to the second edition.
It's finally here! If you're new to Vulkan, this is probably the best place to start.When I started with Vulkan a couple of months ago, this book wasn't out, so I read the spec and searched the web. This book would have helped me get to the same place, faster and with less pain.From my perspective, it has two main shortcomings, The index feels very sparse; most of it consists of a listing of Vulkan API functions, with only a single page of topics that don't start with "Vk".Secondly, I don't feel like my knowledge has been deepened by reading it. There are several topics that I managed to mostly learn before I received this book. When I consulted it to try fill gaps in my understanding, I was unsuccessful. For example, I was unable to find any discussion about "disturbing previously bound descriptor sets".The book has an associated GitHub repository, which currently has no code. I may have to revise my rating after code is published there.Overall, the book is well-written and approachable. I think that the second edition will probably be excellent: Vulkan is very new, and there hasn't been much time for Khronos to hear community feedback, to understand the topics that people will find difficult when mastering Vulkan. I'll probably buy it, despite already owning the first.For now, this is probably the best starting point for someone who is serious about learning Vulkan.
C**S
No examples, no discussion of header files, not useful.
This book could have been written by AI except it was 3 years before Chat GPT. There is no discussion of header files, like "this function is defined in vulkan_core.h" or anything like that. It's the same ... "here is this and here's the info struct to instantiate it" over and over. It is not conducive to writing a program from the ground-up. Online info at Khronos is useful, along with grepping sample progs for function calls to see how it really works in context.
G**Y
A readable Vulkan reference
Written more as a reference than a tutorial, the book doesn't present much in terms of discussion or example code, however it is still packed full valuable technical information that cannot be found elsewhere at this time, not even the official specification. I'm still reading it, I will update my review when I read it cover to cover.So far my favorite quote is from the glossary: "Apple is a piece of fruit. Fruit does not support Vulkan."
V**E
Definitely the best
I struggled to find a good book on Vulkan and decided to go with the good old official one.This is the best to me. Vulkan is very hard for sure and this book won't let you understand everything in one read, however, everytime you have a question or wonder how to do something, this book has the answer.I feel like it's more a book for intermediate/experienced users, but a needed one for anyone willing to build something serious with Vulkan.
O**D
Great read
An easy to follow explanation of vulkan which nicely breaks down the nitty gritty part of the api. I hope authors release an updated version of this to reflect new api changes and hopefully at some point microsoft also releases something like this for Direct3D 12.
D**A
No functional examples whatsoever
No sample code whatsoever provided. Looking at the github repo his has been the case since 2017 with a number of people asking. The book itself seems to be just snippets, so not enough if you are learning to create a working program. In short, another theory of programming book. Compare this to something like Jason Sanders' great "Cuda By Example" where you can work through all examples it provides working code (which you can get working on your own pretty easily just following along). .
Y**O
Te best book for learning Vulkan
I initially bought "Vulkan Cookbook" but I opted to return it and buy this one instead. This book is way better for learning. I think the way it's structured and the way new concepts are introduced make a lot of sense. I think the bad reviews are not because of the book being bad, but because Vulkan is hard to learn and that causes frustration.Despite this book being half the amount of pages of "Vulkan Cookbook", I think this one has more thorough explanations. The cookbook doesn't have necessarily more content, it's just that it's very verbose.Unlike the cookbook, this is the kind of book that you can just read from start to finish and it makes sense. The cookbook could still be useful as a reference but, for that, I would recommend the digital version - it will allow to navigate the index quickly and do ctrl+F. The Vulkan guide is great to have as a physical book.I liked that this book even explains the basics of SPIR-V. It goes though some simple GLSL code and shows you how that translates to SPIR-V and explains what each of the instructions do.Just as a warning, I have found a couple of mistakes in this book, so always be sure to check the official documentation.In summary, I think this book it worth your money and time. With only 300 pages it manages to provide all the foundations to do stuff in Vulkan. It goes straight to the point and yet, in my opinion, is quite understandable. For starting with Vulkan, I also recommend reading "Vulkan in 30 minutes" first, which can easily be found online.
M**H
Best Vulkan Book out there for devs
I'm starting out with Vulkan, but have experience in graphics and opengl in particular. I initially purchased the Vulkan Cookbook, but found that there is no meat behind any of the 'recipes', nothing tying them together, and it was a real struggle trying to piece together a working example from that book, so much so that I ended up using online tutorials to explain what the hell was in the book.The Vulkan Programming guide, on the other hand, actually explains what the relationships are between the extensive collection of structures that Vulkan uses to set up a rendering system, in a logical fashion. There isn't really a fully linear way to go through everything from start to end in Vulkan, but the book's ordering makes logical sense, in contrast with the Cookbook.I purchased the programming guide after spending some time working with Vulkan and getting past the point that the online tutorials become useful.The actual english words used to explain things are such a breath of fresh air after pulling together snippets of code from the cookbook and tutorials (not to denegrate the online tutorials, many are excellent but rightly don't cover enough detail for production code).True, it is a letdown that the source code referred to doesn't seem to exist, but the book is clear enough imho that it isn't really necessary.Highly recommend, go through the online tutorials and then pick this book up to look a bit deeper.
Trustpilot
Hace 3 días
Hace 3 semanas