图书介绍

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

OpenGL编程指南 原书第7版
  • DAVESHREINER等编著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111294504
  • 出版时间:2010
  • 标注页数:519页
  • 文件大小:68MB
  • 文件页数:534页
  • 主题词:图形软件,OpenGL

PDF下载


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

下载说明

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

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

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

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

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

图书目录

第1章 OpenGL简介1

1.1什么是OpenGL1

1.2一段简单的OpenGL代码3

1.3 OpenGL函数的语法4

1.4 OpenGL是一个状态机6

1.5 OpenGL渲染管线6

1.5.1显示列表7

1.5.2求值器7

1.5.3基于顶点的操作7

1.5.4图元装配7

1.5.5像素操作8

1.5.6纹理装配8

1.5.7光栅化8

1.5.8片断操作8

1.6与OpenGL相关的函数库9

1.6.1包含文件9

1.6.2 OpenGL实用工具库(GLUT)10

1.7动画13

1.7.1暂停刷新14

1.7.2动画=重绘+交换15

1.8 OpenGL及其废弃机制17

1.8.1 OpenGL渲染环境17

1.8.2访问OpenGL函数18

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

2.1绘图工具箱20

2.1.1清除窗口20

2.1.2指定颜色22

2.1.3强制完成绘图操作23

2.1.4坐标系统工具箱24

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

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

2.2.2指定顶点27

2.2.3 OpenGL几何图元27

2.3基本状态管理31

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

2.4.1点的细节32

2.4.2直线的细节33

2.4.3多边形的细节36

2.5法线向量41

2.6顶点数组43

2.6.1步骤1:启用数组44

2.6.2步骤2:指定数组的数据44

2.6.3步骤3:解引用和渲染46

2.6.4重启图元51

2.6.5实例化绘制53

2.6.6混合数组54

2.7缓冲区对象57

2.7.1创建缓冲区对象57

2.7.2激活缓冲区对象58

2.7.3用数据分配和初始化缓冲区对象58

2.7.4更新缓冲区对象的数据值60

2.7.5在缓冲区对象之间复制数据62

2.7.6清除缓冲区对象63

2.7.7使用缓冲区对象存储顶点数组数据63

2.8顶点数组对象65

2.9属性组69

2.10创建多边形表面模型的一些提示71

第3章 视图77

3.1简介:用照相机打比方78

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

3.1.2通用的变换函数83

3.2视图和模型变换84

3.2.1对变换进行思考85

3.2.2模型变换86

3.2.3视图变换89

3.3投影变换93

3.3.1透视投影94

3.3.2正投影95

3.3.3视景体裁剪96

3.4视口变换96

3.4.1定义视口96

3.4.2变换深度坐标97

3.5和变换相关的故障排除98

3.6操纵矩阵堆栈100

3.6.1模型视图矩阵堆栈101

3.6.2投影矩阵堆栈102

3.7其他裁剪平面102

3.8一些组合变换的例子104

3.8.1创建太阳系模型104

3.8.2创建机器人手臂107

3.9逆变换和模拟变换109

第4章 颜色113

4.1颜色感知113

4.2计算机颜色114

4.3 RGBA和颜色索引模式115

4.3.1 RGBA显示模式116

4.3.2颜色索引模式117

4.3.3在RGBA和颜色索引模式中进行选择118

4.3.4切换显示模式118

4.4指定颜色和着色模型119

4.4.1在RGBA模式下指定颜色119

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

4.4.3指定着色模型121

第5章 光照123

5.1隐藏表面消除工具箱124

5.2现实世界和OpenGL光照125

5.2.1环境光、散射光、镜面光和发射光125

5.2.2材料颜色126

5.2.3光和材料的RGB值126

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

5.4创建光源129

5.4.1颜色130

5.4.2位置和衰减131

5.4.3聚光灯132

5.4.4多光源133

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

5.5选择光照模型138

5.5.1全局环境光138

