书籍详情
Android 游戏开发大全(第3版)
作者:吴亚峰 苏亚光 于复兴
出版社:人民邮电出版社
出版时间:2015-10-01
ISBN:9787115401694
定价:¥99.00
购买这本书可以去
内容简介
本书是讲解Android游戏案例开发的专业书籍,全书分两部分共18章,前半部分为Android游戏开发核心技术,主要包括Android游戏开发的前台渲染、交互式通信、数据存储和传感器、网络编程、游戏背后的数学与物理、游戏地图开发、游戏开发小秘技、JBox2D物理引擎、3D应用开发基础等;后半部分为Android游戏开发实战综合案例,包括现在流行的多种游戏类型,如滚屏动作类游戏——坦克大战、网络游戏开发——风火三国网络对战游戏、物理传感器游戏——哇!重力球、塔防游戏——炫彩塔防、策略游戏——大富翁、休闲类游戏——切切乐、休闲类游戏——3D冰球。本书适合Android初学者、有Java基础的读者、在职开发人员、游戏开发爱好者、程序员阅读参考,也可作为大中专院校相关专业的学习用书和培训学校的教材。
作者简介
吴亚峰,毕业于北京邮电大学,后留学澳大利亚取得硕士学位。1998年开始从事Java应用的开发,有10多年的Java开发与培训经验。主要的研究方向为OpenGL ES、手机游戏、Java EE以及搜索引擎。同时为手机游戏、Java EE独立软件开发工程师,并兼任百纳科技Java培训中心首席培训师。近十年来为数十家企业培养了上千名高级软件开发人员,曾编写过《Android 3D游戏开发技术宝典——OpenGL ES 2.0》、《Cocos2d-X 3.0游戏开发实战详解》、《Unity 4 3D开发实战详解》等多本畅销技术书籍。2008年初开始关注Android平台下的3D应用开发,并开发出一系列的Android应用程序与3D游戏。
目录
目录
第1章 Android平台简介 1
1.1 Android的来龙去脉 1
1.2 掀起Android的盖头来 1
1.2.1 选择Android的理由 1
1.2.2 Android的应用程序框架 2
1.3 Android开发环境的搭建 4
1.3.1 Android SDK的下载 4
1.3.2 Android SDK的配置 5
1.3.3 创建并启动模拟器 7
1.3.4 **个Android程序 9
1.3.5 Android程序的监控与调试 13
1.4 已有Android项目的导入与运行 15
1.4.1 项目的导入 15
1.4.2 项目的运行 17
1.5 小结 18
第2章 Android游戏开发中的前台渲染 19
2.1 创建Android用户界面 19
2.1.1 布局管理 19
2.1.2 常用控件及其事件处理 24
2.2 图形与动画在Android中的实现 26
2.2.1 简单图形的绘制 26
2.2.2 贴图的艺术 27
2.2.3 剪裁功能 29
2.2.4 自定义动画的播放 32
2.3 Android平台下的多媒体开发 34
2.3.1 音频的播放 34
2.3.2 视频的播放 37
2.3.3 Camera图像采集 39
2.4 小结 41
第3章 Android游戏开发中的
交互式通信 42
3.1 Android应用程序的基本组件 42
3.1.1 Activity组件 42
3.1.2 Service组件 44
3.1.3 Broadcast Receiver组件 44
3.1.4 Content Provider组件 46
3.1.5 AndroidManifest.xml
文件简介 46
3.2 应用程序的内部通信 49
3.2.1 消息的处理者——Handler
类简介 49
3.2.2 使用Handler进行内部通信 50
3.3 应用程序组件之间的通信 52
3.3.1 Intent类简介 52
3.3.2 应用程序组件——IntentFilter
类简介 53
3.3.3 示例1:与Android系统
组件通信 54
3.3.4 示例2:应用程序组件间通信
示例Activity部分的开发 55
3.3.5 示例3:应用程序组件间通信
示例Service部分的开发 57
3.4 小结 59
第4章 Android游戏开发中的数据存储
和传感器 60
4.1 在Android平台上实现数据存储 60
4.1.1 私有文件夹文件的写入
与读取 60
4.1.2 读取Resources和Assets
中的文件 63
4.1.3 轻量级数据库SQLite简介 65
4.1.4 SQLite的使用示例 67
4.1.5 数据共享者——Content
Provider的使用 70
4.1.6 简单的数据存储——
Preferences的使用 74
4.2 Android平台下传感器应用
的开发 75
4.2.1 基本开发步骤 76
4.2.2 光传感器 78
4.2.3 温度传感器 80
4.2.4 接近传感器 81
4.2.5 加速度传感器 83
4.2.6 磁场传感器 85
4.2.7 姿态传感器 87
4.2.8 陀螺仪传感器 90
4.2.9 加速度传感器综合案例 91
4.2.10 传感器的坐标轴问题 94
4.3 小结 97
第5章 Android游戏开发中的网络编程 98
5.1 基于Socket套接字的网络编程 98
5.2 基于HTTP的网络编程 101
5.2.1 通过URL获取网络资源 101
5.2.2 在Android中解析XML 103
5.3 Android平台下的百度地图 103
5.3.1 准备工作 104
5.3.2 简单的案例 107
5.4 蓝牙通信 111
5.4.1 基础知识 111
5.4.2 简单的案例 111
5.5 简单的多用户并发网络游戏
编程架构 122
5.5.1 基本知识 122
5.5.2 双人联网操控飞机案例 124
5.6 小结 134
第6章 不一样的游戏,一样的精彩应用 135
6.1 射击类游戏 135
6.1.1 游戏玩法 135
6.1.2 视觉效果 135
6.1.3 游戏内容设计 136
6.2 竞速类游戏 136
6.2.1 游戏玩法 137
6.2.2 视觉效果 137
6.2.3 游戏内容设计 137
6.3 益智类游戏 138
6.3.1 游戏玩法 138
6.3.2 视觉效果 138
6.3.3 游戏内容设计 139
6.4 角色扮演游戏 139
6.4.1 游戏玩法 139
6.4.2 视觉效果 140
6.4.3 游戏内容设计 140
6.5 闯关动作类游戏 141
6.5.1 游戏玩法 141
6.5.2 视觉效果 142
6.5.3 游戏内容设计 142
6.6 冒险游戏 142
6.6.1 游戏玩法 142
6.6.2 视觉效果 143
6.6.3 游戏内容设计 144
6.7 策略游戏 144
6.7.1 游戏玩法 144
6.7.2 视觉效果 145
6.7.3 游戏内容设计 145
6.8 养成类游戏 146
6.8.1 游戏玩法 146
6.8.2 视觉效果 146
6.8.3 游戏内容设计 146
6.9 经营类游戏 147
6.9.1 游戏玩法 147
6.9.2 视觉效果 148
6.9.3 游戏内容设计 148
6.10 体育类游戏 148
6.10.1 游戏玩法 148
6.10.2 视觉效果 149
6.10.3 游戏内容设计 149
6.11 小结 149
第7章 游戏背后的数学与物理 151
7.1 编程中经常用到的数理知识 151
7.1.1 数学方面 151
7.1.2 物理方面 153
7.2 碰撞检测技术 153
7.2.1 碰撞检测技术基础 154
7.2.2 游戏中实体对象之间的
碰撞检测 155
7.2.3 游戏实体对象与环境之间
的碰撞检测 157
7.2.4 穿透效应问题 158
7.3 必知必会的计算几何 159
7.3.1 GeoLib库中常用基础类
的介绍 159
7.3.2 无孔多边形的相关知识 167
7.3.3 有孔多边形的相关知识 170
7.3.4 有孔多边形案例 173
7.3.5 显示凸壳案例 177
7.3.6 多边形切分案例 180
7.3.7 显示包围框以及多边形的
矩形组合案例 184
7.3.8 旋转与凸子区域案例 186
7.3.9 平滑与计算*短距离案例 188
7.3.10多边形缩放与不重叠案例 189
7.3.11 求多边形对称案例 191
7.3.12 多边形集合运算案例 192
7.4 小结 194
第8章 游戏地图必知必会 195
8.1 两种不同单元形状的地图 195
8.1.1 正方形单元地图 195
8.1.2 正方形单元地图案例 197
8.1.3 正六边形单元地图 198
8.1.4 正六边形单元地图案例 200
8.1.5 正方形单元和正六边形单元
地图的比较 202
8.2 正六边形单元地图的路径搜索 202
8.2.1 路径搜索示例基本框架
的搭建 203
8.2.2 深度优先路径搜索DFS 208
8.2.3 广度优先路径搜索BFS 209
8.2.4 路径搜索算法——
Dijkstra 212
8.2.5 用A*算法优化算法 215
8.3 正六边形单元地图的网格定位 217
8.3.1 基本知识 217
8.3.2 简单的案例 217
8.4 地图编辑器与关卡设计 219
8.4.1 关卡地图的重要性 219
8.4.2 图片分割界面的实现 221
8.4.3 地图设计界面的实现 224
8.5 多分辨率屏幕的自适应 230
8.5.1 非等比例缩放 230
8.5.2 非等比例缩放案例 231
8.5.3 等比例缩放并剪裁 234
8.5.4 等比例缩放并剪裁案例 235
8.5.5 等比例缩放并留白 236
8.5.6 等比例缩放并留白案例 237
8.6 小结 238
第9章 游戏开发小秘技 239
9.1 有限状态机 239
9.1.1 何为有限状态机 239
9.1.2 有限状态机的简单实现 240
9.1.3 有限状态机的OO实现 244
9.2 游戏中的模糊逻辑 246
9.2.1 模糊的才是真实的 246
9.2.2 如何在Android中将游戏
模糊化 247
9.3 游戏的基本优化技巧 249
9.3.1 代码上的小艺术 249
9.3.2 Android中的查找表技术 250
9.3.3 游戏的感觉和性能问题 252
9.4 多点触控技术的使用 253
9.4.1 基本知识 253
9.4.2一个简单
第1章 Android平台简介 1
1.1 Android的来龙去脉 1
1.2 掀起Android的盖头来 1
1.2.1 选择Android的理由 1
1.2.2 Android的应用程序框架 2
1.3 Android开发环境的搭建 4
1.3.1 Android SDK的下载 4
1.3.2 Android SDK的配置 5
1.3.3 创建并启动模拟器 7
1.3.4 **个Android程序 9
1.3.5 Android程序的监控与调试 13
1.4 已有Android项目的导入与运行 15
1.4.1 项目的导入 15
1.4.2 项目的运行 17
1.5 小结 18
第2章 Android游戏开发中的前台渲染 19
2.1 创建Android用户界面 19
2.1.1 布局管理 19
2.1.2 常用控件及其事件处理 24
2.2 图形与动画在Android中的实现 26
2.2.1 简单图形的绘制 26
2.2.2 贴图的艺术 27
2.2.3 剪裁功能 29
2.2.4 自定义动画的播放 32
2.3 Android平台下的多媒体开发 34
2.3.1 音频的播放 34
2.3.2 视频的播放 37
2.3.3 Camera图像采集 39
2.4 小结 41
第3章 Android游戏开发中的
交互式通信 42
3.1 Android应用程序的基本组件 42
3.1.1 Activity组件 42
3.1.2 Service组件 44
3.1.3 Broadcast Receiver组件 44
3.1.4 Content Provider组件 46
3.1.5 AndroidManifest.xml
文件简介 46
3.2 应用程序的内部通信 49
3.2.1 消息的处理者——Handler
类简介 49
3.2.2 使用Handler进行内部通信 50
3.3 应用程序组件之间的通信 52
3.3.1 Intent类简介 52
3.3.2 应用程序组件——IntentFilter
类简介 53
3.3.3 示例1:与Android系统
组件通信 54
3.3.4 示例2:应用程序组件间通信
示例Activity部分的开发 55
3.3.5 示例3:应用程序组件间通信
示例Service部分的开发 57
3.4 小结 59
第4章 Android游戏开发中的数据存储
和传感器 60
4.1 在Android平台上实现数据存储 60
4.1.1 私有文件夹文件的写入
与读取 60
4.1.2 读取Resources和Assets
中的文件 63
4.1.3 轻量级数据库SQLite简介 65
4.1.4 SQLite的使用示例 67
4.1.5 数据共享者——Content
Provider的使用 70
4.1.6 简单的数据存储——
Preferences的使用 74
4.2 Android平台下传感器应用
的开发 75
4.2.1 基本开发步骤 76
4.2.2 光传感器 78
4.2.3 温度传感器 80
4.2.4 接近传感器 81
4.2.5 加速度传感器 83
4.2.6 磁场传感器 85
4.2.7 姿态传感器 87
4.2.8 陀螺仪传感器 90
4.2.9 加速度传感器综合案例 91
4.2.10 传感器的坐标轴问题 94
4.3 小结 97
第5章 Android游戏开发中的网络编程 98
5.1 基于Socket套接字的网络编程 98
5.2 基于HTTP的网络编程 101
5.2.1 通过URL获取网络资源 101
5.2.2 在Android中解析XML 103
5.3 Android平台下的百度地图 103
5.3.1 准备工作 104
5.3.2 简单的案例 107
5.4 蓝牙通信 111
5.4.1 基础知识 111
5.4.2 简单的案例 111
5.5 简单的多用户并发网络游戏
编程架构 122
5.5.1 基本知识 122
5.5.2 双人联网操控飞机案例 124
5.6 小结 134
第6章 不一样的游戏,一样的精彩应用 135
6.1 射击类游戏 135
6.1.1 游戏玩法 135
6.1.2 视觉效果 135
6.1.3 游戏内容设计 136
6.2 竞速类游戏 136
6.2.1 游戏玩法 137
6.2.2 视觉效果 137
6.2.3 游戏内容设计 137
6.3 益智类游戏 138
6.3.1 游戏玩法 138
6.3.2 视觉效果 138
6.3.3 游戏内容设计 139
6.4 角色扮演游戏 139
6.4.1 游戏玩法 139
6.4.2 视觉效果 140
6.4.3 游戏内容设计 140
6.5 闯关动作类游戏 141
6.5.1 游戏玩法 141
6.5.2 视觉效果 142
6.5.3 游戏内容设计 142
6.6 冒险游戏 142
6.6.1 游戏玩法 142
6.6.2 视觉效果 143
6.6.3 游戏内容设计 144
6.7 策略游戏 144
6.7.1 游戏玩法 144
6.7.2 视觉效果 145
6.7.3 游戏内容设计 145
6.8 养成类游戏 146
6.8.1 游戏玩法 146
6.8.2 视觉效果 146
6.8.3 游戏内容设计 146
6.9 经营类游戏 147
6.9.1 游戏玩法 147
6.9.2 视觉效果 148
6.9.3 游戏内容设计 148
6.10 体育类游戏 148
6.10.1 游戏玩法 148
6.10.2 视觉效果 149
6.10.3 游戏内容设计 149
6.11 小结 149
第7章 游戏背后的数学与物理 151
7.1 编程中经常用到的数理知识 151
7.1.1 数学方面 151
7.1.2 物理方面 153
7.2 碰撞检测技术 153
7.2.1 碰撞检测技术基础 154
7.2.2 游戏中实体对象之间的
碰撞检测 155
7.2.3 游戏实体对象与环境之间
的碰撞检测 157
7.2.4 穿透效应问题 158
7.3 必知必会的计算几何 159
7.3.1 GeoLib库中常用基础类
的介绍 159
7.3.2 无孔多边形的相关知识 167
7.3.3 有孔多边形的相关知识 170
7.3.4 有孔多边形案例 173
7.3.5 显示凸壳案例 177
7.3.6 多边形切分案例 180
7.3.7 显示包围框以及多边形的
矩形组合案例 184
7.3.8 旋转与凸子区域案例 186
7.3.9 平滑与计算*短距离案例 188
7.3.10多边形缩放与不重叠案例 189
7.3.11 求多边形对称案例 191
7.3.12 多边形集合运算案例 192
7.4 小结 194
第8章 游戏地图必知必会 195
8.1 两种不同单元形状的地图 195
8.1.1 正方形单元地图 195
8.1.2 正方形单元地图案例 197
8.1.3 正六边形单元地图 198
8.1.4 正六边形单元地图案例 200
8.1.5 正方形单元和正六边形单元
地图的比较 202
8.2 正六边形单元地图的路径搜索 202
8.2.1 路径搜索示例基本框架
的搭建 203
8.2.2 深度优先路径搜索DFS 208
8.2.3 广度优先路径搜索BFS 209
8.2.4 路径搜索算法——
Dijkstra 212
8.2.5 用A*算法优化算法 215
8.3 正六边形单元地图的网格定位 217
8.3.1 基本知识 217
8.3.2 简单的案例 217
8.4 地图编辑器与关卡设计 219
8.4.1 关卡地图的重要性 219
8.4.2 图片分割界面的实现 221
8.4.3 地图设计界面的实现 224
8.5 多分辨率屏幕的自适应 230
8.5.1 非等比例缩放 230
8.5.2 非等比例缩放案例 231
8.5.3 等比例缩放并剪裁 234
8.5.4 等比例缩放并剪裁案例 235
8.5.5 等比例缩放并留白 236
8.5.6 等比例缩放并留白案例 237
8.6 小结 238
第9章 游戏开发小秘技 239
9.1 有限状态机 239
9.1.1 何为有限状态机 239
9.1.2 有限状态机的简单实现 240
9.1.3 有限状态机的OO实现 244
9.2 游戏中的模糊逻辑 246
9.2.1 模糊的才是真实的 246
9.2.2 如何在Android中将游戏
模糊化 247
9.3 游戏的基本优化技巧 249
9.3.1 代码上的小艺术 249
9.3.2 Android中的查找表技术 250
9.3.3 游戏的感觉和性能问题 252
9.4 多点触控技术的使用 253
9.4.1 基本知识 253
9.4.2一个简单
猜您喜欢