图书介绍

OpenGL编程指南 第4版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

OpenGL编程指南 第4版
  • OpenGL体系结构审核委员会等著;邓郑祥译 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:7115132178
  • 出版时间:2005
  • 标注页数:494页
  • 文件大小:61MB
  • 文件页数:530页
  • 主题词:图形软件,OpenGL

PDF下载


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

下载说明

OpenGL编程指南 第4版PDF格式电子书版下载

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

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

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

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

图书目录

第1章 OpenGL简介1

目录1

1.1 OpenGL概览2

1.2一个简单的openGL程序4

1.3 openGL函数的语法5

1.4 OpenGL是一个状态机6

1.5 openGL渲染流水线6

1.5.1显示列表7

1.5.2求值程序7

1.5.5像素操作8

1.5.6纹理装配8

1.5.3顶点操作8

1.5.4图元装配8

1.5.7光栅化9

1.5.8片元操作9

1.6 与openGL相关的函数库9

1.6.1 包含文件10

1.6.2 OpenGL实用工具包(GLUT)11

1.7动画13

1.7.1 暂停刷新14

1.7.2运动就是重画加交换15

第2章状态管理和绘制几何体19

2.1绘图补救工具箱21

2.1.1 清空窗口21

2.1.2指定颜色22

2.1.3强制完成绘图操作23

2.1.4 坐标系统修补工具箱24

2.2 描述点、直线和多边形25

2.2.1 什么是点、直线和多边形26

2.2.2 指定顶点28

2.2.3 OpenGL几何绘图图元29

2.3 基本状态管理33

2.4 显示点、直线和多边形34

2.4.1 点的细节35

2.4.2 直线的细节35

2.4.3 多边形的细节38

2.5 法线向量44

2.6 顶点数组45

2.6.1 第1步:启用数组46

2.6.2 第2步:指定数组中的数据47

2.6.3 第3步:解除引用和渲染49

2.6.4 混合数组54

2.7 属性组56

2.8 有关使用多边形构造曲面的建议59

第3章 观察65

3.1 概述:相机类比67

3.1.1 一个简单的例子:绘制立方体69

3.1.2 通用的变换函数72

3.2 视点变换和模型变换73

3.2.1 如何看待变换74

3.2.2 模型变换75

3.2.3 视点变换79

3.3 投影变换84

3.3.1 透视投影84

3.3.2 正交投影86

3.3.3 根据视景体进行裁剪87

3.4 视口变换87

3.4.1 定义视口88

3.4.2 变换后的深度坐标89

3.5 变换的诊断90

3.6 操纵矩阵堆栈91

3.7 附加裁剪面94

3.6.2 投影矩阵堆栈94

3.6.1 模型视点矩阵堆栈94

3.8 组合变换举例97

3.8.1 建立太阳系模型97

3.8.2 建立带关节的机器人手臂模型99

3.9 逆变换和模拟变换102

第4章 颜色105

4.1 颜色感知106

4.2 计算机颜色107

4.3 RGBA模式与颜色索引模式109

4.3.1 RGBA显示模式109

4.3.2 颜色索引显示模式111

4.3.3 在RGBA模式和颜色索引模式之间做出选择112

4.3.4 在显示模式之间切换113

4.4 指定颜色和着色模式113

4.4.1 在RGBA模式下指定颜色113

4.4.2 在颜色索引模式下指定颜色114

4.4.3 指定着色模式115

第5章 光照119

5.1 隐藏面消除修补工具箱121

5.2 现实世界和OpenGL中的光照122

5.2.1 环境光、散射光、镜面反射光和发射光122

5.2.3 光线和材质的RGB值123

5.2.2 材质的颜色123

5.3 一个简单的例子:光照球体的渲染124

5.4 创建光源126

5.4.1 颜色128

5.4.2 位置和衰减128

5.4.3 聚光灯129

5.4.4 多光源130

5.4.5 控制光源的位置和方向131

5.5 选择光照模型135

5.5.3 双面光照136

5.5.2 近视点还是无穷远视点136

5.5.1 全局环境光136

5.5.4 辅助镜面反射颜色137

5.5.5 启用光照137

5.6 指定材质属性137

5.6.1 散射光反射和环境光反射138

5.6.2 镜面光反射139

5.6.3 发射光颜色139

5.6.4 改变材质属性140

5.6.5 颜色材质模式141

5.7.3 光源的贡献144

5.7.2 反射的全局环境光144

