《Android三维程序设计》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(美)梅塔(Mehta
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302391371
  • 页数:178 页
图书介绍:图形系统设计已经愈发成为现代计算机图形学以及游戏的一个关键特性。本书详细解释了图形系统设计的理论和方法,以及与之相关的API函数,以帮助用户开发、测试和调试着色器程序。本书适合计算机图形学专业学生和自学者作为教材或者参考读物使用。

第1章 新型API的优势 1

1.1 图形渲染API 1

1.2 设备需求 2

1.3 创建OpenGL表面视图 4

1.4 确定OpenGL ES版本 4

1.5 创建OpenGL表面 13

1.6 ES 2.0的强大功能 18

1.7 关于开发人员 19

1.8 本章小结 22

第2章 预备知识 23

2.1 选择开发设备 23

2.2 选择输入 24

2.3 Tank Fence游戏 27

2.4 创建游戏菜单 28

2.5 利用setContentView和addContentView创建视图 31

2.6 XML视图设计 35

2.7 与按钮和计数器类协同工作 37

2.8 通过触摸实现旋转操作 39

2.9 基于Android传感器的旋转操作 40

2.10 本章小结 45

第3章 ES 2.0基础知识 46

3.1 Android中的EGL 46

3.1.1 GLSurfaceView类 46

3.1.2 构建渲染器 47

3.2 渲染器线程 48

3.2.1 性能分离 48

3.2.2 线程安全 49

3.3 实现方法 49

3.3.1 渲染器解析 49

3.3.2 变化的GL表面 51

3.4 帧缓冲区 53

3.4.1 双缓冲区机制 54

3.4.2 清除颜色缓冲区 54

3.4.3 设置视口 55

3.5 GLSL 56

3.5.1 着色器程序 57

3.5.2 顶点着色器示例 58

3.5.3 数据类型 60

3.5.4 片元着色器示例 62

3.6 GLPOINT BASIC应用程序 64

3.6.1 使用loadShader方法 64

3.6.2 属性 65

3.7 绘制直线和三角形图元 68

3.7.1 varying变量 69

3.7.2 三角形图元 71

3.8 标准化设备坐标系 72

3.9 3D转换 74

3.9.1 转换类型 74

3.9.2 矩阵类 76

3.10 状态管理 79

3.10.1 剔除表面 80

3.10.2 深度测试 81

3.11 本章小结 82

第4章 3D建模 83

4.1 通过glDrawElements绘制几何形状 83

4.1.1 GL POINTELEMENTS应用程序 84

4.1.2 绘制直线和三角形图元 85

4.2 Blender建模软件 89

4.2.1 默认布局 90

4.2.2 对象模式 91

4.2.3 3D View窗口中的面板 92

4.2.4 平移对象 93

4.2.5 使用套索选择命令 94

4.3 游戏对象建模 97

4.3.1 构建等边三角形 98

4.3.2 tank Fence Blender文件 102

4.3.3 导出网格数据 107

4.4 基于OpenGL ES的对象解释操作 109

4.4.1 安装Perl 111

4.4.2 下载解释器 115

4.4.3 使用解释器 116

4.5 使用网格数据 118

4.6 Blender界面中的基本组件:截图效果 121

4.7 本章小结 123

第5章 纹理和着色 124

5.1 顶点缓冲区对象 124

5.2 对象缓冲区类型 124

5.3 使用缓冲区对象 124

5.4 使用颜色蒙版 127

5.5 纹理 128

5.5.1 2D纹理 129

5.5.2 使用纹理和颜色 135

5.5.3 立方体贴图 136

5.5.4 多重纹理 139

5.6 基于着色器程序的光照效果 142

5.6.1 光照模型 142

5.6.2 光照模型 143

5.6.3 顶点着色器中的光照方程 144

5.6.4 顶点法线的插值计算 149

5.7 本章小结 151

第6章 游戏扩展 152

6.1 确定渲染模式 152

6.2 添加FIRE按钮 153

6.3 平移和旋转的整合结果 157

6.4 向Tank对象中加入Missile对象 159

6.4.1 initMissiles方法 165

6.4.2 更新导弹对象的数组列表 167

6.5 Enemy类 168

6.5.1 生成敌方角色 169

6.5.2 Enemy对象源位置的插值计算 171

6.6 通过碰撞检测消除Enemy对象 174

6.7 本章小结 178