大家好,我是來自巴哈姆特的 %%鼠:
歡迎加入這趟 30 天鐵人旅程!主題是「渲染與 GPU 編程」。目標很簡單也很野心——把「看得懂」變成「做得出來」:你不只會懂 GPU 為何快、渲染管線怎麼跑、Shader 如何寫,還會實作到 Vulkan、WebGPU 與 CUDA,從畫出第一個三角形一路到能解釋 PBR 與基本光追差異。
以下導讀內容若有看不懂得單字先別緊張,後續文章會待著各位設定。
系統化知識地圖:CPU vs GPU、渲染管線、材質與光照、記憶體與資料流。
三條實作主線
可運行的小專案:三角形 → 模型載入 → 基本光照/材質 → Instancing;CUDA 的 thread/block/grid 觀念與小型運算範例。
性能與除錯思維:你會知道瓶頸在哪、該看哪個計數器、怎麼調整資料布局。
glslc
)。我避免綁特定版本,文章會說明差異點與常見踩雷,讓你在自己的環境也能通。
Week 1|基礎打底(D1–D7)
Week 2|材質與效率(D8–D14)
8. Normal Map 與 Bump Map:讓平面有細節
9. 數大便是美:GPU Instancing 實作
10. Vulkan 是什麼?與 OpenGL 的差異與優勢
11. Vulkan 專案骨架與初始化
12. Vulkan 渲染流程:Command Buffer 與 Render Pass
13. Vulkan 建立 Shader Module 並繪製三角形
14. Vulkan 載入模型並加入光影
Week 3|現代管線與 Web(D15–D21)
15. 深入 Descriptor Set 與 Pipeline Layout
16. WebGPU 是什麼?與 WebGL 的差異與優勢
17. 第一個 WebGPU 專案:環境與初始化
18. WebGPU 渲染管線解析
19. WGSL 編寫 Vertex / Fragment Shader
20. 在 WebGPU 中載入並繪製模型
21. 實作基本光照與材質
Week 4|GPU 通用計算與新技術(D22–D30)
22. CUDA 是什麼?GPU 平行運算基礎
23. 第一個 CUDA 專案:環境與 Hello World
24. CUDA Thread/Block/Grid 架構解析
25. [待定或預留時間] CUDA 實作
26. [待定或預留時間] CUDA 的效能分析與最佳化策略?
27. [待定或預留時間] GPU 新技術介紹
28. [待定或預留時間] GPU 新技術介紹
29. [待定或預留時間] GPU 新技術介紹
30. [待定或預留時間] 光柵化 vs 光線追蹤:兩種渲染方式的比較與取捨
待定主題我會依讀者回饋與篇幅,在該週調整最有價值的內容(會盡量挑「能落地、能測到效果」的技術)。
圖形與 GPU 的世界很酷,但也很誠實:你動手、它就回饋。接下來 30 天,我會把每個主題拆成能落地的最小單位,讓你每天都有「畫面/數字」可以驗收。
準備好了就從 Day 1:GPU 與 CPU 的差異 開始——我們先建立對「平行」與「資料局部性」的直覺,之後的 Vulkan/WebGPU/CUDA 都會因此好走很多。
開啟你的 GPU 之旅吧 🚀