編輯推薦
適讀人群 :麵嚮Windows平颱上的3D開發人員。 全麵講解瞭 Direct3D 12 新版本的流水綫狀態對象、根簽名、捆綁包、命令列錶、 資源堆和屏障等新功能。
以實例程序演示瞭 Direct3D 12 的渲染流水綫和計算流水綫,幫助讀者透徹掌握 Direct3D 12的底層實現,為讀者今後用 HLSL5.1 編寫著色器打下紮實的基礎。
綜閤應用部分將本書各章中的知識巧妙地結閤在一起,便於學以緻用。
內容簡介
Direct 3D 12編程指南 係統介紹瞭Direct3D 12各方麵的知識,包括開始前的準備工作,如何創建DirectX 12項目,編程後的步驟,以及關於多綫程、命令隊列、資源結構、圖形流水綫、計算流水綫和GPU內部傳參等內容,zui後講解瞭一個基於Direct3D 12實現的字體引擎。Direct 3D 12編程指南 重點介紹Direct3D 12的知識,而且減少對計算機圖形學中通用知識的介紹,因為讀者完全可以在其他的書中得到這些知識。
Direct 3D 12編程指南 的適用對象為麵嚮Windows平颱的3D開發人員。
作者簡介
作者張羽喬,曾先後供職於盛大和騰訊遊戲開發部門,現於金山西山居從事劍網三重製版的自研引擎的開發,在Direct3D領域有著豐富的經驗。
目錄
目 錄
第1章 開始前的準備 1
1.1 創建DirectX 12項目 1
1.1.1 安裝Windows 10和
Visual Studio 2015 1
1.1.2 新建解決方案和項目 1
1.1.3 配置使用Windows 10 SDK 3
1.1.4 新建main.cpp 4
1.1.5 新建rendermain.cpp 7
1.1.6 鏈接dxgi.lib和d3d12.lib庫 7
1.1.7 生成並調試 8
1.2 COM簡介 9
1.2.1 構建分布式係統 9
1.2.2 接口和實現的徹底分離 10
章末小結 10
第2章 開始Direct3D 12編程 11
2.1 設備、命令隊列和交換鏈 11
2.1.1 啓用調試層 11
2.1.2 創建設備 11
2.1.3 創建命令隊列 13
2.1.4 創建交換鏈 15
2.1.5 呈現交換鏈緩衝 18
2.2 渲染到交換鏈緩衝前的準備 19
2.2.1 渲染到交換鏈緩衝的兩種方式 19
2.2.2 創建渲染目標視圖 20
2.2.3 創建命令分配器和命令列錶 22
2.3 以歸零方式渲染到交換鏈緩衝 24
2.3.1 轉換資源屏障 24
2.3.2 執行命令列錶 26
2.3.3 小結 27
2.4 以繪製方式渲染到交換鏈緩衝 28
2.4.1 圖形流水綫初探 28
2.4.2 繪製一個三角形 44
章末小結 68
第3章 多綫程 69
3.1 命令隊列 69
3.1.1 不同命令之間的原子性 69
3.1.2 同一命令內部的並發性 70
3.2 圍欄 71
3.3 命令分配器和命令列錶 73
3.3.1 復習並深入 73
3.3.2 捆綁包 75
3.4 資源屏障 78
3.4.1 轉換資源屏障 79
3.4.2 彆名資源屏障 82
3.4.3 無序訪問視圖資源屏障 83
3.5 Draw Call 83
章末小結 84
第4章 資源 85
4.1 資源的結構 85
4.1.1 邏輯結構 85
4.1.2 物理結構 89
4.2 資源的創建 95
4.2.1 GPU架構 95
4.2.2 資源堆 97
4.2.3 資源 101
4.3 CPU訪問資源 105
4.3.1 概念 105
4.3.2 加載DDS文件(一) 107
4.4 GPU訪問資源 110
4.4.1 復製—加載DDS
文件(二) 110
4.4.2 解析—MSAA 112
4.5 圖形流水綫訪問資源 115
4.5.1 索引緩衝 115
4.5.2 頂點緩衝 118
4.5.3 流輸齣緩衝 125
4.5.4 描述符堆和描述符 133
4.5.5 根簽名再探 136
章末小結 157
第5章 圖形流水綫再探 158
5.1 輸齣混閤階段 158
5.1.1 深度階段 160
5.1.2 模闆階段 163
5.1.3 融閤階段 167
5.2 幾何著色器階段 173
5.3 細分階段 178
5.3.1 外殼著色器階段 179
5.3.2 細分階段 181
5.3.3 域著色器階段 184
5.3.4 小結 185
章末小結 190
第6章 計算流水綫 191
6.1 計算流水綫狀態 191
6.2 計算流水綫啓動 194
6.3 無序訪問資源視圖 195
6.4 二次貝塞爾麯綫 197
章末小結 203
第7章 GPU內部傳參 204
7.1 謂詞 204
7.2 間接執行 206
7.2.1 創建命令簽名 206
7.2.2 添如間接執行命令 209
7.3 查詢 212
章末小結 219
第8章 字體引擎 220
8.1 TrueType字體 220
8.2 繪製字形 225
章末小結 247
Direct 3D 12編程指南 epub pdf mobi txt 電子書 下載 2024
Direct 3D 12編程指南 下載 epub mobi pdf txt 電子書
評分
☆☆☆☆☆
書不錯的,正在看書不錯的,正在看書不錯的,正在看
評分
☆☆☆☆☆
入門參考
評分
☆☆☆☆☆
???????
評分
☆☆☆☆☆
感覺不太好,和理想的差遠瞭
評分
☆☆☆☆☆
入門參考
評分
☆☆☆☆☆
書的內容和講解體製實在不敢恭維
評分
☆☆☆☆☆
???????
評分
☆☆☆☆☆
入門參考
評分
☆☆☆☆☆
拿到書急切地看瞭下,很失望,原因是和OpenGL著名的紅寶書(OpenGL編程指南(第x版))做瞭比對,同樣是“編程指南”,這本“Direct3D 12編程指南”寫的過於籠統和粗略。盡管該書聲稱“不要求讀者掌握Win32 API、COM和之前版本的Direct3D的相關知識”,但是如果沒有這些預備知識,很難讀懂書中的源碼。該書最大的問題是沒有對Direct3D繪製過程中涉及到的概念做詳細的闡述,僅僅就是一兩句話的解釋,然後就開始解釋對應函數的參數含義,這種寫法僅對有相當Direct3D經驗的讀者適用。雖然是按照圖形流水綫的順序講解的,但是和OpenGL紅寶書的全麵翔實相比,相差甚遠。插圖敷衍,代碼字體偏小不易閱讀,感覺作者是匆忙寫就的一本關於D3D的小冊子(或者是技術博客),用於和已經有相當D3D經驗的程序員交流,而不是麵嚮準備初學D3D的讀者(盡管作者聲稱閱讀此書不需要有D3D經驗)。相比之下,OpenGL紅寶書從簡到難,步步為營,逐步深入,引人入勝。這本書和OpenGL紅寶書的差彆,就像計算機專業國內大學教材和國外大學教材的差彆(相信很多讀者都有這樣的體會,直接閱讀英文原版教材,竟然比閱讀中文教材還容易理解)。最後,此書價格相對貴,感覺不值。