Android游戏编程入门经典

978-7-115-31954-8
作者: 【美】Jonathan S. Harbour
译者: 宋松王小飞
编辑: 傅道坤

图书目录:

目 录

第 1部分 简介

第 1章 Android 4简介 3

1.1 Android 4简介 3

1.2 Android SDK简介 6

1.3 Android NDK简介 7

1.4 Android开发系统要求 7

1.5 Android平台的历史 7

1.6 Android硬件规格 8

1.7 小结 10

1.8 问与答 10

1.9 测验 10

1.9.1 问题 10

1.9.2 答案 10

1.9.3 作业 10

第 2章 安装开发工具 11

2.1 安装JDK 11

2.2 下载NetBeans软件包 12

2.3 安装软件包 13

2.4 安装Android SDK 14

2.5 下载SDK 14

2.6 安装SDK 15

2.7 运行Android SDK Manager 16

2.8 安装Eclipse的ADT插件 18

2.9 小结 19

2.10 问与答 19

2.11 测验 20

2.11.1 问题 20

2.11.2 答案 20

2.11.3 作业 20

第3章 使用Android SDK配置NetBeans和Eclipse 21

3.1 创建Android模拟器设备 21

3.2 创建新模拟器设备 22

3.3 运行模拟器 23

3.4 将Android SDK添加到NetBeans中 24

3.5 为Eclipse添加Android SDK支持 27

3.5.1 在Eclipse中创建新Android项目 27

3.5.2 选择Android构建目标 29

3.6 小结 30

3.7 问与答 30

3.8 测验 30

3.8.1 问题 30

3.8.2 答案 31

3.8.3 作业 31

第4章 创建第 一个Android程序 32

4.1 创建新的Android项目 32

4.1.1 配置NBAndroid插件 34

4.1.2 完成新项目设置 35

4.2 构建新项目 35

4.2.1 打开输出窗口 36

4.2.2 在模拟器中运行程序 37

4.3 编辑Hello,Android!程序 41

4.4 对比模拟器和Android设备 42

4.4.1 AVD限制 43

4.4.2 安装Android Debug Bridge Device Driver 44

4.4.3 在Android设备上运行代码 46

4.5 小结 48

4.6 问与答 49

4.7 测验 49

4.7.1 问题 49

4.7.2 答案 49

4.7.3 作业 49

第 2部分 Android硬件

第5章 开始使用图形 53

5.1 了解Activity类 53

5.1.1 程序生命周期 54

5.1.2 可视生命周期 55

5.1.3 前台生命周期 55

5.2 测试Activity状态 55

5.2.1 创建新项目 55

5.2.2 源代码 58

5.3 世界上**简单的Android图形演示 59

5.3.1 取消选中第 一个图形演示 61

5.3.2 画布和视图简介 62

5.4 小结 63

5.5 问与答 63

5.6 测验 63

5.6.1 问题 63

5.6.2 答案 63

5.6.3 作业 63

第6章 绘制基本形状和文本 64

6.1 绘制基本矢量形状 64

6.1.1 绘制圆形 64

6.1.2 绘制线条 64

6.1.3 绘制方框 65

6.1.4 绘制圆角矩形 65

6.1.5 绘制三角形 66

6.1.6 更改样式:描边和填充 66

6.1.7 基本图形演示 66

6.2 绘制文本 69

6.3 编写Javadoc的代码 72

6.4 Android屏幕密度和分辨率 73

6.5 小结 77

6.6 问与答 77

6.7 测验 77

6.7.1 问题 77

6.7.2 答案 77

6.7.3 作业 77

第7章 加载和绘制图像 78

7.1 双缓冲绘图 78

7.1.1 创建内存位图 78

7.1.2 创建绘图画布 79

7.1.3 使用后台缓冲 79

7.2 加载位图文件 81

7.2.1 添加位图资产 82

7.2.2 使用AssetManager 83

7.2.3 使用InputStream 84

7.2.4 使用BitmapFactory 84

7.2.5 关闭输入流 84

7.2.6 完整的位图加载代码 84

7.3 绘制位图 85

7.3.1 为透明度创建aplha通道 86

7.3.2 完成的示例 88

7.4 小结 89

7.5 问与答 89

7.6 测验 90

7.6.1 问题 90

7.6.2 答案 90

7.6.3 作业 90

第8章 使用循环赋予游戏活力 91

8.1 创建线程游戏循环 91

8.1.1 查看非线程代码 91

8.1.2 编写线程代码 92

8.2 不使用onDraw()进行绘制 93

8.3 Runnable Animation Demo 95

8.3.1 为行走的角色制作动画 95

8.3.2 项目源代码 96

8.4 小结 100

8.5 问与答 100

8.6 测验 100

8.6.1 问题 100

8.6.2 答案 100

8.6.3 作业 101

