图书介绍

3D游戏 卷1 实时渲染与软件技术2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

3D游戏 卷1 实时渲染与软件技术
  • (英)Alan Watt,(英)Fabio Policarpo著;沈一帆,陈文斌,朱怡波等译 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111156528
  • 出版时间:2005
  • 标注页数:566页
  • 文件大小:45MB
  • 文件页数:615页
  • 主题词:三维-动画-游戏-软件开发

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

3D游戏 卷1 实时渲染与软件技术PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 三维计算机图形学的数学基础1

1.1处理三维结构1

1.1.1计算机图形学中的三维几何学——仿射变换1

第一部分 基础知识1

1.1.2改变坐标系的变换6

1.2向量与计算机图形学7

1.2.1向量加法7

1.2.2向量的长度8

1.2.3法向量与叉积8

1.2.4法向量与点积9

1.2.5与法向量相关的向量10

1.3.1光线几何学——交点11

1.3光线与计算机图形学11

1.3.2光线与球体的交点12

1.3.3光线与凸多边形的交点12

1.3.4光线与长方体的交点15

1.4多边形性质的双线性插值15

1.5使用SIMD指令集的基础数学引擎16

第2章 建模与表示1——对比回顾与多边形网格模型24

2.1简介24

2.2三维物体的多边形表示27

2.2.1创建多边形对象30

2.2.2多边形对象的手工建模31

2.2.4多边形对象的交互式/数学生成32

2.2.3多边形对象的自动生成32

2.3高级方法——构造性实体几何法36

2.4应用建模器或编辑器的高级方法38

第3章 建模与表示2——多边形网格的经济性40

3.1多边形模型压缩40

3.2几何形状压缩(每个顶点的信息)40

3.3编码连接42

3.4三角链42

3.5局部与全局算法44

3.6顶点缓冲的应用44

3.7细节层次处理46

4.2简单的高度场地形51

4.1简介51

第4章 建模与表示3——地形特殊化51

4.3地形的建模过程——分形52

4.4地形LOD:三角二叉树53

4.5用光线投射的方法渲染地形56

第5章 建模与表示4——贝济埃、B样条和细分曲面57

5.1简介57

5.2贝济埃曲线58

5.2.1分段贝济埃曲线的连接63

5.2.2贝济埃曲线性质小结64

5.3 B样条曲线64

5.3.1均匀B样条65

5.3.2非均匀B样条68

5.3.3 B样条曲线特性小结73

5.4有理曲线74

5.4.1有理贝济埃曲线74

5.4.2 NURBS75

5.5从曲线到曲面76

5.5.1连续性与贝济埃面片79

5.5.2贝济埃面片物体——犹他茶壶80

5.5.3 B样条曲面片81

5.6建模或创建面片曲面82

5.6.1用面片的横截面建模83

5.6.2编辑面片网络——改变存在的网络86

5.6.3用曲面拟合创建面片物体89

5.7渲染参数曲面93

5.8游戏中的实用贝济埃技术99

5.8.1双二次网格亚采样99

5.8.2曲线、物体和细分106

5.9细分曲面111

5.9.1 Catmull-Clark细分111

5.9.2蝴蝶细分114

5.9.3改进的蝴蝶算法123

5.10.2面片网格125

5.10.3细分表面125

5.10.1 LOD多边形网格125

5.10缩放性——多边形网格、面片网格和细分曲面125

第二部分 传统3D图形处理方法127

第6章 传统多边形网格渲染技术127

6.1 图形流水线中的坐标空间和几何操作128

6.1.1局部或模型坐标系128

6.1.2世界坐标系128

6.1.3照相机(或眼睛、视见)坐标系128

6.2视见空间里的操作131

6.2.1筛选或背面剔除132

6.2.2视见约束体132

6.2.3三维屏幕空间134

6.2.4视见约束体和深度136

6.3图形流水线中的算法操作138

6.3.1基本视见约束体筛选和裁剪139

6.3.2像素的明暗处理141

6.3.3明暗插值技术146

6.3.4隐面剔除148

6.4渲染示例154

6.4.1图6-36(见彩页)154

6.4.2图6-37(见彩页)154

6.4.3图6-38(见彩页)154

6.4.4图6-40(见彩页)154

6.4.5图6-41(见彩页)155

第7章 传统映射技术156

7.1简介156

7.2.1使用双线性插值的逆向映射158

7.2二维纹理贴图到多边形网格物体158

7.2.2使用中间表面的逆向映射方法159

7.2.3实用纹理映射161

7.3二维纹理空间到双三次参数曲面片物体163

7.4凹凸纹理映射164

7.4.1凹凸纹理映射的多通道技术165

7.4.2针对凹凸映射的预计算技术166

7.5环境映射技术166

7.5.1立方体映射168

7.5.2球面映射168

7.5.3环境映射:要点比较170

7.6.1三维噪声函数171

7.6三维纹理域技术171

7.6.2模拟湍流172

7.6.3三维纹理和动画173

7.6.4三维光照贴图174

7.7对比试验174

