Android 4游戏编程入门经典

《Android 4游戏编程入门经典》

基本信息

原书名:BeginningAndroid4Gamesevelopment

作者:(美)MarioZechnerRobertGreen[作译者介绍]

译者:曾繁贰于建业王炜

丛书名:移动与嵌入式开发技术

出版社:清华大学出版社

ISBN:9787302301059

上架时间:2012-11-6

出版日期:2012年11月

开本:16开

页码:1

版次:1-1

所属分类:计算机>软件与程序设计>移动开发>Android

计算机>游戏>游戏编程

Android 4游戏编程入门经典

更多关于 》》》《Android 4游戏编程入门经典

内容简介

书籍

计算机书籍

《android4游戏编程入门经典》囊括了成为一名成功的android游戏开发者所需的全部知识。本书是一本可以信赖的指南,能够帮助你在移动游戏开发中迅速“升级”。学完本书并加以融会贯通,就能够编写出成功的android游戏。

《android4游戏编程入门经典》将引导你在android平台上完整地开发出3个示例游戏,包括2d游戏和3d游戏。本书首先介绍游戏开发的理论基础,而且通过只使用剪刀、笔和纸从头设计一个完整的游戏,教会你游戏设计的基础知识。接下来,你将学习编程基础知识,并开始创建基本的游戏引擎和可玩的游戏。你将以一个有趣的2d游戏作为起点,最终创建出一个完善的3d太空入侵者游戏的克隆版本。这些项目将一步步地丰富你的知识和技能。

主要内容

设置和使用android开发工具:准备好编写自己的游戏

经典的2d游戏编程:创建让人爱不释手的动作游戏和平台游戏

android图形和音频:让游戏看起来和听起来都如此美妙

游戏机制:充分利用碰撞检测、物理知识和精灵动画

3d游戏编程:以简单的方式在游戏中添加复杂的3d

最后一步:发布游戏,收到崩溃报告,帮助用户解决问题

《android4游戏编程入门经典》详尽地介绍了移动游戏所需的一切基础知识,书中讲解的知识和技能将帮助你成为一名出色的移动游戏开发者。

目录

《android4游戏编程入门经典》

第1章android,后起之秀1

1.1android简介1

1.2版本分裂3

1.3谷歌的角色3

1.3.1android开源项目3

1.3.2androidmarket4

1.3.3挑战赛、设备播种计划和谷歌i/o4

1.4android的功能和体系结构5

1.4.1内核6

1.4.2运行库和dalvik虚拟机6

1.4.3系统库7

1.4.4应用程序框架8

1.5软件开发工具包8

1.6开发人员社区9

1.7设备,设备,设备9

1.7.1硬件9

1.7.2设备的范围10

1.8所有设备之间的兼容性15

1.9不同的手机游戏15

1.9.1人手一台游戏机16

1.9.2随时上网16

1.9.3普通用户与游戏迷17

1.9.4市场很大,开发人员很少17

1.10小结18

第2章从androidsdk开始19

2.1搭建开发环境19

2.1.1安装jdk20

2.1.2安装androidsdk20

2.1.3安装eclipse21

2.1.4安装adteclipse插件22

2.1.5eclipse快速浏览23

2.1.6一些实用的eclipse快捷键24

2.2android环境下的helloworld25

2.2.1创建项目25

2.2.2进一步分析项目26

2.2.3编写应用程序代码27

2.3运行和调试android应用程序29

2.3.1连接设备29

2.3.2创建一个android虚拟设备29

2.3.3运行应用程序30

2.3.4调试应用程序32

2.3.5logcat和ddms34

2.3.6使用adb36

2.4小结37

第3章游戏开发基础39

3.1游戏类型39

3.1.1休闲游戏40

3.1.2益智游戏41

3.1.3动作和街机游戏42

3.1.4塔防游戏44

3.1.5创新45

3.2游戏设计:笔比代码更强大46

3.2.1游戏的核心机制46

3.2.2一个故事和一种艺术风格47

3.2.3画面和切换48

3.3代码:具体细节52

3.3.1应用程序和窗口管理52

3.3.2输入53

3.3.3文件i/o56

3.3.4音频57

3.3.5图形60

3.3.6游戏框架69