第9章 多点触摸用户输入 102

9.1 单点触摸输入 102

9.1.1 监听触摸事件 102

9.1.2 单点触摸输入演示 103

9.2 多点触摸输入 106

9.2.1 简单示例 107

9.2.2 封装多点触摸输入 108

9.2.3 多点触摸演示 108

9.3 小结 111

9.4 问与答 111

9.5 测验 112

9.5.1 问题 112

9.5.2 答案 112

9.5.3 作业 112

第 10章 使用加速度计 113

10.1 Android传感器 113

10.1.1 访问传感器 114

10.1.2 禁用屏幕方向改变 115

10.1.3 加速度计初始化 115

10.1.4 加速度计运动 116

10.1.5 获取可用传感器列表 117

10.1.6 完整示例 118

10.2 小结 121

10.3 问与答 121

10.4 测验 122

10.4.1 问题 122

10.4.2 答案 122

10.4.3 作业 122

第 11章 使用线性加速度传感器和近距离传感器 123

11.1 访问线性加速度传感器 123

11.1.1 初始化线性加速度传感器 124

11.1.2 关于暂停和恢复 124

11.1.3 读取传感器 124

11.1.4 线性加速度演示 125

11.2 访问近距离传感器 129

11.3 小结 130

11.4 问与答 130

11.5 测验 130

11.5.1 问题 130

11.5.2 答案 131

11.5.3 作业 131

第 12章 使用重力传感器和压力传感器 132

12.1 使用重力传感器 132

12.1.1 初始化重力传感器 132

12.1.2 读取重力传感器 133

12.1.3 测试重力传感器 134

12.2 使用压力传感器 138

12.2.1 初始化压力传感器 138

12.2.2 读取压力传感器 139

12.3 小结 139

12.4 问与答 139

12.5 测验 139

12.5.1 问题 139

12.5.2 答案 140

12.5.3 作业 140

第 13章 创建自己的“手机传感器” 141

13.1 封装Android传感器 141

13.1.1 BaseSensor 142

13.1.2 加速度计 142

13.1.3 线性加速度 143

13.1.4 近距离传感器 143

13.1.5 重力传感器 143

13.1.6 压力传感器 144

13.1.7 陀螺仪传感器 144

13.1.8 指南针 144

13.1.9 光检测器 145

13.2 创建手机传感器项目 145

13.2.1 包和导入 146

13.2.2 主要类 146

13.2.3 DrawView 147

13.2.4 暂停和恢复 147

13.2.5 线程进程 147

13.2.6 创建面板 148

13.2.7 更新传感器 149

13.2.8 绘制传感器面板 149

13.2.9 辅助方法 150

13.2.10 SensorPanel类 150

13.2.11 输出文本行 151

13.2.12 Sensors类 152

13.2.13 捕捉传感器事件 153

13.2.14 未使用的准确性事件 154

13.2.15 暂停和恢复应用程序 154

13.2.16 BaseSensor类 156

13.2.17 各种传感器类 157

13.3 小结 158

13.4 问与答 158

13.5 测验 158

13.5.1 问题 158

13.5.2 答案 159

13.5.3 作业 159

第 14章 使用音频系统 160

14.1 使用MediaPlayer播放音频 160

14.1.1 受支持的音频格式 160

14.1.2 初始化MediaPlayer 161

14.1.3 将音频文件添加到项目中 161

14.1.4 播放音频剪辑 163

14.2 使用SoundPool播放音频 163

14.2.1 初始化SoundPool 164

14.2.2 加载音频资源 164

14.2.3 播放音频资源 164

14.2.4 Audio Demo程序 165

14.3 小结 166

14.4 问与答 166

14.5 测验 166

14.5.1 问题 166

14.5.2 答案 167

14.5.3 作业 167

第3部分 Android Gameplay

第 15章 构建Android游戏引擎 171

15.1 设计Android游戏引擎 171

15.1.1 设计目标 172

15.1.2 引擎组件 172

15.2 创建Android库项目 174

15.3 编写核心引擎类 178

15.3.1 Engine类 178

15.3.2 Timer类 185

15.3.3 TextPrinter类 186

15.3.4 Texture类 187

15.4 引擎测试演示项目 188

15.4.1 引擎演示源代码 190

15.4.2 记录引擎演示的日志 192

15.5 小结 193

15.6 问与答 193

15.7 测验 193

15.7.1 问题 193

15.7.2 答案 193

15.7.3 作业 193

第 16章 创建Sprite/Actor类 194

16.1 静态子画面为道具 194

16.2 动态子画面为角色 195

16.3 封装基本子画面功能 196

16.3.1 拟定计划和设计 197

16.3.2 新Sprite类的简介 197

16.3.3 回顾Texture 198

16.4 测试Sprite类 199

16.4.1 子画面演示源代码 200