7.7.1图7-23(见彩页)175

7.7.2图7-24(见彩页)175

7.7.3图7-25(见彩页)175

第8章 反走样理论和实践176

8.1简介176

8.2走样和采样176

8.3锯齿边178

8.4计算机图形采样和实际采样的比较179

8.5采样和重构180

8.6简单的比较180

8.7前滤波方法181

8.8超采样或后滤波182

8.9纹理映射中的反走样184

8.10图像的傅里叶变换188

第三部分 实时渲染193

第9章 复杂场景的可视性处理193

9.1简介193

9.2为什么要用树结构195

9.2.2八叉树196

9.2.1空间细分层次196

9.3 BSP树198

9.4包围体层次结构200

9.5 BSP树和多边形物体200

9.5.1 BSP树和隐面消除200

9.5.2怎样为多边形网格场景创建BSP树204

9.5.3背面筛选207

9.5.4对照视见约束体进行筛选207

9.5.5影响范围209

9.5.6实用BSP树209

9.5.7地形和BSP技术210

9.6用于构造内型环境的特殊手段212

9.7人口和镜子213

9.8高级视见约束体筛选216

9.8.1开发BV几何性质217

9.8.2在视见约束体筛选中开发一致性218

9.9精确的可视性219

9.9.1精确的可视性和预计算219

9.9.2可视性过程的排序策略220

9.9.3视见约束体内的可视性:闭塞筛选220

9.10动态物体及其可视性223

第10章 游戏中的光照效果225

10.1光照贴图225

10.1.1光照贴图空间选取226

10.1.2多边形/光照贴图的一致性227

10.1.3光照贴图实践228

10.2.2移动的(以观察者为中心的)聚光灯230

10.2.3运动物体和环境光230

10.2使用光照贴图的动态光照效果230

10.2.1运动物体(常用)230

10.2.4运动物体和Gouraud明暗模型231

10.3动态光源231

10.4可调/可分离的光源231

10.5雾贴图/容积雾231

10.6光照例子的研究232

第11章 游戏中的阴影237

11.1阴影的特性237

11.1.1计算机图形学中阴影的特性238

11.2.1阴影算法:多边形投影/扫描线239

11.1.2地面上的简单阴影239

11.2经典的阴影算法239

11.2.2阴影算法:阴影体240

11.2.3阴影算法:光源变换到阴影多边形的来历242

11.2.4阴影算法:阴影Z缓冲243

11.3游戏中的阴影244

11.3.1在光照贴图中加入阴影244

11.3.2柔和阴影244

11.3.3动态物体的快速阴影245

12.2多路函数性249

12.2.1合成渲染图像249

12.1简介249

第12章 多路渲染249

12.2.2混合(OpenGL)250

12.2.3 Z缓冲(OpenGL)251

12.2.4累加缓冲(OpenGL)251

12.2.5模板缓冲(OpenGL)251

12.3多路算法252

12.3.1由后向前透明252

12.3.2平面反射253

12.3.3多路阴影体255

12.3.4多路阴影体——实现256

12.3.5光照对象259

12.4多路采样方法260

12.5多纹理261

12.6多纹理实例262

12.6.1细节调节262

12.6.2视角依赖的细节光照贴图263

12.6.3将多纹理用作最终光照模型263

第四部分 对象的控制265

第13章 运动控制265

13.1简介265

13.2对动画进行预编辑——线性插值及耗用时间266

13.3预编辑动画——插值问题267

13.4预编辑动画——显式编辑268

13.5旋转插值271

13.6用四元数表示旋转272

13.6.1四元数的插值274

13.6.2移入与移出四元数空间274

13.6.3球形的线性插值(slerp)275

13.7将照相机作为动画对象277

13.8粒子动画278

13.9粒子动画与计算机游戏280

13.10关节结构282

第14章 动态仿真控制290

14.1著名示例——脱机动画中的动力学290

14.2初值问题和边值问题290

14.4动态仿真的动机291

14.3主题范围291

14.5基本经典粒子论292

14.6基本经典刚体论294

14.6.1线动量、角动量和质心294

14.6.2世界参照系和物体参照系294

14.6.3刚体的方向294

14.6.4角速度295

14.6.5刚体——力和力矩296

14.6.6惯性张量297

14.6.7碰撞反应299

14.7动态仿真的实用性300

14.7.1一般动力学模块300

14.7.2确定确切的碰撞时间301

14.7.3应用依赖性302

14.7.4简单例子302

14.7.5预计算和在线仿真306

14.7.6时空约束307

14.8数值积分308

14.8.1欧拉方法和误差308

14.8.2多步法——Adams-Bashforth309

14.8.3预测—校正310

14.8.4Runge-Kutta311

14.8.5自适应方法312

第15章 碰撞检测313

15.1广义/狭义二阶段算法315

15.2包围体层次结构317

15.3使用AABB的广义碰撞检测318

15.3.1 OBB树319

15.3.2建造OBB树319

15.4使用OBB的广义碰撞检测320

15.5使用局部或对象空间划分的广义碰撞检测322