3.4小结75

第4章面向游戏开发人员的android77

4.1定义一个android应用程序:清单文件77

4.1.1[manifest]元素78

4.1.2[application]元素79

4.1.3[activity]元素80

4.1.4[uses-permission]元素82

4.1.5[uses-feature]元素83

4.1.6[uses-sdk]元素84

4.1.710个简单步骤建立android游戏项目84

4.1.8市场过滤器86

4.1.9定义游戏图标87

4.2androidapi基础87

4.2.1创建测试项目88

4.2.2活动的生命周期91

4.2.3处理输入设备96

4.2.4文件处理110

4.2.5音频编程116

4.2.6播放音效116

4.2.7音乐流119

4.2.8基本图形编程122

4.3最佳实践143

4.4小结144

第5章android游戏开发框架145

5.1制定计划145

5.2androidfileio类146

5.3androidaudio、androidsound和androidmusic147

5.4androidinput和accelerometer-handler152

5.4.1accelerometerhandler:手机哪一面朝上152

5.4.2compasshandler153

5.4.3pool类:重用相当有用154

5.4.4keyboardhandler156

5.4.5触摸处理程序160

5.4.6androidinput:优秀的协调者167

5.5androidgraphics和androidpixmap169

5.5.1处理不同屏幕大小和分辨率的问题169

5.5.2androidpixmap:人物的像素174

5.5.3androidgraphics:满足绘图需求174

5.5.4androidfastrenderview178

5.6androidgame:合并所有内容180

5.7小结184

第6章mr.nom入侵android185

6.1创建资源185

6.2建立项目187

6.3mrnomgame:主要活动187

6.3.1资源:便捷的资源存储188

6.3.2设置:跟踪用户的选项设置和高分榜189

6.3.3loadingscreen:从磁盘获取资源191

6.4主菜单画面192

6.5helpscreen类195

6.6高分榜画面显示197

6.6.1渲染数字198

6.6.2画面的实现199

6.7抽象201

6.7.1抽象mr.nom的世界:模型、视图、控制器201

6.7.2gamescreen类211

6.8小结218

第7章opengles介绍219

7.1opengles概述以及关注它的原因219

7.1.1编程模型:一个比喻220

7.1.2投影221

7.1.3规范化设备空间和视口223

7.1.4矩阵223

7.1.5渲染管道224

7.2开始之前225

7.3glsurfaceview:从2008年开始,事情变得简单了225

7.4glgame:实现游戏接口228

7.5绘制一个红色的三角形235

7.5.1定义视口235

7.5.2定义投影矩阵235

7.5.3指定三角形238

7.5.4综合示例241

7.6指定每个顶点的颜色243

7.7纹理映射:轻松地创建壁纸246

7.7.1纹理坐标247

7.7.2上传位图248

7.7.3纹理过滤249

7.7.4释放纹理250

7.7.5有用的代码片段251

7.7.6启用纹理251

7.7.7综合示例251

7.7.8texture类253

7.8索引顶点:重用是有好处的255

7.8.1代码整合256

7.8.2vertices类258

7.9半透明混合处理260

7.10更多图元:点、线、条和扇263

7.112d变换:操作模型视图矩阵264

7.11.1世界空间和模型空间264

7.11.2再次讨论矩阵265

7.11.3第一个使用平移的示例266

7.11.4更多的变换270

7.12性能优化273

7.12.1测量帧率273

7.12.2android1.5平台下hero的奇特案例275

7.12.3使opengles渲染如此慢的原因275

7.12.4移除不必要的状态改变276

7.12.5减小纹理大小意味着需要获取更少的像素278

7.12.6减少opengles/jni方法的调用278

7.12.7绑定顶点的概念279

7.12.8写在结束之前282

7.13小结283

第8章2d游戏编程技巧285

8.1写在开始285

8.2向量286

8.2.1使用向量286

8.2.2一点三角学的知识288

8.2.3实现一个向量类289

8.2.4一个简单的用法示例292

8.32d物理定律浅析296

8.3.1牛顿和欧拉,永远的好朋友296

8.3.2力和质量297

8.3.3理论上的运动298

8.3.4运动的实现299

8.42d碰撞检测和对象表示302

