《Android游戏编程入门经典》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)哈伯著;宋松,王小飞译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115319548
  • 页数:304 页
图书介绍:本书讲解了使用Android SDK和Eclipse为Android设备开发2D和3D游戏的知识。通过本书,读者可以掌握移动游戏开发的所有环节,其中包括游戏设计、处理用户输入,以及将游戏发布到app 商店,从而设计出用户喜欢的高性能游戏。

第1部分 简介 3

第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硬件 53

第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 171

第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