目录 1
第一章 OpenGL简介 1
§1.1 什么是OpenGL 1
§1.2 简单的OpenGL程序 2
§1.3 OpenGL命令语法 3
§1.4 OpenGL的状态机制 5
§1.5 与OpenGL有关的库文件 5
§1.6 动画 7
第二章 绘制几何物体 12
§2.1 与绘制有关的几个命令函数 13
§2.2 点、线和多边形 17
§2.3 点、线和多边形显示 23
§2.4 法线矢量 31
§2.5 常用的技术 32
第三章 取景 39
§3.1 概述——与照相过程的相似之处 40
§3.2 取景和模式变换 46
§3.3 投影变换 54
§3.4 视区变换 58
§3.5 有关变换的一些疑难解答 59
§3.6 控制矩阵堆栈 61
§3.7 附加剪贴板 64
§3.8 几个变换编程示例 66
第四章 显示清单 72
§4.1 一个使用显示清单的例子 72
§4.2 显示清单设计原理 74
§4.3 创建和执行一个显示清单 76
§4.4 控制显示清单和它们的索引 81
§4.5 执行多重显示清单 82
§4.6 封装模式变化 86
第五章 颜色 88
§5.1 颜色感知 88
§5.2 计算机颜色 89
§5.3 RGBA模式和颜色索引模式 91
§5.4 指定一种颜色和一种浓淡处理模型 94
第六章 光照 98
§6.1 真实世界和OpenGL光照 99
§6.2 一个简单的例子:绘制一个光照球体 101
§6.3 创建光源 103
§6.4 选择一种光照模型 111
§6.5 定义原材料属性 112
§6.6 光照的数学计算 118
§6.7 颜色索引模式中的光照 120
第七章 混合、图形保真和雾化 123
§7.1 混合 123
§7.2 图形保真 130
§7.3 雾化 137
第八章 像素、位图、字体和图像 144
§8.1 位图与字体 144
§8.2 图象 152
§8.3 存储、变换及绘制像素 155
第九章 纹理绘制 162
§9.1 总览和实例 163
§9.2 指定纹理 167
§9.3 调节与混和 175
§9.4 分配纹理坐标 176
§9.5 纹理坐标自动生成 180
§9.6 高级特性 182
第十章 帧缓中器 184
§10.1 缓冲器及其用途 185
§10.2 图段的测试与操作 189
§10.3 累积缓冲器 196
第十一章 求值器与NURBS 206
§11.1 先决条件 206
§11.2 求值器 207
§11.3 GLU NURBS接口 217
第十二章 选择和反馈 225
§12.1 选择 225
§12.2 反馈 241
第十三章 高级应用 247
§13.1 半透明处理 248
§13.2 一种容易的淡出效果 248
§13.3 使用后缓冲的对象选择 249
§13.4 便宜的图像转换 250
§13.5 层次显示 251
§13.6 保真字符 252
§13.7 画圆点 253
§13.8 插入图像 254
§13.9 制造贴纸 254
§13.10 使用模板缓冲区画填充的凹多边形 255
§13.11 找冲突区域 256
§13.12 阴影 257
§13.13 去除隐藏线 258
§13.14 纹理映射应用程序 258
§13.15 绘制深度缓冲图像 259
§13.16 狄利克雷域 259
§13.17 在模板缓冲区中生存 260
§13.18 glDraw Pixels()和glCopyPixels()的一些别的用法 261
第十四章 OpenGL编程进阶 263
§14.1 弹跳的彩线 263
§14.2 OpenGL基本图元显示 271
§14.3 OpenGL材质的使用 283
§14.4 OpenGL多线程使用实例 300
§14.5 OpenGL纹理设置技巧 318
§14.6 OpenGL使用Windows字体 366
§14.7 如何制作物体阴影 382
§14.8 用DXF构造OpenGL 3D模型 399
附录A 操作顺序 440
§A.1 概述 440
§A.2 几何操作 441
§A.3 每顶点操作 441
§A.4 图元装配 441
§A.6 片段操作 442
§A.7 零碎的东西 442
§A.5 像素操作 442
附录B OpenGL状态变量 443
§B.1 查询命令 443
§B.2 错误处理 444
§B.3 保存和恢复状态变量集合 444
§B.4 OpenGL状态变量 446
§C.1 在纹理中操纵图像 456
§C.2 坐标变换 456
附录C OpenGL实用库 456
§C.3 多边形域分割 457
§C.4 绘制球体、圆柱和圆盘 460
§C.5 非归一化有理B样条曲线和表面 461
§C.6 错误描述 462
附录D OpenGL向X Windows系统的扩展 463
§D.1 初始化 463
§D.2 控制绘制操作 463
§D.3 GLX原型 464
§E.1 初始化和退出一个窗口 466
附录E OpenGL编程辅助库 466
§E.2 处理窗口和输入事件 467
§E.3 装载颜色映象 468
§E.4 初始化和画出三维对象 468
§E.5 控制一个后台进程 469
§E.6 运行程序 469
附录F 计算法线向量 470
§F.1 为解析表面找法线 470
§F.2 利用多边形数据找法线 472
§G.1 齐次坐标 473
附录G 齐次坐标和变换矩阵 473
§G.2 变换矩阵 474
附录H 编程诀窍 477
§H.1 OpenGL正确性诀窍 477
§H.2 OpenGL性能诀窍 478
§H.3 GLX诀窍 479
附录Ⅰ OpenGL不变性 480
附录J 词汇表 481