图书介绍
GPU精粹 3pdf电子书版本下载
- (美)阮金编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302220701
- 出版时间:2010
- 标注页数:692页
- 文件大小:146MB
- 文件页数:711页
- 主题词:图象处理-程序设计
PDF下载
下载说明
GPU精粹 3PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第Ⅰ部分 几何体 2
第1章 使用GPU生成复杂的程序化地形 7
1.1 介绍 7
1.2 Marching Cubes算法和密度函数 7
1.2.1 在单元内生成多边形 8
1.2.2 查找表 9
1.3 地形生成系统概述 10
1.3.1 在地形块内部生成多边形 10
1.3.2 生成密度值 11
1.3.3 写一个有趣的密度函数 11
1.3.4 定制地形 14
1.4 在地形块中生成多边形 16
1.4.1 边缘数据 17
1.4.2 生成地形块:方法1 19
1.4.3 生成地形块:方法2 19
1.4.4 生成地形块:方法3 21
1.5 纹理和光影 23
1.6 对实际应用的考虑 27
1.6.1 细节层次 27
1.6.2 外部对象的碰撞和光照问题 28
1.7 结论 29
1.8 参考资料 29
第2章 群体动画渲染 31
2.1 目的 32
2.2 实例化的简单回顾 32
2.3 技术细节 33
2.3.1 基于常量的实例化 34
2.3.2 使用动画纹理的调色板蒙皮 35
2.3.3 几何变化 38
2.3.4 LOD系统 39
2.4 其他考虑因素 39
2.4.1 颜色变化 39
2.4.2 性能 39
2.4.3 整合 40
2.5 结论 40
2.6 参考资料 40
第3章 DirectX 10混合形状:打破限制 41
3.1 介绍 41
3.2 Dawn例子的实现 43
3.2.1 DirectX 10的特性 43
3.2.2 定义网格 43
3.2.3 流输出的方法 44
3.2.4 缓冲区-模板方法 47
3.3 运行例子 51
3.4 性能 51
3.5 参考资料 52
第4章 下一代SpeedTree渲染 53
4.1 介绍 53
4.2 轮廓裁减 53
4.2.1 轮廓鳍挤压 54
4.2.2 高度追踪 56
4.2.3 轮廓细节层次 58
4.3 阴影 59
4.3.1 树叶自遮挡 59
4.3.2 级联阴影贴图 61
4.4 树叶光照 62
4.4.1 两边光照 62
4.4.2 镜面光照 64
4.5 高动态范围和反锯齿 64
4.6 半透明覆盖 65
4.6.1 将半透明覆盖应用于SpeedTree 65
4.6.2 细节层次的交叉衰减 65
4.6.3 轮廓边反锯齿 66
4.7 结论 68
4.8 参考资料 69
第5章 普遍自适应的网格优化 71
5.1 介绍 71
5.2 总览 72
5.3 自适应优化模式 73
5.4 渲染工作流 74
5.4.1 深度标签计算 74
5.4.2 CPU阶段的渲染循环 75
5.4.3 GPU阶段的优化处理 76
5.5 结果 76
5.6 结论和改进 79
5.7 参考资料 79
第6章 GPU生成的树的过程式风动画 81
6.1 介绍 81
6.2 GPU上的过程式动画 81
6.3 现象学方法 82
6.3.1 风场 82
6.3.2 树的概念结构 82
6.3.3 模拟的两种分类 83
6.4 模拟步骤 86
6.5 渲染树 89
6.6 分析和比较 90
6.6.1 优势 91
6.6.2 劣势 91
6.6.3 性能评估 91
6.7 结论 92
6.8 参考资料 92
第7章 GPU上基于点的变形球可视化 93
7.1 变形球、光滑粒子流体力学和表面粒子 93
7.1.1 各种方法的对比 94
7.1.2 在GPU上基于点的表面可视化 95
7.2 限制粒子 96
7.2.1 定义显式表面 96
7.2.2 速度限制等式 97
7.2.3 在GPU中计算密度场 99
7.2.4 选择散列函数 99
7.2.5 创建并查询散列表 100
7.3 局部粒子斥力 102
7.3.1 斥力等式 102
7.3.2 GPU端最近的邻居 104
7.4 全局粒子传播 106
7.5 性能 109
7.6 渲染 110
7.7 结论 111
7.8 参考资料 111
第Ⅱ部分 光照和阴影 114
第8章 区域求和的差值阴影贴图 119
8.1 介绍 119
8.2 相关工作 120
8.3 percentage-closer过滤 120
8.4 差值阴影贴图 122
8.4.1 过滤差值阴影贴图 123
8.4.2 偏离 124
8.4.3 光渗色 126
8.4.4 数值稳定性 128
8.4.5 实现注释 129
8.4.6 差值阴影贴图和软阴影 130
8.5 区域求和差值阴影贴图 131
8.5.1 生成区域求和表 132
8.5.2 数字固定性重访问 132
8.5.3 结果 133
8.6 percentage-closer软阴影 135
8.6.1 遮挡体查找 135
8.6.2 渐变区域尺寸估计 135
8.6.3 阴影过滤 136
8.6.4 结果 136
8.7 结论 136
8.8 参考资料 137
第9章 使用全局照明实现互动的电影级重光照 139
9.1 介绍 139
9.2 算法总览 140
9.3 聚集样本 141
9.4 一次反射的间接照明 143
9.5 用于压缩的小波 144
9.6 增加多次反射 146
9.7 对稀疏矩阵数据进行压缩 147
9.8 基于GPU的重光照引擎 148
9.8.1 直接照明 149
9.8.2 小波变换 149
9.8.3 稀疏矩阵乘法 151
9.9 结果 152
9.10 结论 153
9.11 参考资料 153
第10章 在可编程GPU中实现并行分割的阴影贴图 155
10.1 介绍 155
10.2 算法 156
10.2.1 步骤1:分割视锥体 157
10.2.2 步骤2:计算光的变换矩阵 160
10.2.3 步骤3和4:产生PSSM和综合阴影 163
10.3 基于硬件的实现方法 164
10.3.1 多步方法 164
10.3.2 DirectX 9级别的加速 166
10.3.3 DirectX 10级别的加速 168
10.4 进一步的优化 177
10.5 结果 177
10.6 结论 180
10.7 参考资料 180
第11章 使用层次化的遮挡剔除和几何体着色器得到高效鲁棒的阴影体 183
11.1 介绍 183
11.2 阴影体综述 183
11.2.1 Z-Pass和Z-Fail 184
11.2.2 阴影体生成 185
11.2.3 性能和优化方法 186
11.3 实现方法 186
11.3.1 针对低质量网络的鲁棒阴影 186
11.3.2 使用几何体着色器动态生成阴影体 188
11.3.3 使用层次化遮挡裁剪提高性能 192
11.4 结论 194
11.5 参考资料 195
第12章 高质量的环境遮挡 197
12.1 回顾 197
12.2 问题 198
12.2.1 圆盘形状的失真 199
12.2.2 高频的尖点失真 199
12.3 一个鲁棒的解决方法 200
12.3.1 对不连续性进行光滑处理 200
12.3.2 移除尖点并加入细节 201
12.4 结果 204
12.5 性能 205
12.6 一些注意事项 206
12.6.1 强制收敛 206
12.6.2 可调整的参数 207
12.7 后续工作 209
12.8 参考资料 210
第13章 作为后置处理的体积光照散射 211
13.1 介绍 211
13.2 云隙光 212
13.3 体积光照散射 212
13.4 后置处理像素着色器 214
13.5 屏幕空间遮挡方法 215
13.5.1 遮挡pre-pass方法 215
13.5.2 遮挡模板方法 216
13.5.3 遮挡对比方法 216
13.6 一些注意事项 216
13.7 演示 216
13.8 扩展 217
13.9 结论 217
13.10 参考资料 218
第Ⅲ部分 渲染 220
第14章 用于真实感实时皮肤渲染的高级技术 225
14.1 皮肤外观 225
14.1.1 皮肤表面反射 226
14.1.2 皮肤子表面反射 227
14.2 皮肤渲染系统总述 228
14.3 镜面表面反射 229
14.4 散射理论 233
14.4.1 漫反射剖面 233
14.4.2 使用漫反射剖面渲染 234
14.4.3 漫反射剖面的形状 235
14.4.4 一个高斯和漫反射剖面 236
14.4.5 拟合预测的或测量的剖面 237
14.4.6 配置漫反射剖面 238
14.4.7 对皮肤的高斯和拟合 238
14.5 高级子表面散射 239
14.5.1 纹理空间漫反射 240
14.5.2 改进的纹理空间漫反射 241
14.5.3 经过修改的半透明阴影贴图 256
14.6 一个快速的布隆过滤器 260
14.7 结论 261
14.8 后续工作 261
14.9 参考资料 262
第15章 可播放的全方位捕捉 265
15.1 介绍 265
15.2 数据捕捉流水线 266
15.3 动态纹理的压缩和解压 268
15.3.1 主要分量分析 268
15.3.2 压缩 270
15.3.3 解压缩 271
15.3.4 可变PCA 272
15.3.5 实际使用中的考虑 273
15.4 串连特性 274
15.5 结论 275
15.6 参考资料 280
第16章 Crysis中植被的过程化动画和着色 283
16.1 过程化动画 283
16.2 植被着色 287
16.2.1 环境光照 288
16.2.2 边的光滑化 288
16.2.3 整合 289
16.2.4 实现细节 289
16.3 结论 291
16.4 参考资料 292
第17章 鲁棒的多镜面反射和折射 293
17.1 介绍 293
17.2 跟踪辅助光线 294
17.2.1 层次化距离图的生成 295
17.2.2 层次化距离图的光线跟踪 295
17.3 反射和折射 300
17.4 结果 302
17.5 结论 306
17.6 参考资料 306
第18章 用于浮雕映射的松散式锥形步进 309
18.1 介绍 309
18.2 浮雕映射总览 310
18.3 锥形步进映射 313
18.4 松散式锥形步进 313
18.4.1 计算松散式锥形映射图 314
18.4.2 使用松散式锥形映射图进行渲染 317
18.5 结论 320
18.6 补充读物 321
18.7 参考资料 321
第19章 Tabula Rasa中的延迟着色 323
19.1 介绍 323
19.2 一些背景知识 324
19.3 所支持的向前着色 324
19.3.1 一个受限的特效集 325
19.3.2 单效果,多技术 325
19.3.3 光照优先度 326
19.4 先进的光照特性 326
19.4.1 双向光照 327
19.4.2 球体映射 327
19.4.3 盒式光照 328
19.4.4 阴影贴图 328
19.4.5 进一步的扩展 330
19.5 可读取深度和法线缓存的优点 331
19.5.1 高级水体和折射 331
19.5.2 与分辨率无关的边检测 332
19.6 一些注意事项 334
19.6.1 材质属性 334
19.6.2 精确度 336
19.7 优化 336
19.7.1 高效的光照体积 337
19.7.2 模板掩码 337
19.7.3 动态分支 338
19.8 问题 338
19.8.1 混合透明度几何体 338
19.8.2 内存带宽 339
19.8.3 内存管理 340
19.9 结果 340
19.10 结论 342
19.11 参考资料 343
第20章 基于GPU的重要性采样 345
20.1 介绍 345
20.2 渲染公式 346
20.2.1 蒙特卡洛积分 346
20.2.2 重要性采样 346
20.2.3 对材质函数进行采样 347
20.3 拟随机低差异序列 349
20.4 使用mipmap过滤的样本 350
20.5 性能 353
20.6 结论 355
20.7 补充读物及参考资料 355
第Ⅳ部分 图像效果 358
第21章 真正的Impostor 363
21.1 介绍 363
21.2 算法和实现细节 364
21.3 结果 367
21.4 结论 368
21.5 参考资料 369
第22章 在GPU上处理法线贴图 371
22.1 传统实现 371
22.1.1 投影 371
22.1.2 包围盒 372
22.2 加速结构 373
22.2.1 一致网格 373
22.2.2 3D数值微分分析 373
22.3 GPU的处理 374
22.3.1 序号限制 375
22.3.2 内存和结构限制 375
22.4 实现 376
22.4.1 设置以及预处理 376
22.4.2 单路径实现 378
22.4.3 多路径实现 383
22.4.4 反走样 383
22.5 结果 383
22.6 结论 385
22.7 参考资料 386
第23章 高速的离屏粒子 387
23.1 动机 387
23.2 离屏渲染 388
23.2.1 离屏深度测试 388
23.2.2 获取深度 388
23.3 向下采样深度 389
23.3.1 点采样深度 390
23.3.2 最大深度采样 391
23.4 深度测试与柔和粒子 391
23.5 alpha混合 392
23.6 混合分辨率渲染 393
23.6.1 边检测 394
23.6.2 与模板进行合成 394
23.7 结果 396
23.7.1 图像质量 396
23.7.2 性能 396
23.8 结论 398
23.9 参考资料 398
第24章 保持线性的重要性 399
24.1 介绍 399
24.2 光照、显示以及颜色空间 399
24.2.1 数字图像捕捉、生成及显示中的问题 399
24.2.2 题外话:何为线性 400
24.2.3 显示器并非线性,渲染器为线性 400
24.3 症状 402
24.3.1 非线性输入纹理 402
24.3.2 mipmap 402
24.3.3 光照 403
24.3.4 负负不得正 403
24.4 解决方法 405
24.4.1 输入图像(扫描、绘画以及数字图片) 406
24.4.2 输出图像(最终渲染) 407
24.4.3 中间颜色缓存 408
24.5 结论 408
24.6 补充读物 408
第25章 在GPU上渲染向量图 411
25.1 介绍 411
25.2 二次曲线 411
25.3 三次样条 413
25.3.1 弯形曲线 417
25.3.2 环形曲线 418
25.3.3 尖形曲线 419
25.3.4 二次曲线 419
25.4 三角化 420
25.5 抗锯齿 421
25.6 代码 422
25.7 结论 423
25.8 参考资料 424
第26章 通过颜色进行对象探测:使用GPU进行实时视频图像处理 425
26.1 图像处理概况 425
26.2 根据颜色进行对象检测 427
26.2.1 创建标记 428
26.2.2 查找质心 430
26.2.3 将一幅图像整合到输入信号上 432
26.3 结论 433
26.4 补充读物 433
第27章 作为后置处理效果的运动模糊 435
27.1 介绍 435
27.2 从深度缓存提取对象位置 436
27.3 执行运动模糊 438
27.4 处理动态对象 439
27.5 屏蔽对象 439
27.6 额外的工作 439
27.7 结论 439
27.8 参考资料 439
第28章 实用景深后期处理 441
28.1 介绍 441
28.2 相关工作 441
28.2.1 总览 441
28.2.2 特定技术 442
28.3 景深 442
28.4 算法的改进 443
28.4.1 最初的随机方法(Stochastic Approach) 444
28.4.2 作为聚集的散射方法 444
28.4.3 模糊方法 445
28.5 完整的算法 448
28.5.1 深度信息 448
28.5.2 可变宽度的模糊 448
28.5.3 散光圈半径 449
28.5.4 关于第一人称视角武器的考虑 450
28.5.5 完整的着色器代码 450
28.6 结论 455
28.7 局限和后续工作 456
28.8 参考资料 458
第Ⅴ部分 物理仿真 460
第29章 GPU上实时刚体仿真 465
29.1 介绍 466
29.1.1 平移 466
29.1.2 旋转 467
29.1.3 形状表示 468
29.1.4 碰撞检测 469
29.1.5 碰撞交互 470
29.2 GPU上刚体仿真 470
29.2.1 概述 470
29.2.2 数据结构 472
29.2.3 步骤1:计算粒子值 473
29.2.4 步骤2:网格生成 474
29.2.5 步骤3:碰撞检测与交互 475
29.2.6 步骤4:动量计算 476
29.2.7 步骤5:计算位置和四元组 476
29.2.8 渲染 476
29.2.9 性能 477
29.3 应用 477
29.3.1 颗粒状材料 478
29.3.2 液体 478
29.3.3 耦合 479
29.4 结论 480
29.5 附录 480
29.6 参考资料 480
第30章 实时仿真与3D流体渲染 483
30.1 介绍 483
30.2 仿真 484
30.2.1 背景 484
30.2.2 流体运动方程 485
30.2.3 速度求解 485
30.2.4 固-流体交互 490
30.2.5 烟雾 501
30.2.6 火 502
30.2.7 水 502
30.2.8 性能考虑 503
30.2.9 存储 504
30.2.10 数值问题 504
30.3 渲染 506
30.3.1 体积渲染 506
30.3.2 液体渲染 511
30.4 结论 512
30.5 参考资料 512
第31章 使用CUDA进行快速N-body仿真 515
31.1 介绍 515
31.2 全对N-body仿真 516
31.3 全对N-body算法的CUDA实现 518
31.3.1 体-体之间力的计算 518
31.3.2 块计算 519
31.3.3 把块聚集到线程块中 520
31.3.4 定义线程块的网格 521
31.4 性能评测 522
31.4.1 优化 523
31.4.2 性能结果分析 525
31.5 以前使用GPU进行N-body仿真的方法 526
31.6 分层的N-body方法 526
31.7 结论 527
31.8 参考资料 527
第32章 使用CUDA进行宽阶段碰撞检测 531
32.1 宽阶段算法 531
32.1.1 排序和搜索 531
32.1.2 空间划分 532
32.1.3 并行空间划分 534
32.2 空间划分的一种CUDA实现 535
32.2.1 初始化 536
32.2.2 构建单元ID数组 537
32.2.3 单元ID数组的排序 538
32.2.4 创建碰撞单元列表 547
32.2.5 遍历碰撞单元列表 548
32.3 性能结果 548
32.4 结论 549
32.5 参考资料 549
第33章 用于碰撞检测的LCP算法的CUDA实现 551
33.1 并行处理 551
33.2 物理流程 552
33.3 确定接触点 553
33.3.1 连续方法 553
33.3.2 离散方法(基于一致性) 554
33.3.3 解析接触点 554
33.4 数学优化 554
33.4.1 线性规划 554
33.4.2 线性互补问题 555
33.4.3 二次规划 556
33.5 凸面距离计算 556
33.6 使用CUDA的LCP并行解决方案 558
33.7 结果 561
33.8 参考资料 563
第34章 使用单过程GPU扫描和四面体转换的有向距离场 565
34.1 介绍 565
34.1.1 有向距离场总览 565
34.1.2 方法的概览 566
34.2 扫描方法中的泄露瑕疵 566
34.2.1 平面测试 566
34.2.2 如何构建包围体 567
34.2.3 多边形模型的折叠 569
34.3 四边形GPU扫描方法 570
34.3.1 计算壳 571
34.3.2 计算四边形的交叉区域 571
34.3.3 使用角度权重的伪法线计算有向距离 572
34.4 结果 575
34.5 结论 578
34.6 后续工作 578
34.6.1 算法的改进 578
34.6.2 对实现方法进行改进 578
34.7 补充读物 578
34.8 参考资料 580
第Ⅵ部分 GPU计算 582
第35章 使用GPU进行病毒特征的快速匹配 587
35.1 介绍 587
35.2 模式匹配 589
35.3 GPU实现 590
35.4 结果 593
35.5 结论和后续工作 595
35.6 参考资料 596
第36章 用GPU进行AES加密和解密 597
36.1 用于整数流处理的新功能 597
36.1.1 转换反馈模式 597
36.1.2 GPU编程扩展 598
36.2 AES算法概述 599
36.3 AES在GPU上的实现 601
36.3.1 输入/输出和状态 602
36.3.2 初始化 603
36.3.3 轮操作 603
36.3.4 最后一轮 607
36.4 性能 607
36.4.1 顶点程序与片段程序 607
36.4.2 与基于CPU的加密的比较 608
36.5 对并行的考虑 608
36.5.1 操作的块密码模式 608
36.5.2 用于并行处理的模式 609
36.6 结论和后续工作 610
36.7 参考资料 611
第37章 使用CUDA进行高效的随机数生成及应用 613
37.1 Monte Carlo仿真 614
37.2 随机数生成器 616
37.2.1 简介 616
37.2.2 均匀到高斯的转换生成器 617
37.2.3 高斯转换的类型 620
37.2.4 Wallace高斯生成器 621
37.2.5 把Wallace高斯生成器集成到仿真中 624
37.3 示例程序 625
37.3.1 亚式期权 626
37.3.2 回顾期权的变体 627
37.3.3 结果 629
37.4 结论 630
37.5 参考资料 630
第38章 使用CUDA进行地球内部成像 633
38.1 介绍 633
38.2 地震数据 634
38.3 地震数据处理 635
38.3.1 震波传播 637
38.3.2 使用SRMIP算法进行震波偏移 638
38.4 GPU实现 640
38.4.1 GPU/CPU通信 641
38.4.2 CUDA的实现 642
38.4.3 震波传播内核 643
38.5 性能 646
38.6 结论 646
38.7 参考资料 647
第39章 使用CUDA的并行前缀和(扫描方法) 649
39.1 介绍 649
39.2 实现 650
39.2.1 并行扫描的雏形 650
39.2.2 一种高效的并行扫描算法 652
39.2.3 避免bank冲突 654
39.2.4 随机长度的数组 656
39.2.5 进一步优化及性能结果 657
39.2.6 CUDA对OpenGL实现的优势 659
39.3 扫描的应用 660
39.3.1 流压缩 660
39.3.2 区域求和表 661
39.3.3 基数排序 663
39.3.4 前人的贡献 665
39.4 结论 666
39.5 参考资料 666
第40章 高斯函数的增量计算 669
40.1 介绍和相关工作 669
40.2 多项式向前差分 671
40.3 增量高斯算法 673
40.4 误差分析 675
40.5 性能 677
40.6 结论 678
40.7 参考资料 678
第41章 使用几何体着色器处理紧凑和可变长度的GPU反馈 681
41.1 介绍 681
41.2 为什么要使用几何体着色器 681
41.3 几何体着色器的动态输出 682
41.4 算法和应用 684
41.4.1 构建直方图 684
41.4.2 压缩 686
41.4.3 Hough变换 686
41.4.4 角点检测 689
41.5 优势:GPU本地性和SLI 690
41.6 性能和限制 691
41.6.1 总括 691
41.6.2 Hough图最大值检测的性能 691
41.7 结论 692
41.8 参考资料 692