- 本カテゴリの商品を2500円以上購入で買取金額500円UPキャンペーン対象商品です。商品出荷時に買取サービスでご利用いただけるクーポンをメールにてご案内させていただきます。 詳細はこちら (細則もこちらからご覧いただけます)
Vulkan Programming Guide: The Official Guide to Learning Vulkan (OpenGL) (英語) ペーパーバック – 2016/11/10
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
The Definitive Vulkan™ Developer’s Guide and Reference: Master the Next-Generation Specification for Cross-Platform Graphics
The next generation of the OpenGL specification, Vulkan, has been redesigned from the ground up, giving applications direct control over GPU acceleration for unprecedented performance and predictability. Vulkan™ Programming Guide is the essential, authoritative reference to this new standard for experienced graphics programmers in all Vulkan environments.
Vulkan API lead Graham Sellers (with contributions from language lead John Kessenich) presents example-rich introductions to the portable Vulkan API and the new SPIR-V shading language. The author introduces Vulkan, its goals, and the key concepts framing its API, and presents a complex rendering system that demonstrates both Vulkan’s uniqueness and its exceptional power.
You’ll find authoritative coverage of topics ranging from drawing to memory, and threading to compute shaders. The author especially shows how to handle tasks such as synchronization, scheduling, and memory management that are now the developer’s responsibility.
Vulkan™ Programming Guide introduces powerful 3D development techniques for fields ranging from video games to medical imaging, and state-of-the-art approaches to solving challenging scientific compute problems. Whether you’re upgrading from OpenGL or moving to open-standard graphics APIs for the first time, this guide will help you get the results and performance you’re looking for.
- Extensively tested code examples to demonstrate Vulkan’s capabilities and show how it differs from OpenGL
- Expert guidance on getting started and working with Vulkan’s new memory system
- Thorough discussion of queues, commands, moving data, and presentation
- Full explanations of the SPIR-V binary shading language and compute/graphics pipelines
- Detailed discussions of drawing commands, geometry and fragment processing, synchronization primitives, and reading Vulkan data into applications
- A complete case study application: deferred rendering using complex multi-pass architecture and multiple processing queues
- Appendixes presenting Vulkan functions and SPIR-V opcodes, as well as a complete Vulkan glossary
Graham Sellers, API lead on the Vulkan specification, is AMD Software Architect and Engineering Fellow. Sellers represents AMD at the OpenGL ARB, has actively contributed to the core Vulkan and OpenGL specs and extensions, and holds several graphics and image processing patents. He coauthored OpenGL® Programming Guide, Ninth Edition.
Contributing author John Kessenich is language lead on the Vulkan specification and is Senior Compiler Architect at LunarG Inc. He been active in OpenGL, GLSL, Vulkan, and SPIR-V development in the OpenGL ARB and in Khronos since 1999. Kessenich created SPIR-V and is its specification editor. As GLSL specification editor, he creates shader compiler tools and translators for improving portability.
I found this is better as a reference - for learning there are several online tutorials that I found that allowed you to progress faster.
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.