简介
本书全面介绍采用Visual C++语言开发OpenGL交互式三维应用程序的技术。
全书共11章,介绍了程序基础、形体建模、渲染色彩与动画的应用开发4个部分内容。本书在介绍每部分内容时,先引入概念,再进行举例,最后完成一个相对独立的例程,并给出程序清单供读者参照。全书共解析了23个生动有趣的例程。
本书可供有Visual C++语言基础的技术人员学习和参考。
目录
第1部分 程序基础
第1章 三维世界 2
1.1 “回到真实”——三维图形的发展 2
1.2 三维世界的成像 3
1.2.1 空间位置和坐标 3
1.2.2 透视投影 3
1.3 OpenGL介绍 4
1.3.1 OpenGL语言 4
1.3.2 OpenGL工作方式 5
1.3.3 OpenGL绘制过程 5
1.4 数据类型、函数和状态变量 6
1.4.1 数据类型 6
1.4.2 函数及后缀 7
1.4.3 状态变量 9
第2章 视场的建立 19
2.1 通向“真实”的条件——程序框架 19
2.1.1 像素格式 19
2.1.2 渲染描述表 21
2.2 创建视场 21
2.2.1 创建Visual C++程序 21
2.2.2 设置像素格式与创建渲染描述表 26
2.2.3 通用基础框架程序架构 34
2.2.4 扩展到深邃的天空——全屏显示 36
2.2.5 多学一点——变化的天空 42
2.2.6 基础程序清单及重点 43
第2部分 形体建模
第3章 点与线 58
3.1 “世界”的开始——点 58
3.1.1 二维的点 58
3.1.2 三维的点 62
3.2 线和曲线 67
3.2.1 二维的线 68
3.2.2 三维的线 68
3.2.3 折线 69
3.2.4 闭合曲线 70
3.3 线型和点的变化 74
3.3.1 线型 74
3.3.2 点的变化 75
3.3.3 多学一点——七彩星空 79
3.3.4 多学一点——彩虹 85
3.3.5 程序重点清单 92
第4章 面和体 104
4.1 三角形 104
4.1.1 基本的三角形 104
4.1.2 前面、后面的绘制模式 107
4.1.3 三角形片 108
4.1.4 三角形扇 109
4.2 四边形 111
4.2.1 基本的四边形 111
4.2.2 四边形片 112
4.3 多边形 116
4.3.1 多边形与边的可见性 116
4.3.2 面的填充 117
4.4 “产生”的体 119
4.4.1 立方体 119
4.4.2 填充立方体面 120
4.4.3 多学一点——蝴蝶的翅膀 124
4.4.4 程序重点清单 132
第5章 显示列表 152
5.1 显示列表的创建 152
5.2 显示列表的执行 158
5.3 显示列表的管理 159
5.4 多学一点——旋转的红伞 162
5.5 多学一点——雨中行 169
5.6 程序重点清单 177
第6章 图形变换 201
6.1 屏幕坐标 201
6.2 投影变换 202
6.2.1 平行投影 202
6.2.2 透视投影 203
6.3 视区变换 204
6.4 剪切变换 205
6.5 几何变换 206
6.5.1 平移变换 206
6.5.2 旋转变换 206
6.5.3 缩放变换 207
6.6 矩阵操作与堆栈 213
6.6.1 矩阵操作 213
6.6.2 矩阵堆栈 214
6.6.3 多学一点——天涯共此时 215
6.6.4 程序重点清单 226
第3部分 渲染色彩
第7章 色彩构成与光照 250
7.1 OpenGL颜色的基本构成 250
7.1.1 OpenGL颜色模型 250
7.1.2 深度测试 252
7.1.3 渲染处理 254
7.2 颜色的相互作用 260
7.2.1 光的定义 260
7.2.2 物体的材质 262
7.2.3 法线的作用 263
7.2.4 全局的光照模型 263
7.2.5 深入学习——彩色气球 264
7.2.6 程序重点清单 273
第8章 融合与透明 292
8.1 OpenGL颜色的融合 292
8.2 融合的操作 293
8.3 复杂的透明 299
8.4 深入学习——绿茶 301
8.5 程序重点清单 309
第9章 反走样与雾化 328
9.1 反走样 328
9.1.1 OpenGL反走样 328
9.1.2 反走样函数与定义 329
9.2 雾化 330
9.2.1 OpenGL雾化 330
9.2.2 雾化函数与定义 330
9.2.3 深入学习——荷塘月色 340
9.2.4 程序重点清单 349
第10章 图像贴图与文字显示 370
10.1 图像位图操作 370
10.1.1 图像操作 370
10.1.2 位图操作 373
10.1.3 材质纹理贴图 374
10.2 显示汉字的方法 384
10.2.1 显示汉字方法一——贴图 385
10.2.2 显示汉字方法二——显示列表 385
10.2.3 程序重点清单 396
第4部分 动画的应用开发
第11章 动画与实时处理 418
11.1 动画 418
11.1.1 动画生成 418
11.1.2 双缓存技术 418
11.2 动画的因果 419
11.2.1 变化的形状 419
11.2.2 变化的位置 434
11.2.3 变化的颜色 444
第1章 三维世界 2
1.1 “回到真实”——三维图形的发展 2
1.2 三维世界的成像 3
1.2.1 空间位置和坐标 3
1.2.2 透视投影 3
1.3 OpenGL介绍 4
1.3.1 OpenGL语言 4
1.3.2 OpenGL工作方式 5
1.3.3 OpenGL绘制过程 5
1.4 数据类型、函数和状态变量 6
1.4.1 数据类型 6
1.4.2 函数及后缀 7
1.4.3 状态变量 9
第2章 视场的建立 19
2.1 通向“真实”的条件——程序框架 19
2.1.1 像素格式 19
2.1.2 渲染描述表 21
2.2 创建视场 21
2.2.1 创建Visual C++程序 21
2.2.2 设置像素格式与创建渲染描述表 26
2.2.3 通用基础框架程序架构 34
2.2.4 扩展到深邃的天空——全屏显示 36
2.2.5 多学一点——变化的天空 42
2.2.6 基础程序清单及重点 43
第2部分 形体建模
第3章 点与线 58
3.1 “世界”的开始——点 58
3.1.1 二维的点 58
3.1.2 三维的点 62
3.2 线和曲线 67
3.2.1 二维的线 68
3.2.2 三维的线 68
3.2.3 折线 69
3.2.4 闭合曲线 70
3.3 线型和点的变化 74
3.3.1 线型 74
3.3.2 点的变化 75
3.3.3 多学一点——七彩星空 79
3.3.4 多学一点——彩虹 85
3.3.5 程序重点清单 92
第4章 面和体 104
4.1 三角形 104
4.1.1 基本的三角形 104
4.1.2 前面、后面的绘制模式 107
4.1.3 三角形片 108
4.1.4 三角形扇 109
4.2 四边形 111
4.2.1 基本的四边形 111
4.2.2 四边形片 112
4.3 多边形 116
4.3.1 多边形与边的可见性 116
4.3.2 面的填充 117
4.4 “产生”的体 119
4.4.1 立方体 119
4.4.2 填充立方体面 120
4.4.3 多学一点——蝴蝶的翅膀 124
4.4.4 程序重点清单 132
第5章 显示列表 152
5.1 显示列表的创建 152
5.2 显示列表的执行 158
5.3 显示列表的管理 159
5.4 多学一点——旋转的红伞 162
5.5 多学一点——雨中行 169
5.6 程序重点清单 177
第6章 图形变换 201
6.1 屏幕坐标 201
6.2 投影变换 202
6.2.1 平行投影 202
6.2.2 透视投影 203
6.3 视区变换 204
6.4 剪切变换 205
6.5 几何变换 206
6.5.1 平移变换 206
6.5.2 旋转变换 206
6.5.3 缩放变换 207
6.6 矩阵操作与堆栈 213
6.6.1 矩阵操作 213
6.6.2 矩阵堆栈 214
6.6.3 多学一点——天涯共此时 215
6.6.4 程序重点清单 226
第3部分 渲染色彩
第7章 色彩构成与光照 250
7.1 OpenGL颜色的基本构成 250
7.1.1 OpenGL颜色模型 250
7.1.2 深度测试 252
7.1.3 渲染处理 254
7.2 颜色的相互作用 260
7.2.1 光的定义 260
7.2.2 物体的材质 262
7.2.3 法线的作用 263
7.2.4 全局的光照模型 263
7.2.5 深入学习——彩色气球 264
7.2.6 程序重点清单 273
第8章 融合与透明 292
8.1 OpenGL颜色的融合 292
8.2 融合的操作 293
8.3 复杂的透明 299
8.4 深入学习——绿茶 301
8.5 程序重点清单 309
第9章 反走样与雾化 328
9.1 反走样 328
9.1.1 OpenGL反走样 328
9.1.2 反走样函数与定义 329
9.2 雾化 330
9.2.1 OpenGL雾化 330
9.2.2 雾化函数与定义 330
9.2.3 深入学习——荷塘月色 340
9.2.4 程序重点清单 349
第10章 图像贴图与文字显示 370
10.1 图像位图操作 370
10.1.1 图像操作 370
10.1.2 位图操作 373
10.1.3 材质纹理贴图 374
10.2 显示汉字的方法 384
10.2.1 显示汉字方法一——贴图 385
10.2.2 显示汉字方法二——显示列表 385
10.2.3 程序重点清单 396
第4部分 动画的应用开发
第11章 动画与实时处理 418
11.1 动画 418
11.1.1 动画生成 418
11.1.2 双缓存技术 418
11.2 动画的因果 419
11.2.1 变化的形状 419
11.2.2 变化的位置 434
11.2.3 变化的颜色 444
Visual C++ OpenGL应用程序开发
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!