5.7.1 材质的发射光144

5.7 光照的数学计算144

5.7.4 叠加146

5.7.5 辅助镜面发射光颜色146

5.8 颜色索引模式下的光照147

第6章 混合、反走样、雾效和多边形偏移149

6.1 混合150

6.1.1 源因子和目标因子151

6.1.2 启用混合操作152

6.1.3 使用混合方程来合并像素153

6.1.4 混合的用途154

6.1.5 一个混合的例子156

6.1.6 使用深度缓存的三维混合158

6.2 反走样161

6.2.1 点和值线的反走样162

6.2.2 使用多重采样对几何图元进行反走样处理167

6.2.3 多边形的反走样170

6.3 雾170

6.3.1 使用雾171

6.3.2 雾方程173

6.4 点参数178

6.5 多边形偏移180

第7章 显示列表183

7.1 为何使用显示列表184

7.2 一个使用显示列表的例子184

7.3 显示列表设计准则187

7.4 创建和执行显示列表188

7.4.1 命名和创建显示列表189

7.4.2 显示列表存储的内容190

7.4.3 执行显示列表191

7.4.4 多级显示列表192

7.5 执行多个显示列表193

7.4.5 管理显示列表索引193

7.6 使用显示列表来管理状态变量197

第8章 绘制像素、位图、字体和图像201

8.1 位图和字体203

8.1.1 当前光栅位置204

8.1.2 绘制位图205

8.1.3 选择位图的颜色206

8.1.4 字体和显示列表206

8.1.5 定义并使用一种完整的字体207

8.2 图像209

8.3 图像处理流水线215

8.3.1 像素的封装和拆封217

8.3.2 控制像素存储模式218

8.3.3 像素转移操作221

8.3.4 像素映射223

8.3.5 缩放和翻转图像224

8.4 读取和绘制矩形像素阵列226

8.5 提高像素绘制速度的技巧229

8.6 图像处理子集229

8.6.1 颜色表230

8.6.2 卷积234

8.6.3 颜色矩阵240

8.6.4 收集统计数据(histogram)241

8.6.5 Minmax243

第9章 纹理映射245

9.1 概述和范例248

9.1.1 纹理映射的步骤248

9.1.2 一个简单的程序250

9.2 指定纹理252

9.2.1 纹理代理255

9.2.2 替换纹理图像的部分或全部纹素256

9.2.3 一维纹理258

9.2.4 三维纹理259

9.2.5 压缩的纹理图像263

9.2.6 使用纹理边框265

9.2.7 mipmap:多个明细等级265

9.3 滤波273

9.4 纹理对象275

9.4.1 生成纹理对象名称275

9.4.2 创建和使用纹理对象275

9.4.3 删除纹理对象278

9.4.4 驻留纹理工作集278

9.4.5 纹理函数280

9.5 指定纹理坐标282

9.5.1 计算合适的纹理坐标283

9.5.2 纹理的重复和截取284

9.6 自动生成纹理坐标287

9.6.1 创建等高线288

9.6.2 球面图(sphere map)291

9.6.3 立方图纹理(cube map texture)292

9.7 多重纹理294

9.8 纹理组合函数298

9.9 执行纹理映射后应用辅助颜色302

9.9.1 光照被禁用时的辅助颜色302

9.9.2 光照被启用时的辅助镜面反射颜色302

9.11 深度纹理303

9.10 纹理矩阵堆栈303

9.11.1 创建阴影图304

9.11.2 生成纹理坐标并渲染场景305

第10章 帧缓存307

10.1 缓存及其用途309

10.1.1 颜色缓存310

10.1.2 深度缓存310

10.1.3 模板缓存310

10.1.4 累积缓存310

10.1.6 指定要读写的颜色缓存311

10.1.5 清空缓存311

10.1.7 屏蔽缓存313

10.2 片元的测试和操作314

10.2.1 截剪测试314

10.2.2 Alpha测试315

10.2.3 模板测试316

10.2.4 深度测试320

10.2.5 混合、抖动和逻辑运算320

10.3 累积缓存322

10.3.1 场景反走样323

10.3.3 景深327

10.3.2 运动模糊327

10.3.5 抖动330

10.3.4 柔和阴影330

第11章 网格化和二次曲面333

11.1 多边形网格化334

11.1.1 创建网格化对象335

11.1.2 网格化回调函数335

11.1.3 网格化属性339

11.1.4 定义多边形343

11.1.7 描述GLU错误345

