《OpenGL ES应用开发实践指南 Android卷》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)KEVINBROTHALER著;刘力平,苏统华译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111477822
  • 页数:230 页
图书介绍:本书是一本系统的OpenGL三维游戏和动态壁纸开发指南。由资深Android开发专家根据OpenGL ES 2.0版本撰写,不仅系统讲解OpenGL ES的核心概念、技术,以及Android的图形机制,并通过大量案例讲解了在Android上进行OpenGL ES开发的方法和技巧。

第1章 准备开始 1

1.1 安装工具 1

1.2 创建第一个程序 3

1.3 初始化OpenGL 5

1.4 创建Renderer类 10

1.5 使用静态导入 12

1.6 小结 12

第—部分 —个简单的空气曲棍球游戏 14

第2章 定义顶点和着色器 14

2.1 为什么选择空气曲棍球 14

2.2 不要从头开始 15

2.3 定义空气曲棍球桌子的结构 16

2.4 使数据可以被OpenGL存取 18

2.5 引入OpenGL管道 20

2.6 OpenGL颜色模型 25

2.7 小结 26

第3章 编译着色器及在屏幕上绘图 27

3.1 加载着色器 27

3.2 编译着色器 29

3.3 把着色器一起链接进OpenGL的程序 33

3.4 做最后的拼接 35

3.5 在屏幕上绘制 39

3.6 小结 43

3.7 练习 43

第4章 增加颜色和着色 44

4.1 平滑着色 45

4.2 引入三角形扇 45

4.3 增加一个新的颜色属性 46

4.4 使用新的颜色属性渲染 52

4.5 小结 55

4.6 练习 55

第5章 调整屏幕的宽高比 56

5.1 宽高比的问题 57

5.2 使用虚拟坐标空间 58

5.3 线性代数基础 59

5.4 定义正交投影 62

5.5 加入正交投影 64

5.6 小结 67

5.7 练习 67

第6章 进入第三维 68

6.1 三维的艺术 68

6.2 从着色器到屏幕的坐标变换 69

6.3 添加w分量创建三维图 71

6.4 使用透视投影 72

6.5 定义透视投影 73

6.6 在代码中创建投影矩阵 75

6.7 开始使用投影矩阵 76

6.8 增加旋转 79

6.9 小结 81

6.10 练习 82

第7章 用纹理增加细节 83

7.1 理解纹理 84

7.2 把纹理加载进OpenGL中 85

7.3 创建新的着色器集合 90

7.4 为顶点数据创建新的类结构 91

7.5 为着色器程序添加类 95

7.6 绘制纹理 99

7.7 小结 101

7.8 练习 101

第8章 构建简单物体 102

8.1 合并三角形带和三角形扇 102

8.2 添加几何图形的类 104

8.3 添加物体构建器 105

8.4 更新物体 112

8.5 更新着色器 113

8.6 集成所有的变化 114

8.7 小结 119

8.8 练习 119

第9章 增加触控反馈:与空气曲棍球游戏交互 120

9.1 为Activity增加触控支持 120

9.2 增加相交测试 122

9.3 通过拖动移动物体 130

9.4 增加碰撞检测 132

9.5 小结 136

9.6 练习 137

第二部分 构建三维世界 140

第10章 用粒子增添趣味 140

10.1 为一个简单的粒子系统创建一组着色器 141

10.2 添加粒子系统 144

10.3 绘制粒子系统 148

10.4 扩散粒子 150

10.5 添加重力 152

10.6 用累加混合技术混合粒子 153

10.7 自定义点的外形 153

10.8 把每个点绘制为一个精灵 154

10.9 小结 156

10.10 练习 156

第11章 增加天空盒 157

11.1 创建天空盒 157

11.2 把立方体贴图加载到OpenGL中 159

11.3 创建立方体 161

11.4 增加天空盒着色器程序 163

11.5 在场景中加入天空盒 165

11.6 围绕场景移动相机 167

11.7 小结 169

11.8 练习 169

第12章 增加地形 170

12.1 创建高度图 170

12.2 创建顶点和索引缓冲区对象 171

12.3 加载高度图 173

12.4 绘制高度图 176

12.5 遮罩被隐藏的物体 180

12.6 小结 183

12.7 练习 183

第13章 点亮世界 184

13.1 仿真光照的效果 184

13.2 用朗伯体反射实现方向光 186

13.3 添加点光 192

13.4 小结 199

13.5 练习 199

第14章 创建动态壁纸 200

14.1 实现动态壁纸的Service组件 200

14.2 权衡系统的其余部分 207

14.3 小结 209

14.4 练习 209

第15章 采取下一步行动 211

15.1 展望其他平台 211

15.2 了解更高级的技术 213

15.3 与世界分享你的艺术视野 216

附录A 投影背后的矩阵数学 217

附录B 调试 223

参考文献 228