16.4.2 测试Sprite类 202

16.5 小结 203

16.6 问与答 203

16.7 测验 203

16.7.1 问题 203

16.7.2 答案 203

16.7.3 作业 203

第 17章 使用子画面表单/地图集制作帧动画 204

17.1 使用一张图像制作动画 204

17.1.1 排列动画帧 204

17.1.2 从连续图像绘制帧 205

17.2 使用子画面表单(纹理地图集)制作动画 206

17.3 动画演示 207

17.4 小结 211

17.5 问与答 211

17.6 测验 211

17.6.1 问题 211

17.6.2 答案 212

17.6.3 作业 212

第 18章 高级多动画技术 213

18.1 创建动画系统 213

18.1.1 编写动画基类 213

18.1.2 Sprite类改进 214

18.1.3 alpha动画 218

18.1.4 帧动画 219

18.1.5 旋转动画 220

18.1.6 跳动动画 221

18.1.7 圆周运动动画 222

18.2 动画系统演示 222

18.3 小结 226

18.4 问与答 226

18.5 测验 226

18.5.1 问题 226

18.5.2 答案 227

18.5.3 作业 227

第 19章 使用矩阵变换处理子画面 228

19.1 矩阵平移 228

19.1.1 坐标系 229

19.1.2 矩阵平移选项 231

19.2 矩阵旋转 232

19.3 矩阵缩放 233

19.4 矩阵变换演示 233

19.4.1 结合使用三个矩阵 234

19.4.2 将帧渲染到划痕位图 234

19.4.3 获得屏幕分辨率(Precanvas) 235

19.4.4 “扭曲”行为 236

19.4.5 更新的Sprite类 237

19.4.6 子画面变换演示 241

19.5 小结 244

19.6 问与答 244

19.7 测验 244

19.7.1 问题 244

19.7.2 答案 244

19.7.3 作业 245

第 20章 实体分组 246

20.1 实体分组 246

20.1.1 引擎改进 246

20.1.2 跳动动画更新 249

20.1.3 扭曲行为更新 250

20.1.4 围栏行为 251

20.1.5 实体分组演示 251

20.2 小结 254

20.3 问与答 255

20.4 测验 255

20.4.1 问题 255

20.4.2 答案 255

20.4.3 作业 255

第 21章 碰撞检测 256

21.1 碰撞检测技术 256

21.1.1 边界矩形(框碰撞) 256

21.1.2 边界圆形(径向碰撞) 257

21.2 演示碰撞 259

21.2.1 引擎改进 259

21.2.2 子画面改进 262

21.2.3 碰撞演示源代码 264

21.3 小结 267

21.4 问与答 267

21.5 测验 267

21.5.1 问题 267

21.5.2 答案 268

21.5.3 作业 268

第 22章 使用线性速度实现实际运动 269

22.1 从一个方向计算速度 269

22.2 在移动方向上“定位”子画面 271

22.3 改进引擎 273

22.3.1 Sprite类的变化 273

22.3.2 改进动画类 275

22.3.3 对速度行为进行分类 276

22.3.4 更新圆周运动类 277

22.3.5 更新围栏行为 278

22.3.6 更新扭曲行为 279

22.3.7 引擎改进 280

22.4 小结 284

22.5 问与答 284

22.6 测验 284

22.6.1 问题 284

22.6.2 答案 285

22.6.3 作业 285

第 23章 滚动背景 286

23.1 背景滚动概述 286

23.1.1 翻转滚动矩形 286

23.1.2 创建滚动纹理 287

23.2 射击游戏 288

23.3 小结 294

23.4 问与答 294

23.5 测验 295

23.5.1 问题 295

23.5.2 答案 295

23.5.3 作业 295

第 24章 球类游戏 296

24.1 创建球类游戏 296

24.1.1 自动移动球 297

24.1.2 自动限制球拍 298

24.1.3 球类游戏源代码 299

24.2 小结 303

24.3 问与答 303

24.4 测验 303

24.4.1 问题 303

24.4.2 答案 303

24.4.3 作业 304

详情

本书讲解了使用Android SDK和Eclipse为Android设备开发2D和3D游戏的知识。通过本书,读者可以掌握移动游戏开发的所有环节,其中包括游戏设计、处理用户输入,以及将游戏发布到app 商店,从而设计出用户喜欢的高性能游戏。

图书摘要

相关图书

Android App开发入门与实战
Android App开发入门与实战
Kotlin入门与实战
Kotlin入门与实战
Android 并发开发
Android 并发开发
Android APP开发实战——从规划到上线全程详解
Android APP开发实战——从规划到上线全程详解
Android应用案例开发大全( 第4版)
Android应用案例开发大全( 第4版)
深入理解Android内核设计思想(第2版)(上下册)
深入理解Android内核设计思想(第2版)(上下册)

相关文章

相关课程