Visual C++ OpenGL DirectX三维动画编程宝典
分類: 图书,计算机/网络,程序设计,C C++ C# VC VC++,
作者: 万斌 等 编写
出 版 社: 希望电子
出版时间: 2003-1-1字数: 501千版次: 1页数: 338印刷时间: 2003/01/01开本:印次:纸张: 胶版纸I S B N : 9787894980120包装: 平装编辑推荐
本书适合初、中级三维动画相关方面程序开发人员,高等院校学生、计算机编程爱好者阅读参考。
内容简介
这是一本关于用Visual C++平台下的OpenGL和DirectX实现三维动画的方法和技巧的专著。
本书的特点是以实例的形式由浅入深地详细地讲解。本书共分为两部分共18章和2个附录。第1部分:关于OpenGL的10个例子的讲解。内容为制作OpenGL黑屏窗口框架程序;绘制无色的三角形和正方形;绘制彩色的三角形和正方形;制作彩色旋转的三角形和正方形;制作彩色旋转的金字塔和正方体;制作旋转的带纹理贴图的正方体;实现纹理过滤器、基本的光照和键盘控制等特效;制作透明的带纹理贴图的可键盘控制的正方体;制作美丽的星空;用3D实现的在屋子里移动。第2部分给出与OpenGL前8个例子相对应的DirectX 8.0例子(应用DirectX 8.0 SDK),内容为制作不断变换背景颜色的DirectX窗口;制作黑白的三角形和正方形;制作彩色的三角形和正方形;制作彩色旋转的三角形和正方形;制作彩色旋转的金字塔和正方体;制作带纹理贴图的旋转的正方体;制作纹理过滤、光照效果以及键盘控制;制作透明效果。附录1为OpenGL指令集,附录2为安装DirectX 8.0 SDK。
每章的代码都是基于第1章的代码,并在前一章代码的基础上进行增删而成的,易于理解。代码特点是由浅入深,内容逐步增加。
本书适合初、中级三维动画相关方面程序开发人员,高等院校学生、计算机编程爱好者阅读参考。说明:有关书中实例的源代码,请从www.b-xr.com下载3990.zip。
作者简介
目录
第一篇 OpenGL
第1章 制作OpenGL黑屏窗口
框架程序1
1.1 在Visual C++下建立Win32应用
程序2
1.2 程序的开头部分——include文件
设置及全局变量4
1.3 改变OpenGL场景尺寸5
1.4 OpenGL的初始化7
1.5 OpenGL的绘制9
1.6 关闭OpenGL10
1.7 激活OpenGL及改变屏幕分辨率10
1.8 处理窗口的消息及键盘事件处理11
1.9 WinMain13
1.10 本章小结17
1.11 本章源码17
第2章 绘制无色的三角形和正方形25
2.1 绘制三角形25
2.2 绘制矩形27
2.3 本章小结29
2.4 本章源码29
第3章 绘制彩色的三角形和正方形37
3.1 绘制彩色带混色的三角形37
3.2 绘制单一色彩的矩形39
3.3 本章小结40
3.4 本章源码40
第4章 制作彩色旋转的三角形和
正方形48
4.1 彩色带混色的三角形的旋转48
4.2 单一色彩的矩形的旋转51
4.3 本章小结52
4.4 本章源码53
第5章 制作彩色旋转的金字塔和
正方体61
5.1 绘制彩色旋转的金字塔61
5.2 绘制彩色旋转的正方体66
5.3 本章小结71
5.4 本章源码71
第6章 制作旋转的带纹理贴图的
正方体80
6.1 程序include及全局变量定义81
6.3 读取文件82
6.3 将位图转换成纹理83
6.4 OpenGL初始化(包括纹理的初
始化)85
6.5 绘制带纹理的正方体86
6.6 本章小结90
6.7 本章源码91
第7章 实现纹理过滤器,基本的光照和键盘控制等特效101
7.1 新增的设置103
7.2 读取位图文件106
7.3 读取位图文件并将其转换为纹理107
7.4 OpenGL的初始化110
7.5 绘制带纹理贴图的正方体112
7.6 增加键盘交互功能115
7.7 本章小结118
7.8 本章源码119
第8章 制作透明的带纹理贴图的可键盘控制的正方体131
8.1 使用混合功能实现透明的原理131
8.2 程序新的全局变量的设置132
8.3 OpenGL初始化程序SceneInit()的
修改134
8.4 增加'B'键的处理134
8.5 本章小结135
8.6 本章源码135
第9章 制作美丽的星空148
9.1 新的全局变量的设置149
9.2 读取纹理位图图像150
9.3 读取位图并将其转换成纹理151
9.4 OpenGL的初始化152
9.5 绘制星星153
9.6 修改键盘事件的处理154
9.7 本章小结154
9.8 本章源码155
第10章用3D实现的在屋子里
移动165
10.1 建立三维结构166
10.2 读取模型数据166
10.3 控制相机实现在3D世界中真实
的移动168
10.4 绘制三维场景170
10.5 本章小结174
10.6 本章源码174
第二篇 DirectX 3D
第11章 制作不断变换背景颜色的DirectX窗口189
11.1 include及全局变量的设置以及重
要的声明190
11.2 初始化场景191
11.3 检测是否支持16位色彩模式191
11.4 对Direct3D进行初始化191
11.5 释放Direct3D资源193
11.6 绘图193
11.7 处理视窗消息194
11.8 编写WinMain()195
11.9 本章小结197
11.10 本章源码198
第12章 制作黑白的三角形和
正方形205
12.1 定义新的数据结构205
12.2 修改D3DDisable函数206
12.3 对函数D3DInit()进行修改207
12.4 绘制209
12.5 本章源码(1)210
12.6 制作黑白的三角形和正方形的另一种方法219
12.7 对函数D3DDisable的修改220
12.8 修改函数D3DInit220
12.9 为D3DSceneShow()增加新的
功能222
12.10 本章小结223
12.11 本章源码(2)223
第13章制作彩色的三角形和
正方形233
13.1 实现多边形的着色233
13.2 本章小结234
13.3 本章源码234
第14章 制作彩色旋转的三角形和
正方形244
14.1 实现旋转功能244
14.2 本章小结246
14.3 本章源码246
第15章 制作彩色旋转的金字塔和
正方体256
15.1 定义金字塔及正方体的顶点
坐标256
15.2 修改D3DInit函数258
15.3 修改函数D3DSceneShow()259
15.4 本章小结260
15.5 本章源码260
第16章 制作带纹理贴图的旋转的
正方体271
16.1 定义新的全局变量及修改顶点
的定义271
16.2 修改D3DDisable()函数273
16.3 修改D3DInit()函数274
16.4 读取纹理位图文件并实现对象
的纹理贴图274
16.5 绘制带纹理贴图的正方体275
16.6 本章小结275
16.7 本章源码275
第17章 制作纹理过滤、光照效果以及键盘控制287
17.1 为使用灯光效果及键盘交互而
增加的设置288
17.2 在D3DInit中增加对灯光及纹理
过滤的支持290
17.3 修改函数D3DSceneShow()292
17.4 增加键盘控制功能293
17.5 本章小结295
17.6 本章源码295
第18章 制作透明效果309
18.1 增加一些设定309
18.2 修改子程序D3DInit311
18.3 更新D3DDisable函数313
18.4 修改用于绘制的D3DSceneShow()
函数313
18.5 本章小结314
18.6 本章源码314
附录1 OpenGL指令集330
OpenGL核心函数库330
OpenGL应用函数库333
附录2 安装DirectX 8.0 SDK336
媒体评论