GPU Gems 3: Programming Techniques for High-Performance Graphics and General-Purpose Computation 编辑:Hubert Nguyen (NVIDIA) 出版社:Addison-Wesley | 2007
这是《GPU Gems 3》的完整读书笔记,涵盖:
- 41章核心内容:从几何处理到GPU通用计算
- 6个主题部分:几何、光照阴影、渲染、图像效果、物理模拟、GPU计算
- 统一架构时代:基于GeForce 8系列(首个统一着色器架构)
- CUDA元年:CUDA 1.0时代的完整实战案例
- 完全免费:NVIDIA官网在线提供
- 程序化地形生成(GPU噪声+侵蚀)
- 大规模人群动画渲染
- DirectX 10 Blend Shapes
- 新一代SpeedTree渲染
- 自适应网格细化
- GPU程序化风动画
- 基于点的Metaball可视化
- Summed-Area Variance Shadow Maps ⭐⭐⭐
- 交互式电影重照明(全局光照)
- 并行分割阴影贴图(CSM/PSSM)
- 几何着色器阴影体
- 高质量环境光遮蔽
- 体积光散射后处理
- 真实感皮肤渲染
- 通用捕捉回放
- Crysis植被动画与着色
- 多重镜面反射与折射
- Relaxed Cone Stepping视差映射
- Tabula Rasa延迟着色
- GPU重要性采样
- True Impostors
- GPU烘焙法线贴图
- 高速离屏粒子
- 线性工作流的重要性 ⭐⭐⭐
- 矢量艺术GPU渲染
- 基于颜色的物体检测
- 运动模糊后处理
- 景深后处理
- GPU刚体模拟
- 3D流体实时模拟与渲染
- CUDA N-Body模拟
- CUDA广域碰撞检测
- CUDA LCP碰撞检测算法
- 符号距离场四面体转换
- GPU病毒特征匹配
- AES加密解密
- CUDA高效随机数生成
- CUDA地球次表面成像
- CUDA并行前缀和(Scan)
- 高斯增量计算
- 几何着色器GPU反馈
| 维度 | GPU Gems 3 | GPU Gems 2 | GPU Gems 1 |
|---|---|---|---|
| 定位 | 统一架构+CUDA | 高级技术+GPGPU | 实战技巧合集 |
| 年份 | 2007 | 2005 | 2004 |
| 章节数 | 41章 | 48章 | 42章 |
| 硬件 | GeForce 8 (统一架构) | GeForce 6/7 (SM 3.0) | GeForce FX (SM 2.0) |
| 新特性 | 几何着色器、CUDA | 顶点纹理、动态分支 | 早期可编程管线 |
| CUDA | ✅ 完整实战(Ch31-39) | ||
| 现代性 | ✅ 最接近现代技术 |
- ✅ 统一着色器架构:GPU架构重大变革,现代GPU基础
- ✅ 几何着色器:DirectX 10革命性特性的首次实战应用
- ✅ CUDA 1.0:见证GPGPU从图形API到专用框架的转型
- ✅ 现代技术:VSM、CSM、延迟着色等仍是主流方案
- ✅ 物理模拟:GPU物理的完整实现(刚体、流体、N-Body)
- ✅ 后处理:运动模糊、景深、体积光等现代游戏标配
渲染技术:
- 阴影:Ch8(VSM)⭐, Ch10(CSM)⭐, Ch11(阴影体)
- 光照:Ch9(GI重照明), Ch12(AO)
- 后处理:Ch13(体积光)⭐, Ch27(运动模糊)⭐, Ch28(景深)⭐
几何处理:
- 地形:Ch1(程序化地形)
- 植被:Ch4(SpeedTree), Ch6(风动画), Ch16(Crysis植被)
- 人群:Ch2(动画人群)⭐
- 曲面:Ch5(自适应细化)
CUDA核心:
- 基础:Ch37(随机数), Ch39(Scan)⭐
- 物理:Ch29(刚体), Ch30(流体)⭐, Ch31(N-Body)⭐
- 碰撞:Ch32(Broad-Phase), Ch33(LCP)
图像效果:
- 色彩:Ch24(线性工作流)⭐⭐⭐
- 特效:Ch21(Impostor), Ch23(粒子)
- 计算机视觉:Ch26(物体检测)
高级渲染:
- 材质:Ch14(皮肤), Ch17(反射折射)
- 映射:Ch18(Relief Mapping), Ch22(法线烘焙)
- 采样:Ch20(重要性采样)
- 📘 在线版本:https://developer.nvidia.com/gpugems/gpugems3
- 💻 示例代码和Demo:可下载
- 📚 GPU Gems 1和2:也在线提供
- GPU Gems 1读书笔记 - 早期GPU编程基础
- GPU Gems 2读书笔记 - SM 3.0高级技术
- RTR4读书笔记 - 实时渲染理论
- PBRT4读书笔记 - 离线渲染实现
- GPU Gems 1和2的基础知识
- Shader编程经验(HLSL/Cg)
- 线性代数和微积分
- C/C++(对于CUDA部分)
路径1:现代游戏开发者(推荐) ⭐⭐⭐
Ch8(VSM)→ Ch10(CSM)→ Ch13(体积光)→ Ch19(延迟着色)→ Ch27-28(后处理)
路径2:CUDA/并行计算研究者 ⭐⭐⭐
Part V(物理模拟,Ch29-35)→ Part VI(GPU计算,Ch36-41)→ 理解CUDA 1.0时代
路径3:技术美术
Ch1(程序化地形)→ Ch4+6(植被)→ Ch14(皮肤)→ Ch24(线性工作流)→ Ch27-28(后处理)
路径4:图形研究者
Ch8(VSM)→ Ch18(Relief Mapping)→ Ch20(重要性采样)→ Ch30(流体)→ Ch39(Scan)
路径5:完整学习
Part I→VI按顺序(41章)
路径6:几何着色器专题
Ch3(Blend Shapes)→ Ch11(阴影体)→ Ch41(GPU反馈)→ 理解GS应用场景
- ✅ 实现VSM阴影系统(Ch8)- 现代游戏标配
- ✅ 学习CUDA Scan算法(Ch39)- 并行算法基石
- ✅ 实现体积光后处理(Ch13)- 视觉冲击力强
- ✅ 对比统一架构vs分离架构(Ch30 vs GPU Gems 2)
- ✅ 探索几何着色器的应用边界(Part I+II)
GPU:
- GeForce 8系列(DirectX 10)
- 统一着色器架构(顶点/像素/几何处理器统一)✅ 革命性变革
- Shader Model 4.0
- 几何着色器(Geometry Shader)✅ 新增
- 更强的浮点性能
- CUDA 1.0发布(2006年11月)
架构变革意义:
- 顶点/像素/几何处理器不再分离
- 动态资源分配,提高利用率
- 为GPGPU铺平道路
- 现代GPU的架构基础
CUDA状态:
- 刚发布1年(2006年11月→2007年出版)
- 早期采用者的实战经验
- API仍在快速演进
- 社区刚开始形成
技术演进:
- 统一架构持续优化(至今17年)
- CUDA成为主导(深度学习爆发)
- 几何着色器→Mesh Shader(2018+)
- 实时光线追踪(RTX, 2018)
- AI加速(Tensor Cores)
仍然有效的核心技术:
- VSM/CSM阴影仍是主流
- 延迟着色仍广泛使用
- 体积光后处理仍是标准
- CUDA Scan等并行算法是基石
- 线性工作流成为行业标准
已过时的部分:
- 几何着色器性能限制(已被Mesh Shader取代)
- CUDA 1.0 API(已更新多次)
- DirectX 10(现在DX12/Vulkan)
- 总行数:1215行(初始框架)
- 完成日期:2026-03-05
- 状态:✅ 框架完成,📝 详细内容持续补充中
- 笔记质量:⭐⭐⭐⭐(框架完整,Part I详细)
- 完整框架:所有41章的结构和目录
- 重点突出:VSM、CSM、CUDA、体积光等现代技术
- 技术分类:按应用领域分类章节
- 历史价值:见证统一架构和CUDA的诞生
- 互补体系:与GPU Gems 1/2形成完整系列
- 现代视角:对比2007年技术与现代GPU编程
- 持续更新:框架已完成,详细内容持续补充
已完成:
- ✅ 完整41章目录结构
- ✅ Part I部分章节详细内容
- ✅ Part II Ch8(VSM)详细实现
- ✅ 所有章节概述
待补充:
- 📝 Part II Ch9-13详细技术要点
- 📝 Part III-VI详细技术要点
- 📝 更多CUDA代码示例和算法描述
- 📝 章节间的技术关联
贡献方式:
- 欢迎补充详细技术要点
- 欢迎纠正技术错误
- 欢迎补充实践经验
本笔记仅包含技术要点总结和概念提取,不含原书的完整内容。 完整内容请访问NVIDIA官方在线版本(完全免费)。
原书版权:© 2007 NVIDIA Corporation and Addison-Wesley
欢迎提出改进建议!特别欢迎补充Part II-VI的详细技术内容和CUDA实战案例。
笔记整理:Master + Claude 最后更新:2026-03-05 版本:v0.1(初始框架)