11.1.8 向后兼容性345

11.1.6 提高网格化性能的技巧345

11.1.5 删除网格化对象345

11.2 二次曲面:渲染球体、圆柱体和圆盘346

11.2.1 管理二次对象347

11.2.2 设置二次对象的属性347

11.2.3 二次图元348

第12章 求值程序和NURBS353

12.1 预备知识354

12.2 求值程序355

12.2.1 一维求值程序355

12.2.2 二维求值程序358

12.2.3 使用求值程序来生成纹理坐标362

12.3 GLU NURBS接口364

12.3.1 一个简单的NURBS范例364

12.3.2 管理NURBS对象367

12.3.3 创建NURBS曲线或曲面370

12.3.4 修剪NURBS曲面374

第13章 选择和反馈377

13.1 选择378

13.1.1 基本步骤378

13.1.2 创建名称堆栈379

13.1.3 命中记录380

13.1.4 选择示例381

13.1.5 拾取383

13.1.6 有关编写使用选择机制的程序的建议390

13.2 反馈392

13.2.1 反馈数组393

13.2.2 在反馈模式下使用标记394

13.2.3 反馈示例394

第14章 OpenGL高级技巧399

14.1 错误处理400

14.2 查询OpenGL版本402

14.2.2 窗口系统扩展版本403

14.3 对标准的扩展403

14.2.1 实用库版本403

14.4 轻松制作透明物体405

14.5 轻松实现淡出效果405

14.6 使用后缓存来处理选择406

14.7 开销不高的图像变换方法407

14.8 显示多层408

14.9 字符反走样409

14.11 图像插值410

14.10 绘制圆形点410

14.12 制作贴花411

14.13 使用模板缓存绘制填充凹多边形412

14.14 找出冲突区域413

14.15 阴影414

14.16 隐藏线消除415

14.16.1 使用多边形偏移隐藏线消除415

14.16.2 使用模板缓存消除隐藏线415

14.17 纹理映射的用途416

14.18 绘制深度缓存图像416

14.19 狄利克雷域417

14.20 生存游戏418

14.21 glDrawPixels()和glCopyPixels()的其他用途419

附录A 操作顺序421

A.1 概述422

A.2 几何操作422

A.2.1 顶点操作423

A.2.2 图元装配423

A.3 像素操作423

A.5 其他操作424

A.4 片元操作424

附录B 状态变量425

B.1 查询函数426

B.2 OpenGL状态变量427

附录C OpenGL和窗口系统445

C.1 访问新的OpenGL函数446

C.2 X窗口系统的OpenGL扩展(GLX)446

C.2.1 初始化447

C.2.2 控制渲染448

C.2.3 GLX库函数的原型449

C.3.1 初始化451

C.3.2 渲染和场境451

C.3 Apple Macintosh的OpenGL扩展(AGL)451

C.3.3 管理OpenGL渲染场境452

C.3.4 在屏幕上渲染452

C.3.5 离屏渲染452

C.3.6 全屏渲染452

C.3.7 交换缓存452

C.3.8 更新渲染缓存452

C.3.9 使用Apple Macintosh字体453

C.3.10 错误处理453

C.3.11 AGL库函数的原型453

C.4.1 初始化454

C.4 IBM OS/2 Warp的OpenGL扩展(PGL)454

C.4.2 控制渲染455

C.4.3 PGL函数的原型456

C.5 Microsoft Windows的OpenGL扩展(WGL)456

C.5.1 初始化457

C.5.2 控制渲染457

C.5.3 WGL函数的原型458

附录D OpenGL实用工具包(GLUT)基础461

D.1 初始化和创建窗口462

D.2 处理窗口事件和输入事件463

D.4 初始化和绘制三维物体464

D.3 加载颜色表464

D.6 运行程序465

D.5 管理后台处理465

附录E 计算法线向量467

E.1 计算解析曲面的法线468

E.2 根据多边形数据计算法线469

附录F 齐次坐标和变换矩阵471

F.1 齐次坐标472

F.1.1 变换顶点472

F.1.2 法线变换472

F.2.2 缩放473

F.2.3 旋转473

F.2.1 平移473

F.2 变换矩阵473

F.2.4 透视投影474

F.2.5 正交投影475

附录G 编程建议477

G.1 OpenGL正确编程技巧478

G.2 提高OpenGL性能的建议479

G.3 GLX建议480

附录H OpenGL的不变性481

术语表483

热门推荐