8.4.1边界形状303

8.4.2构造边界形状304

8.4.3游戏对象的属性306

8.4.4宽阶段和窄阶段碰撞检测307

8.4.5一个详细的示例313

8.52d照相机324

8.5.1camera2d类327

8.5.2示例328

8.6纹理图集329

8.7纹理区域、精灵和批处理:隐藏opengles334

8.7.1textureregion类334

8.7.2spritebatcher类335

8.8精灵动画343

8.8.1animation类344

8.8.2示例345

8.9小结348

第9章superjumper:一个2dopengles游戏351

9.1核心游戏机制351

9.2背景故事和艺术风格352

9.3画面和切换352

9.4定义游戏世界353

9.5创建资源355

9.5.1ui元素355

9.5.2使用点阵字体处理文本356

9.5.3游戏元素358

9.5.4用于救援的纹理图集359

9.5.5音乐与音效360

9.6实现superjumper361

9.6.1assets类361

9.6.2settings类364

9.6.3主活动366

9.6.4font类367

9.6.5glscreen369

9.6.6主菜单画面369

9.6.7帮助画面372

9.6.8高分画面374

9.6.9模拟类377

9.6.10游戏画面390

9.6.11worldrenderer类397

9.7是否需要优化401

9.8小结402

第10章opengles:进入3d世界403

10.1准备工作403

10.23d中的顶点404

10.2.1vertices3:存储3d空间位置404

10.2.2示例406

10.3透视投影:越近则越大409

10.4z-buffer:化混乱为有序411

10.4.1完善上一个例子412

10.4.2混合:身后空无一物413

10.4.3z-buffer精度与z-fighting416

10.5定义3d网格417

10.5.1立方体:3d中的“helloworld”417

10.5.2一个示例419

10.6矩阵和变换422

10.6.1矩阵堆栈423

10.6.2用矩阵堆栈实现分层系统425

10.6.3木箱太阳系的简单实例425

10.7小结433

第11章3d编程技巧435

11.1准备工作435

11.23d中的向量436

11.3opengles中的光照440

11.3.1光照的工作机制440

11.3.2光源441

11.3.3材质442

11.3.4opengles中如何对光照过程进行运算:顶点法线442

11.3.5实践443

11.3.6关于opengles中光照应用的一些建议456

11.4材质变换(mipmapping)456

11.5简单的照相机460

11.5.1第一人称照相机或欧拉照相机460

11.5.2一个欧拉照相机的示例463

11.5.3跟随照相机468

11.6加载模块470

11.6.1wavefrontobj格式470

11.6.2obj加载器的实现471

11.6.3使用obj加载器475

11.6.4关于加载模型的一些建议475

11.73d中的一些物理知识476

11.8碰撞检测与3d中的对象表达法477

11.8.13d中的边界形状477

11.8.2边界球重叠测试477

11.8.3gameobject3d与dynamic-gameobject3d478

11.9小结479

第12章droidinvaders游戏481

12.1游戏的核心机制481

12.2游戏的故事背景与艺术风格483

12.3屏幕与场景切换483

12.4定义游戏世界484

12.5创建资源485

12.5.1用户界面的资源485

12.5.2游戏资源486

12.5.3音效与音乐488

12.6开始编写代码488

12.7assets类489

12.8settings类492

12.9主活动493

12.10主菜单494

12.11游戏设置画面496

12.12模拟类499

12.12.1shield类499

12.12.2shot类500

12.12.3ship类500

12.12.4invader类502

12.12.5world类505

12.13gamescreen类510

12.14worldrender类516

12.15游戏优化521

12.16小结522

第13章发布游戏523

13.1关于测试523

13.2成为注册开发人员524

13.3给游戏的apk包签名524

13.4将游戏发布至market527

13.4.1上传资源527

13.4.2产品详情528

13.4.3发布选项528

13.4.4发布529

13.4.5市场推广529

13.5开发人员控制台529

13.6小结530

第14章进阶内容531

14.1社交网络531

14.2位置识别531

14.3多玩家功能532

14.4opengles2.0以及更多内容532

14.5框架及引擎532

14.6网络资源534

14.7结束语534

图书信息来源:中国互动出版

相关推荐