15.6狭义碰撞检测323

15.6.1凸多面体对——精确碰撞检测323

15.6.2 Lin-Canny最近特征算法324

15.6.3分割面326

15.7单阶段方法327

15.7.1 BSP树327

15.7.2局部或对象空间划分——BSP树合并328

15.7.3球体/多面体的特殊化处理329

15.7.4使用深度缓存330

15.7.5 Hubbard的时间攸关球树算法——单步方法330

第16章 交互控制333

16.1交互与动画333

16.2控制器模块333

16.3用户—对象交互——使用简单阻尼的6自由度控制334

16.4用户—对象动画——4键汽车仿真336

16.5对象—对象交互339

16.6照相机—对象交互340

16.7具有简单自治行为的对象340

16.7.1炮台340

16.7.2机器人飞行物体341

16.8用户—场景交互343

第17章 行为与人工智能345

17.1确定的方法和体系结构346

17.1.1有限状态机347

17.1.2模糊状态机348

17.2主体和层次349

17.2.1反射或反应主体350

17.2.2具有内部状态的反射主体350

17.2.3基于目标的主体350

17.3主体体系结构的例子351

17.4认知模型和情景演算354

17.5作为例子的感知视觉的作用358

17.6认知结构359

17.6.1认知和神经网络359

17.6.2两个线性可分模式类的感知器361

17.6.3n类别的感知器363

17.6.4 MLP前馈神经网络364

17.6.5向后传播算法365

第五部分 二维技术367

第18章 二维技术367

18.1图像金字塔367

18.2小波变换369

18.3图像变换与基矩阵372

18.4 小波与计算机游戏373

18.5图像变形——变形转换技术377

18.5.1变形转换二维图像379

18.5.2二样条网格扭曲380

第19章 基于图像的渲染383

19.1简介383

19.2重复使用已绘制的图像——二维技术383

19.2.1平面插板或sprite383

19.2.2计算平面插板的有效性385

19.2.3布告板和光照效果386

19.3.1优先渲染387

19.3.2图像分层387

19.3变化的渲染资源387

19.4使用深度信息390

19.4.1三维卷绕390

19.4.2分层深度图像(LDI)393

19.4.3使用LDI的人口图像394

19.5视见插值395

19.6四维技术——泛光或光场渲染方法398

19.7照片建模和IBR399

19.7.1使用照片全景的基于图像的渲染402

19.7.2合成全景图402

20.1简介405

20.2定义405

第20章 多人游戏技术405

第六部分 软件技术405

20.3多人游戏的实现406

20.4多人游戏所面临的问题408

20.4.1延迟发生的原因408

20.4.2延迟语义学、消息丢失和重组409

20.5简化通信信息410

20.5.1数据压缩410

20.5.2预测性方法411

20.5.3一致性413

20.6应用客户—服务器模式实现多人游戏414

21.1.1类421

21.1 C++游戏编程421

第21章 引擎体系结构421

21.1.2构造函数422

21.1.3析构函数422

21.1.4继承性422

21.1.5虚拟函数423

21.1.6运算符424

21.1.7模板425

21.1.8公有性/私有性/保护性426

21.2游戏中复杂度的管理和改进426

21.3引擎设计和体系结构427

21.4Fly3D软件体系结构428

21.4.1插件429

21.4.2 Fly3D前端和每帧中的主要渲染操作432

21.4.3碰撞检测434

21.4.5作用球435

21.4.6对象与插件间的通信435

21.4.4库存和活动对象列表435

21.4.7照相机和场景绘制436

21.4.8文本输出436

21.4.9渲染API436

第22章 Fly3D软件开发工具包参考438

22.1简介438

22.2全局参考438

22.3对象参考441

22.3.1类anim_mesh:public mesh441

22.3.3类bezier_curve:public base_obiect444

22.3.2类base_object444

22.3.4类bezie_rpatch:public base_object447

22.3.5类boundbox452

22.3.6类bsp_node:public plane454

22.3.7类bsp_object:public baseobject, particle,local_system454

22.3.8类class_desc460

22.3.9类console461

22.3.10类directX464

22.3.11类face:public plane470

22.3.12类fly_pak472

22.3.13类fly_pak_util475

22.3.15类flydllgroup476

22.3.14类flydll476

22.3.16类flyEngine480

22.3.17类light_map498

22.3.18类light_map_pic500

22.3.19类light_vertex502

22.3.20类local_system503

22.3.21类mat4 x4505

22.3.22类mesh:public base_object506

22.3.23类mp_games510

22.3.24类mp_msg511

22.3.25类param_desc511

22.3.26类particle512

22.3.27类pieture514

22.3.28类plane517

22.3.29类player_data517

22.3.30类render518

22.3.31类renderGL:public render520

22.3.32类sound:public base_object523

22.3.33类static_mesh:publicbsp_object524

22.3.34类stripfan_mesh526

22.3.35类textcache528

22.3.36类textcacheGL:public text-cache531

22.3.37类vector534

附录A Fly3D SDK教程539

参考文献559

热门推荐