5.5.2局部的观察点或无限远的观察点138

5.5.3双面光照139

5.5.4镜面辅助颜色139

5.5.5启用光照140

5.6定义材料属性140

5.6.1散射和环境反射141

5.6.2镜面反射141

5.6.3发射光颜色142

5.6.4更改材料属性142

5.6.5颜色材料模式143

5.7和光照有关的数学知识146

5.7.1材料的发射光147

5.7.2经过缩放的全局环境光147

5.7.3光源的贡献147

5.7.4完整的光照计算公式148

5.7.5镜面辅助颜色148

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

第6章 混合、抗锯齿、雾和多边形偏移151

6.1混合152

6.1.1源因子和目标因子152

6.1.2启用混合154

6.1.3使用混合方程式组合像素154

6.1.4混合的样例用法156

6.1.5一个混合的例子157

6.1.6使用深度缓冲区进行三维混合159

6.2抗锯齿162

6.2.1对点和直线进行抗锯齿处理164

6.2.2使用多重采样对几何图元进行抗锯齿处理169

6.2.3对多边形进行抗锯齿处理172

6.3雾172

6.3.1使用雾173

6.3.2雾方程式175

6.4点参数181

6.5多边形偏移182

第7章 显示列表185

7.1为什么使用显示列表185

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

7.3显示列表的设计哲学188

7.4创建和执行显示列表189

7.4.1命名和创建显示列表191

7.4.2存储在显示列表里的是什么191

7.4.3执行显示列表193

7.4.4层次式显示列表193

7.4.5管理显示列表索引194

7.5执行多个显示列表194

7.6用显示列表管理状态变量199

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

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像素包装和解包216

8.3.2控制像素存储模式217

8.3.3像素传输操作219

8.3.4像素映射221

8.3.5放大、缩小或翻转图像222

8.4读取和绘制像素矩形224

8.5使用缓冲区对象存取像素矩形数据227

8.5.1使用缓冲区对象传输像素数据227

8.5.2使用缓冲区对象提取像素数据228

8.6提高像素绘图速度的技巧229

8.7图像处理子集230

8.7.1颜色表231

8.7.2卷积234

8.7.3颜色矩阵240

8.7.4柱状图241

8.7.5最小最大值243

第9章 纹理贴图245

9.1概述和示例248

9.1.1纹理贴图的步骤248

9.1.2一个示例程序249

9.2指定纹理251

9.2.1纹理代理255

9.2.2替换纹理图像的全部或一部分257

9.2.3一维纹理259

9.2.4三维纹理261

9.2.5纹理数组264

9.2.6压缩纹理图像265

9.2.7使用纹理边框267

9.2.8 mipmap:多重细节层267

9.3过滤275

9.4纹理对象277

9.4.1命名纹理对象277

9.4.2创建和使用纹理对象278

9.4.3清除纹理对象280

9.4.4常驻纹理工作集280

9.5纹理函数282

9.6分配纹理坐标284

9.6.1计算正确的纹理坐标285

9.6.2重复和截取纹理286

9.7纹理坐标自动生成289

9.7.1创建轮廓线289

9.7.2球体纹理293

9.7.3立方图纹理294

9.8多重纹理296

9.9纹理组合器函数299

9.10在纹理之后应用辅助颜色303

9.10.1在禁用光照时使用辅助颜色303

9.10.2启用光照后的辅助镜面颜色303

9.11点块纹理303

9.12纹理矩阵堆栈304

9.13深度纹理305

9.13.1创建阴影图306

9.13.2生成纹理坐标并进行渲染307

第10章 帧缓冲区309

10.1缓冲区及其用途310

10.1.1颜色缓冲区311

10.1.2清除缓冲区312

10.1.3选择用于读取和写入的颜色缓冲区313

10.1.4缓冲区的屏蔽315

10.2片断测试和操作316

10.2.1裁剪测试316

10.2.2 alpha测试317

