图书介绍
OpenGL 2.0精髓pdf电子书版本下载

- (美)马茨(Marts,P.)著;邓郑祥译 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115149089
- 出版时间:2006
- 标注页数:256页
- 文件大小:53MB
- 文件页数:277页
- 主题词:图形软件,OpenGL 2.0-程序设计
PDF下载
下载说明
OpenGL 2.0精髓PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 OpenGL简介 1
1.1 OpenGL是什么 2
1.1.1 基本知识和架构 4
1.1.2 语法 8
1.1.3 状态和查询 10
1.2 GLUT 17
1.3 GLU 18
1.4 开发环境 18
1.4.1 Apple Mac OS X 19
1.4.2 Linux 20
1.4.3 Microsoft Windows 20
1.5 简单示例 21
1.6 OpenGL的历史 27
1.6.1 1992年之前 28
1.6.2 OpenGL与Iris GL之比较 29
1.6.3 OpenGL与PEX之比较 30
1.6.4 不断发展的OpenGL 31
1.7 更详细的信息 31
参考文献 32
第2章 绘制图元 35
2.1 OpenGL图元 36
2.1.1 图元类型 37
2.1.2 顶点共享 39
2.2 指定顶点数据 39
2.2.1 使用glBegin()/glEnd()绘制图元 40
2.2.2 使用顶点数组绘制图元 42
2.3 绘图细节 57
2.3.1 清空帧缓存 57
2.3.2 模型变换 58
2.3.3 平滑着色和恒定着色 59
2.3.4 多边形模式 60
2.3.5 深度测试 60
2.3.6 共面图元 61
2.3.7 alpha和透明度 63
2.4 性能问题 65
2.4.1 显示列表 65
2.4.2 面剔除 68
2.5 更详细的信息 69
2.4.3 顶点数组的大小 69
参考文献 70
第3章 变换和观察 71
3.1 坐标系和矩阵 73
3.1.1 旋向性 73
3.1.2 矩阵 73
3.1.3 矩阵堆栈和矩阵状态 75
3.1.4 矩阵操纵命令 76
3.2 变换流水线 78
3.2.1 物体坐标 79
3.2.2 模型变换 80
3.2.3 世界坐标 81
3.2.4 视点变换 81
3.2.7 裁剪坐标 82
3.2.5 眼坐标 82
3.2.6 投影变换 82
3.2.8 透视除法 83
3.2.9 归一化的设备坐标 83
3.2.10 视口变换 83
3.2.11 窗口坐标 84
3.2.12 控制变换 84
3.3 设置模型视点矩阵 86
3.3.1 使用gluLook()指定视点变换 87
3.3.2 创建视点变换矩阵 88
3.3.3 示例代码中的视点变换 89
3.4 透视和平行投影 90
3.5 视口 92
3.6 选择 93
3.6.1 执行选择 93
3.6.2 示例程序中的选择 98
3.7 更详细的信息 99
参考文献 99
第4章 光照 101
4.1 概述 102
4.1.1 环境光、散射光和镜面反射光 103
4.1.2 控制OpenGL光照 104
4.1.3 最简单的光照代码 105
4.1.4 内部光照计算 105
4.2 法线 106
4.3 光源参数 107
4.3.2 更详细的信息 108
4.3.1 典型用法 108
4.4 材质参数 109
4.4.1 使用glColor*()修改材质参数 111
4.4.2 典型用法 112
4.4.3 更多的信息 113
4.5 定位光源和定向光源 113
4.6 调试光源 114
4.6.1 调试空白窗口 115
4.6.2 法线 115
4.6.3 错误的面剔除 115
4.6.4 调试位置和方向 115
4.6.6 顶点光照异常 116
4.6.5 调试光源颜色 116
4.6.7 没有镜面反射点 117
4.6.8 直线和点的颜色 118
4.7 更详细的信息 118
参考文献 119
第5章 矩形像素阵列 121
5.1 绘制像素 122
5.1.1 当前光栅位置 123
5.1.2 使用glDrawPixels()绘制矩阵像素阵列 126
5.2 读取像素 128
5.3 复制像素 129
5.4.1 使用可替代glDrawPixels()的方式 130
5.4 性能问题 130
5.4.2 刷新OpenGL流水线 131
5.5 调试 131
5.5.1 光栅位置不正确 131
5.5.2 裁剪光栅位置 132
5.5.3 禁用纹理映射和雾效 132
5.5.4 深度测试 133
5.5.5 像素数据对齐 133
5.5.6 被遮住的窗口 134
5.5.7 内存分配问题 134
5.6 更详细的信息 135
参考文献 135
第6章 纹理映射 137
6.1 使用纹理图 139
6.1.1 纹理对象 140
6.1.2 纹理坐标 147
6.1.3 多重纹理 152
6.1.4 纹理映射示例 155
6.2 使用纹理实现光照和阴影效果 160
6.2.1 静态光照 160
6.2.2 光照图 162
6.2.3 深度图 165
6.2.4 镜面反射点 170
6.2.5 环境图 172
6.3.1 OpenGL错误代码 176
6.3.2 纹理状态 176
6.3 调试 176
6.3.3 纹理的完整性 178
6.3.4 缺失纹理 179
6.3.5 逆反纹理 180
6.4 更详细的信息 181
参考文献 181
第7章 扩展和版本 183
7.1 扩展 184
7.1.1 查询扩展 186
7.1.2 获得并调用扩展命令 187
7.2 版本 190
7.3 扩展和版本安全的代码 192
7.4 更详细的信息 198
第8章 平台特定的接口 199
8.1 概念 200
8.2 Apple Mac OS X 201
8.2.1 创建上下文 202
8.2.2 使用上下文 204
8.2.3 交换缓存 205
8.2.4 删除上下文 205
8.3 Linux 205
8.3.1 创建上下文 206
8.3.2 使用上下文 209
8.3.3 交换缓存 210
8.3.4 删除上下文 210
8.4.1 创建窗口 211
8.4 Microsoft Windows 211
8.4.2 创建上下文 212
8.4.3 使用上下文 214
8.4.4 交换缓存 215
8.4.5 删除上下文 215
8.5 更详细的信息 216
参考文献 216
附录A 其他特性 217
A.1 多重采样 217
A.2 遮盖查询 218
A.3 雾效 218
A.4 裁剪面 219
A.7 着色语言 220
A.5 模板 220
A.6 累积缓存 220
A.7.1 着色器示例 221
A.7.2 更详细的信息 223
参考文献 223
附录B 最佳实践 225
B.1 状态 225
B.2 错误 226
B.3 精度 227
B.3.1 数量级 227
B.3.2 舍入 227
B.3.3 深度缓存 228
B.4 对象 229
附录C 性能 231
C.1 度量性能 231
C.2 避免软件渲染 233
C.3 消除流水线瓶颈 234
C.3.1 CPU限制 235
C.3.2 几何体限制 236
C.3.3 填充限制 237
C.3.4 对流水线瓶颈的最后思考 239
C.4 剔除不可见的几何体 239
C.5 状态修改和查询 240
D.1 调试工具 243
附录D 故障排除和调试 243
D.2 OpenGL错误 244
D.2.1 检查OpenGL错误编码 244
D.2.2 具体错误 245
D.3 调试空白窗口 248
D.3.1 采用良好的代码开发实践 248
D.3.2 使用glGetError() 248
D.3.3 启用顶点数组 248
D.3.4 设置合适的裁剪面 249
D.3.5 使用正确的变换 249
D.3.6 交换缓存 250
D.3.7 调用glClear() 250
参考文献 253