Vulkan Programming Guide: The Official Guide to Learning Vulkan (Paperback)
暫譯: Vulkan 程式設計指南:學習 Vulkan 的官方指南 (平裝本)
Graham Sellers, John Kessenich
- 出版商: Addison Wesley
- 出版日期: 2016-10-31
- 定價: $2,300
- 售價: 9.5 折 $2,185
- 語言: 英文
- 頁數: 480
- 裝訂: Paperback
- ISBN: 0134464540
- ISBN-13: 9780134464541
-
相關分類:
Vulkan
-
相關翻譯:
Vulkan 應用開發指南 (Vulkan Programming Guide: The Official Guide to Learning Vulkan) (簡中版)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
$990OpenGL 4.0 Shading Language Cookbook (Paperback)
-
$1,386Programming 3D Applications with HTML5 and WebGL: 3D Animation and Visualization for Web Pages (Paperback)
-
$1,670$1,587 -
$620$490 -
$2,880$2,736 -
$1,840$1,748 -
$2,220$2,109 -
$3,980$3,781 -
$2,400$2,352 -
$354$336 -
$680$578 -
$580$458 -
$450$356 -
$450$315 -
$1,617Deep Learning (Hardcover)
-
$2,160Physically Based Rendering : From Theory to Implementation, 3/e (Hardcover)
-
$860$731 -
$1,980Learning Vulkan (Paperback)
-
$360$281 -
$520$442 -
$980$774 -
$320$288 -
$1,800$1,710 -
$1,850$1,758 -
$1,860$1,767
商品描述
<About>
Features
Authoritative, trusted, and comprehensive coverage, straight from two of Vulkan's development team leads
Covers both the new portable Vulkan API and SPIR-V shading language
Enables developers to gain direct control over GPU acceleration for maximum performance and predictability
Helps developers create a wide spectrum of 3D applications, and solve challenging compute problems in science and engineering
Contains extensive new code examples throughout
<Description>
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.
Coverage includes
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
<Sample Content>
Table of Contents
Figures xiii
Tables xv
Listings xvii
About This Book xxi
Acknowledgments xxvii
About the Author xxix
Chapter 1: Overview of Vulkan 1
Introduction 2
Instances, Devices, and Queues 3
Object Types and Function Conventions 18
Managing Memory 19
Multithreading in Vulkan 20
Mathematical Concepts 21
Enhancing Vulkan 23
Shutting Down Cleanly 31
Summary 33
Chapter 2: Memory and Resources 35
Host Memory Management 36
Resources 41
Device Memory Management 73
Summary 93
Chapter 3: Queues and Commands 95
Device Queues 96
Creating Command Buffers 97
Recording Commands 101
Recycling Command Buffers 105
Submission of Commands 107
Summary 109
Chapter 4: Moving Data 111
Managing Resource State 112
Clearing and Filling Buffers 123
Clearing and Filling Images 125
Copying Image Data 128
Copying Compressed Image Data 132
Stretching Images 133
Summary 135
Chapter 5: Presentation 137
Presentation Extension 138
Presentation Surfaces 138
Swap Chains 143
Full-Screen Surfaces 152
Performing Presentation 159
Cleaning Up 162
Summary 163
Chapter 6: Shaders and Pipelines 165
An Overview of GLSL 166
An Overview of SPIR-V 169
Pipelines 175
Executing Work 186
Resource Access in Shaders 188
Summary 224
Chapter 7: Graphics Pipelines 225
The Logical Graphics Pipeline 226
Renderpasses 230
The Framebuffer 237
Creating a Simple Graphics Pipeline 240
Dynamic State 264
Summary 266
Chapter 8: Drawing 267
Getting Ready to Draw 268
Vertex Data 271
Indexed Draws 272
Instancing 280
Indirect Draws 281
Summary 286
Chapter 9: Geometry Processing 287
Tessellation 288
Geometry Shaders 309
Programmable Point Size 319
Line Width and Rasterization 321
User Clipping and Culling 324
The Viewport Transformation 331
Summary 335
Chapter 10: Fragment Processing 337
Scissor Testing 338
Depth and Stencil Operations 340
Multisample Rendering 350
Logic Operations 357
Fragment Shader Outputs 358
Color Blending 362
Summary 366
Chapter 11: Synchronization 367
Fences 368
Events 376
Semaphores 381
Summary 384
Chapter 12: Getting Data Back 387
Queries 388
Reading Data with the Host 398
Summary 400
Chapter 13: Multipass Rendering 401
Input Attachments 402
Attachment Contents 408
Secondary Command Buffers 420
Summary 423
Appendix: Vulkan Functions 425
Glossary 429
Index 443
商品描述(中文翻譯)
<關於>
**特色**
權威、可信賴且全面的內容,直接來自Vulkan開發團隊的兩位負責人
涵蓋全新的可攜式Vulkan API和SPIR-V著色語言
使開發者能夠直接控制GPU加速,以獲得最佳性能和可預測性
幫助開發者創建各種3D應用程式,並解決科學和工程中的挑戰性計算問題
包含大量新的程式碼範例
<描述>
**Vulkan™開發者指南與參考:掌握跨平台圖形的下一代規範**
OpenGL規範的下一代版本Vulkan,從根本上重新設計,讓應用程式能夠直接控制GPU加速,以實現前所未有的性能和可預測性。**Vulkan™程式設計指南**是這一新標準的基本權威參考,適合所有Vulkan環境中的經驗豐富的圖形程式設計師。
Vulkan API負責人Graham Sellers(語言負責人John Kessenich提供貢獻)提供了豐富範例的可攜式Vulkan API和新的SPIR-V著色語言的介紹。作者介紹了Vulkan、其目標以及構成其API的關鍵概念,並展示了一個複雜的渲染系統,展示了Vulkan的獨特性和卓越的能力。
您將找到從繪圖到記憶體、從執行緒到計算著色器的權威內容。作者特別展示了如何處理現在由開發者負責的任務,如同步、排程和記憶體管理。
**Vulkan™程式設計指南**介紹了從視頻遊戲到醫學影像等領域的強大3D開發技術,以及解決挑戰性科學計算問題的最先進方法。無論您是從OpenGL升級還是首次轉向開放標準圖形API,本指南將幫助您獲得所需的結果和性能。
涵蓋內容包括
經過廣泛測試的程式碼範例,以展示Vulkan的能力並顯示其與OpenGL的不同
有關如何開始使用Vulkan的新記憶體系統的專家指導
對佇列、命令、數據移動和呈現的徹底討論
SPIR-V二進位著色語言和計算/圖形管道的完整解釋
對繪圖命令、幾何和片段處理、同步原語以及將Vulkan數據讀入應用程式的詳細討論
完整的案例研究應用程式:使用複雜的多通道架構和多個處理佇列的延遲渲染
附錄介紹Vulkan函數和SPIR-V操作碼,以及完整的Vulkan詞彙表
<範例內容>
目錄
圖表 xiii
表格 xv
清單 xvii
關於本書 xxi
致謝 xxvii
關於作者 xxix
第1章:Vulkan概述 1
介紹 2
實例、設備和佇列 3
物件類型和函數約定 18
記憶體管理 19
Vulkan中的多執行緒 20
數學概念 21
增強Vulkan 23
正常關閉 31
摘要 33
第2章:記憶體和資源 35
主機記憶體管理 36
資源 41
設備記憶體管理 73
摘要 93
第3章:佇列和命令 95
設備佇列 96
創建命令緩衝區 97
記錄命令 101
回收命令緩衝區 105
命令提交 107
摘要 109
第4章:數據移動 111
管理資源狀態 112
清除和填充緩衝區 123
清除和填充圖像 125
複製圖像數據 128
複製壓縮圖像數據 132
拉伸圖像 133
摘要 135
第5章:呈現 137
呈現擴展 138
呈現表面 138
交換鏈 143
全螢幕表面 152
執行呈現 159
清理 162
摘要 163
第6章:著色器和管道 165
GLSL概述 166
SPIR-V概述 169
管道 175
執行工作 186
著色器中的資源訪問 188
摘要 224
第7章:圖形管道 225
邏輯圖形管道 226
渲染通道 230
幀緩衝區 237
創建簡單的圖形管道 240
動態狀態 264
摘要 266
第8章:繪圖 267
準備繪圖 268
頂點數據 271
索引繪製 272
實例化 280
間接繪製 281
摘要 286
第9章:幾何處理 287
細分 288
幾何著色器 309
可編程點大小 319
線寬和光柵化 321
用戶裁剪和剔除 324
視口變換 331
摘要 335
第10章:片段處理 337
剪刀測試 338
深度和模板操作 340
多重取樣渲染 350
邏輯操作 357
片段著色器輸出 358
顏色混合 362
摘要 366
第11章:同步 367
圍欄 368
事件 376
信號量 381
摘要 384
第12章:獲取數據 387
查詢 388
與主機讀取數據 398
摘要 400
第13章:多通道渲染 401
輸入附件 402
附件內容 408
次級命令緩衝區 420
摘要 423
附錄:Vulkan函數 425
詞彙表 429
索引 443