10.2.3模板测试318

10.2.4深度测试322

10.2.5遮挡查询322

10.2.6条件渲染324

10.2.7混合、抖动和逻辑操作325

10.3累积缓冲区327

10.3.1运动模糊328

10.3.2景深328

10.3.3柔和阴影331

10.3.4微移331

10.4帧缓冲区对象332

10.4.1渲染缓冲区333

10.4.2复制像素矩形340

第11章 分格化和二次方程表面342

11.1多边形分格化342

11.1.1创建分格化对象343

11.1.2分格化回调函数343

11.1.3分格化属性347

11.1.4多边形定义350

11.1.5删除分格化对象352

11.1.6提高分格化性能的建议352

11.1.7描述GLU错误352

11.1.8向后兼容性352

11.2二次方程表面:渲染球体、圆柱体和圆盘353

11.2.1管理二次方程对象354

11.2.2控制二次方程对象的属性354

11.2.3二次方程图元355

第12章 求值器和NURB S360

12.1前提条件360

12.2求值器361

12.2.1一维求值器361

12.2.2二维求值器365

12.2.3使用求值器进行纹理处理369

12.3 GLU的NURBS接口371

12.3.1一个简单的NURBS例子371

12.3.2管理NURBS对象374

12.3.3创建NURBS曲线或表面377

12.3.4修剪NURBS表面380

第13章 选择和反馈383

13.1选择383

13.1.1基本步骤384

13.1.2创建名字栈384

13.1.3点击记录385

13.1.4一个选择例子386

13.1.5挑选389

13.1.6编写使用选择的程序的一些建议397

13.2反馈398

13.2.1反馈数组399

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

13.2.3一个反馈例子400

第14章 OpenGL高级技巧404

14.1错误处理405

14.2 OpenGL版本406

14.2.1工具函数库版本407

14.2.2窗口系统扩展版本407

14.3标准的扩展407

14.4实现半透明效果409

14.5轻松实现淡出效果409

14.6使用后缓冲区进行物体选择411

14.7低开销的图像转换411

14.8显示层次412

14.9抗锯齿字符413

14.10绘制圆点414

14.11图像插值414

14.12制作贴花415

14.13使用模板缓冲区绘制填充的凹多边形416

14.14寻找冲突区域416

14.15阴影417

14.16隐藏直线消除418

14.16.1使用多边形偏移实现隐藏直线消除418

14.16.2使用模板缓冲区实现隐藏直线消除419

14.17纹理贴图的应用419

14.18绘制深度缓冲的图像420

14.19 Dirichlet域420

14.20使用模板缓冲区实现生存游戏421

14.21 glDrawPixels()和glCopyPixels()的其他应用422

第15章OpenGL着色语言424

15.1 OpenGL图形管线和可编程着色器424

15.1.1顶点处理425

15.1.2片断处理426

15.2使用GLSL着色器427

15.2.1着色器示例427

15.2.2 OpenGL/GLSL接口428

15.3 OpenGL着色语言432

15.4使用GLSL创建着色器433

15.4.1程序起点433

15.4.2声明变量433

15.4.3聚合类型434

15.5 uniform块439

15.5.1在着色器中指定uniform变量440

15.5.2访问在uniform块中声明的uniform变量440

15.5.3计算不变性446

15.5.4语句446

15.5.5函数448

15.5.6在GLSL程序中使用OpenGL状态值449

15.6在着色器中访问纹理图像449

15.7着色器预处理器452

15.7.1预处理器指令452

15.7.2宏定义452

15.7.3预处理器条件453

15.7.4编译器控制453

15.8扩展处理454

15.9顶点着色器的细节454

15.10变换反馈458

15.11片断着色器462

附录A? GLUT (OpenGL实用工具库)基础知识464

附录B状态变量468

附录C齐次坐标和变换矩阵495

附录D OpenGL和窗口系统499

术语表511

热门推荐