涵盖Android游戏发的核心技术,如前台渲染、交互式通信、数据存储和传感器、网络编程、游戏背后的数学与物理、游戏地图发、游戏发小秘技、JBox2D物理引擎、3D应用发等。 7大Android游戏发实战综合案例,包括现在流行的多种游戏类型,如滚屏动作类游戏——坦克大战、网络游戏发——风火三国网络对战游戏、物理传感器游戏——哇!重力球、塔防游戏——炫彩塔防、策略游戏——大富翁、休闲类游戏——切切乐、休闲类游戏——3D冰球,每种游戏类型的案例发都有其独特的地方。
售 价:¥
纸质售价:¥68.30购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
内容提要
前言
▶▶第1章
第1章 Android平台简介
1.1 Android的来龙去脉
1.2 掀起Android的盖头来
1.2.1 选择Android的理由
1.2.2 Android的应用程序框架
1.3 Android开发环境的搭建
1.3.1 Android SDK的下载
1.3.2 Android SDK的配置
1.3.3 创建并启动模拟器
1.3.4 第一个Android程序
1.3.5 Android程序的监控与调试
1.4 已有Android项目的导入与运行
1.4.1 项目的导入
1.4.2 项目的运行
1.5 小结
▶▶第2章
第2章 Android游戏开发中的前台渲染
2.1 创建Android用户界面
2.1.1 布局管理
2.1.2 常用控件及其事件处理
2.2 图形与动画在Android中的实现
2.2.1 简单图形的绘制
说明
2.2.2 贴图的艺术
2.2.3 剪裁功能
说明
说明
2.2.4 自定义动画的播放
2.3 Android平台下的多媒体开发
2.3.1 音频的播放
2.3.2 视频的播放
2.3.3 Camera图像采集
2.4 小结
▶▶第3章
第3章 Android游戏开发中的交互式通信
3.1 Android应用程序的基本组件
3.1.1 Activity组件
3.1.2 Service组件
3.1.3 Broadcast Receiver组件
3.1.4 ContentProvider组件
3.1.5 AndroidManifest.xml文件简介
3.2 应用程序的内部通信
3.2.1 消息的处理者——Handler类简介
3.2.2 使用Handler进行内部通信
说明
3.3 应用程序组件之间的通信
3.3.1 Intent类简介
3.3.2 应用程序组件——IntentFilter类简介
3.3.3 示例1:与Android系统组件通信
说明
3.3.4 示例2:应用程序组件间通信示例Activity部分的开发
说明
说明
3.3.5 示例3:应用程序组件间通信示例Service部分的开发
说明
说明
3.4 小结
▶▶第4章
第4章 Android游戏开发中的数据存储和传感器
4.1 在Android平台上实现数据存储
4.1.1 私有文件夹文件的写入与读取
说明
说明
4.1.2 读取Resources和Assets中的文件
说明
4.1.3 轻量级数据库SQLite简介
说明
说明
4.1.4 SQLite的使用示例
说明
4.1.5 数据共享者——ContentProvider的使用
说明
4.1.6 简单的数据存储——Preferences的使用
说明
说明
4.2 Android平台下传感器应用的开发
4.2.1 基本开发步骤
说明
说明
说明
4.2.2 光传感器
说明
4.2.3 温度传感器
说明
说明
说明
4.2.4 接近传感器
说明
说明
说明
4.2.5 加速度传感器
说明
说明
说明
说明
4.2.6 磁场传感器
说明
说明
说明
4.2.7 姿态传感器
说明
说明
说明
说明
说明
说明
4.2.8 陀螺仪传感器
说明
说明
说明
4.2.9 加速度传感器综合案例
说明
4.2.10 传感器的坐标轴问题
说明
说明
4.3 小结
▶▶第5章
第5章 Android游戏开发中的网络编程
5.1 基于Socket套接字的网络编程
5.2 基于HTTP的网络编程
5.2.1 通过URL获取网络资源
5.2.2 在Android中解析XML
5.3 Android平台下的百度地图
5.3.1 准备工作
5.3.2 简单的案例
说明
5.4 蓝牙通信
5.4.1 基础知识
5.4.2 简单的案例
5.5 简单的多用户并发网络游戏编程架构
5.5.1 基本知识
说明
5.5.2 双人联网操控飞机案例
说明
说明
说明
说明
说明
5.6 小结
▶▶第6章
第6章 不一样的游戏,一样的精彩应用
6.1 射击类游戏
6.1.1 游戏玩法
6.1.2 视觉效果
6.1.3 游戏内容设计
6.2 竞速类游戏
6.2.1 游戏玩法
6.2.2 视觉效果
6.2.3 游戏内容设计
6.3 益智类游戏
6.3.1 游戏玩法
6.3.2 视觉效果
6.3.3 游戏内容设计
6.4 角色扮演游戏
6.4.1 游戏玩法
6.4.2 视觉效果
6.4.3 游戏内容设计
6.5 闯关动作类游戏
6.5.1 游戏玩法
6.5.2 视觉效果
6.5.3 游戏内容设计
6.6 冒险游戏
6.6.1 游戏玩法
6.6.2 视觉效果
6.6.3 游戏内容设计
6.7 策略游戏
6.7.1 游戏玩法
6.7.2 视觉效果
6.7.3 游戏内容设计
6.8 养成类游戏
6.8.1 游戏玩法
6.8.2 视觉效果
6.8.3 游戏内容设计
6.9 经营类游戏
6.9.1 游戏玩法
6.9.2 视觉效果
6.9.3 游戏内容设计
6.10 体育类游戏
6.10.1 游戏玩法
6.10.2 视觉效果
6.10.3 游戏内容设计
6.11 小结
▶▶第7章
第7章 游戏背后的数学与物理
7.1 编程中经常用到的数理知识
7.1.1 数学方面
7.1.2 物理方面
7.2 碰撞检测技术
7.2.1 碰撞检测技术基础
说明
7.2.2 游戏中实体对象之间的碰撞检测
7.2.3 游戏实体对象与环境之间的碰撞检测
说明
7.2.4 穿透效应问题
7.3 必知必会的计算几何
7.3.1 GeoLib库中常用基础类的介绍
说明
7.3.2 无孔多边形的相关知识
7.3.3 有孔多边形的相关知识
7.3.4 有孔多边形案例
说明
说明
7.3.5 显示凸壳案例
说明
7.3.6 多边形切分案例
说明
说明
说明
7.3.7 显示包围框以及多边形的矩形组合案例
说明
7.3.8 旋转与凸子区域案例
说明
7.3.9 平滑与计算最短距离案例
说明
说明
7.3.10 多边形缩放与不重叠案例
说明
7.3.11 求多边形对称案例
说明
7.3.12 多边形集合运算案例
说明
7.4 小结
▶▶第8章
第8章 游戏地图必知必会
8.1 两种不同单元形状的地图
8.1.1 正方形单元地图
说明
8.1.2 正方形单元地图案例
说明
说明
8.1.3 正六边形单元地图
说明
说明
8.1.4 正六边形单元地图案例
说明
8.1.5 正方形单元和正六边形单元地图的比较
8.2 正六边形单元地图的路径搜索
8.2.1 路径搜索示例基本框架的搭建
8.2.2 深度优先路径搜索DFS
8.2.3 广度优先路径搜索BFS
8.2.4 路径搜索算法——Dijkstra
8.2.5 用A*算法优化算法
说明
8.3 正六边形单元地图的网格定位
8.3.1 基本知识
8.3.2 简单的案例
说明
8.4 地图编辑器与关卡设计
8.4.1 关卡地图的重要性
8.4.2 图片分割界面的实现
说明
说明
8.4.3 地图设计界面的实现
说明
说明
说明
说明
8.5 多分辨率屏幕的自适应
8.5.1 非等比例缩放
说明
说明
8.5.2 非等比例缩放案例
说明
说明
说明
说明
说明
8.5.3 等比例缩放并剪裁
说明
说明
8.5.4 等比例缩放并剪裁案例
说明
说明
8.5.5 等比例缩放并留白
说明
说明
8.5.6 等比例缩放并留白案例
说明
8.6 小结
▶▶第9章
第9章 游戏开发小秘技
9.1有限状态机
9.1.1 何为有限状态机
9.1.2 有限状态机的简单实现
说明
说明
9.1.3 有限状态机的OO实现
9.2 游戏中的模糊逻辑
9.2.1 模糊的才是真实的
说明
9.2.2 如何在Android中将游戏模糊化
9.3 游戏的基本优化技巧
9.3.1 代码上的小艺术
9.3.2 Android中的查找表技术
9.3.3 游戏的感觉和性能问题
9.4 多点触控技术的使用
9.4.1 基本知识
9.4.2 一个简单的案例
说明
说明
9.5 小结
▶▶第10章
第10章 JBox2D物理引擎
10.1 物理引擎很重要
10.1.1 什么是物理引擎
10.1.2 常见的物理引擎
10.2 2D的王者JBox2D
10.2.1 基本的物理学概念
说明
10.2.2 JBox2D中常用类的介绍
说明
10.3 木块金字塔被撞击案例
10.3.1 案例运行效果
10.3.2 案例的基本框架结构
10.3.3 常量类——Constant
说明
10.3.4 物体类——MyBody
说明
10.3.5 圆形物体类——MyCircleColor
说明
10.3.6 矩形物体类——MyRectColor
说明
10.3.7 生成物理形状工具类——Box2DUtil
说明
10.3.8 主控制类——MyBox2dActivity
说明
10.3.9 显示界面类——GameView
10.3.10 绘制线程类——DrawThread
说明
10.4 简易打砖块案例
10.4.1 案例运行效果
说明
10.4.2 需要了解的类
说明
说明
10.4.3 碰撞监听器——MyContactListener类
10.4.4 碰撞检测工具类——BodySearchUtil
说明
10.4.5 绘制线程类——DrawThread
说明
10.5 物体无碰撞下落案例
10.5.1 案例运行效果
说明
10.5.2 碰撞过滤器——ContactFilter类
10.5.3 碰撞过滤类的开发
说明
10.5.4 多边形刚体类——MyPolygonColor
10.5.5 生成刚体性状的工具类——Box2DUtil
10.5.6 主控制类——MyBox2dActivity
10.5.7 显示界面类——GameView
10.6 关节——Joint
10.6.1 关节定义——JointDef类
10.6.2 距离关节描述——DistanceJointDef类
10.6.3 距离关节案例——小球下摆
说明
10.6.4 旋转关节描述——RevoluteJointDef类
说明
10.6.5 旋转关节案例——转动的风扇与跷跷板
说明
10.6.6 鼠标关节描述——MouseJointDef类
10.6.7 鼠标关节案例——物体下落
说明
说明
说明
10.6.8 移动关节描述——PrismaticJointDef类
10.6.9 移动关节案例——定向移动的木块
说明
说明
说明
说明
10.6.10 齿轮关节描述——GearJointDef类
10.6.11 齿轮关节案例——转动的齿轮
说明
说明
说明
10.6.12 焊接关节描述——WeldJointDef类
10.6.13 焊接关节案例——有弹性的木板
说明
说明
10.6.14 滑轮关节描述——PulleyJointDef类
10.6.15 滑轮关节案例——移动的木块
说明
说明
说明
10.6.16 车轮关节描述——WheelJointDef类
10.6.17 车轮关节案例——运动的小车
说明
说明
10.6.18 绳索关节描述——RopeJointDef类
10.6.19 绳索关节案例——掉落的糖果
说明
说明
说明
说明
说明
说明
说明
10.7 模拟传送带案例
10.7.1 案例运行效果
说明
10.7.2 碰撞监听器——MyContactListener类
10.7.3 主控制类——MyBox2DActivity
10.7.4 线程类——DrawThread
10.8 光线投射案例
10.8.1 案例运行效果
说明
10.8.2 RayCastInput类与RayCastOutput类
10.8.3 光线检测类——MyRayCast
10.8.4 主控制类——MyBox2dActivity
10.8.5 显示界面类——GameView
说明
10.9 模拟爆炸案例
10.9.1 案例运行效果
说明
10.9.2 光线投射回调接口——RayCastCallback
10.9.3 自身的光线投射回调类——RayCastClosestCallback
说明
10.9.4 主控制类——MyBox2dActivity
说明
10.10 流体模拟
10.10.1 流体模拟的相关知识
10.10.2 波浪制造机案例
说明
说明
10.10.3 软体案例
说明
10.10.4 固体案例
说明
10.10.5 粉尘案例
说明
10.11 小结
▶▶第11章
第11章 3D应用开发基础
11.1 OpenGL及OpenGL ES简介
说明
说明
说明
11.2 3D基本知识
说明
说明
说明
11.3 旧约——OpenGL ES 1.x
11.3.1 OpenGLES1.x的渲染管线
说明
说明
11.3.2 不同的绘制方式
说明
11.3.3 索引法绘制案例
说明
说明
说明
说明
说明
11.3.4 顶点法绘制案例
说明
11.3.5 正交投影
说明
说明
11.3.6 透视投影
说明
说明
说明
11.3.7 两种投影模式的案例
说明
说明
11.3.8 光照的3种组成元素
说明
说明
说明
说明
说明
11.3.9 定向光与定位光
11.3.10 点法向量和面法向量
说明
说明
11.3.11 材质
说明
11.3.12 两种光源的案例
说明
说明
说明
说明
11.3.13 纹理映射
说明
11.3.14 纹理映射案例
说明
11.4 新约——OpenGL ES 2.0
说明
11.4.1 OpenGLES2.0的渲染管线
说明
说明
11.4.2 初识OpenGL ES 2.0应用程序
说明
说明
说明
说明
11.4.3 着色语言
说明
11.4.4 正交投影
说明
说明
说明
11.4.5 透视投影
说明
说明
说明
11.4.6 三种光照通道
说明
11.4.7 定位光
说明
11.4.8 定向光
说明
11.4.9 纹理映射
说明
说明
说明
说明
说明
说明
11.5 利用OpenGL ES 2.0绘制流体
11.5.1 流体绘制的策略
说明
说明
11.5.2 一个简单的案例
说明
说明
说明
说明
说明
说明
11.5.3 流体计算流水线回顾
11.6 小结
▶▶第12章
第12章 滚屏动作类游戏——坦克大战
12.1 游戏的背景及功能概述
12.1.1背景概述
12.1.2 功能简介
12.2 游戏的策划及准备工作
12.2.1 游戏的策划
12.2.2 安卓平台下游戏开发的准备工作
说明
12.3 游戏的架构
12.3.1 程序结构的简要介绍
12.3.2 服务器端的简要介绍
12.4 服务器端的开发
12.4.1 数据类的开发
说明
说明
12.4.2 服务线程的开发
说明
说明
12.4.3 碰撞检测类的开发
说明
12.4.4 动作执行类的开发
说明
说明
12.4.5 状态更新类的开发
说明
12.5 Android端的开发
12.5.1 数据类的开发
12.5.2 TankActivity类的开发
说明
12.5.3 SurfaceView类的开发
说明
12.5.4 绘制线程类的开发
说明
12.5.5 菜单类的开发
12.5.6 杂项类的开发
说明
12.5.7 物体绘制类的开发
说明
说明
12.6 辅助工具类
12.6.1 图片处理工具类的开发
说明
12.6.2 摇杆工具类的开发
12.6.3 数据接收工具类的开发
12.6.4 数据发送工具类的开发
12.7 地图设计器
说明
12.8 游戏的优化及改进
▶▶第13章
第13章 网络游戏开发——风火三国网络对战游戏
13.1 游戏背景及功能概述
13.1.1 背景概述
13.1.2 功能简介
13.2 游戏策划及准备工作
13.2.1 游戏的策划
13.2.2 Android平台下游戏开发的准备工作
13.3 游戏的框架
13.3.1 各个类的简要介绍
13.3.2 游戏的框架简介
13.4 共有类SanGuoActivity的实现
13.5 辅助界面相关类的实现
13.5.1 欢迎界面类
说明
13.5.2 主菜单界面类
说明
13.6 游戏界面相关类的实现
13.6.1 游戏界面框架
13.6.2 界面刷帧线程类
说明
13.6.3 牌图分割类
13.6.4 牌的控制类
13.6.5 出牌规则类
13.7 客户端代理线程
13.8 服务器相关类
13.8.1 服务器主类
13.8.2 服务器代理线程
说明
13.8.3 发牌类
13.8.4 初始化血点类
13.8.5 判断装备牌类
13.8.6 管理玩家距离类
13.9 小结
▶▶第14章
第14章 物理传感器游戏——哇!重力球
14.1 游戏背景及功能概述
14.1.1 游戏背景概述
14.1.2游戏功能简介
14.2 游戏的策划和准备工作
14.2.1 游戏的策划
14.2.2 游戏的准备工作
14.3 游戏的架构
14.3.1 游戏的总体架构
14.3.2 游戏的类架构
14.4 主控制类——TableBallActivity类的开发
说明
说明
14.5 界面相关类
14.5.1 主界面类MainMenuView
说明
说明
14.5.2 模式选择界面类PatternChooseView
说明
14.5.3 选关界面LevelChooseView
说明
说明
说明
14.5.4 历史记录界面HistoryView
说明
说明
14.5.5 设置界面SettingsView
说明
说明
14.6 工具辅助类
14.6.1 数据库类DBUtil
说明
说明
说明
说明
说明
说明
说明
说明
14.6.2 声音工具类SoundUtil
说明
14.6.3 图片工具类PicLoadUtil
说明
说明
说明
14.6.4 时间相关类
说明
14.7 刚体类
14.7.1 刚体父类MyBody
14.7.2 球洞类Hole
14.7.3 变化的洞FlashHole类
14.7.4 创建刚体的工具类
说明
14.8 游戏界面相关类
14.8.1 游戏界面GameView
说明
14.8.2 碰撞响应类CollisionAction
说明
说明
说明
14.8.3 游戏界面绘画线程DrawThread
说明
14.9 游戏的优化与改进
▶▶第15章
第15章 塔防游戏——炫彩塔防
15.1 游戏背景及功能概述
15.1.1 游戏背景概述
15.1.2 游戏功能介绍
15.2 游戏的策划及准备工作
15.2.1 游戏的策划
15.2.2 Android平台下游戏开发的准备工作
15.3 游戏的架构
15.3.1 各个类的简要介绍
15.3.2 游戏框架简介
说明
15.4 游戏辅助界面
15.4.1 主菜单界面
说明
15.4.2 游戏关卡界面
说明
说明
15.4.3 关于游戏界面
说明
说明
15.5 游戏算法及主界面相关类
15.5.1 游戏核心算法类——Game
15.5.2 游戏界面相关类
说明
说明
说明
说明
说明
说明
说明
15.5.3 怪物类——Monster_Square
说明
说明
说明
说明
说明
说明
15.5.4 炮塔类——Tower_Shell
说明
说明
说明
说明
15.5.5 子弹相关类
说明
说明
15.5.6 地图功能类——Blood_Up
15.5.7 怪物生成线程——CreateMonster
15.5.8 爆炸类——Utils
说明
说明
15.5.9 屏幕自适应相关类
说明
说明
说明
说明
说明
15.6 游戏的优化及改进
▶▶第16章
第16章 策略游戏——大富翁
16.1 游戏的背景及功能概述
16.1.1 背景概述
16.1.2 功能简介
16.2 游戏的策划及准备工作
16.2.1 游戏的策划
16.2.2 安卓平台下游戏开发的准备工作
说明
16.3 游戏的架构
16.3.1 程序结构的简要介绍
16.3.2 游戏各个类的简要介绍
16.4 地图设计器的开发
16.4.1 地图设计器的开发设计思路
16.4.2 地图设计器的框架介绍
16.4.3 底层地图设计器的开发步骤
说明
说明
说明
16.5 Activity和游戏工具类的开发
16.5.1 主控制类——ZActivity的开发
说明
16.5.2 常量工具类ConstantUtil的开发
说明
16.5.3 日期管理类DateUtil的开发
16.5.4 图片管理类PicManager的开发
16.6 数据存取模块的开发
16.6.1 地图层信息的封装类
16.6.2 数据存取相关类的介绍
说明
说明
16.7 人物角色模块的开发
16.7.1 Figure类的代码框架
说明
16.7.2 Dice类的代码框架
说明
16.7.3 FigureGoThread类的代码框架
说明
说明
说明
16.8 表示层界面模块的开发
16.8.1 游戏界面GameView的框架介绍
说明
说明
16.8.2 游戏界面绘制方法onDraw的介绍
说明
16.8.3 游戏界面屏幕监听方法onTouch的介绍
说明
16.8.4 后台线程GameViewThread的开发
说明
16.9 地图中可遇实体模块的开发
16.9.1 绘制类——MyDrawable的开发
16.9.2 抽象类——MyMeetableDrawable的开发
16.9.3 土地类——GroundDrawable类
16.9.4 可遇实体对象的调用流程
说明
16.10 管理面板模块的开发
说明
16.11 游戏的优化及改进
▶▶第17章
第17章 休闲类游戏——切切乐
17.1 游戏的背景及功能概述
17.1.1 背景描述
17.1.2 功能介绍
17.2 游戏的策划及准备工作
17.2.1 游戏的策划
17.2.2 手机平台下游戏的准备工作
17.3 游戏的架构
17.3.1 各个类的简要介绍
17.3.2 游戏框架简介
说明
17.4 显示界面类
17.5 辅助工具类
17.5.1 工具类
说明
17.5.2 辅助类
说明
说明
说明
说明
说明
说明
说明
17.6 绘制相关类
17.6.1 BNObject绘制类的开发
说明
说明
说明
17.6.2 BNPolyObject绘制类的开发
说明
说明
17.7 雪花粒子系统的开发
17.7.1 基本原理
17.7.2 开发步骤
说明
17.8 本游戏中的着色器
说明
说明
说明
说明
说明
说明
17.9 游戏的优化及改进
17.10 小结
▶▶第18章
第18章 休闲类游戏——3D冰球
18.1 游戏的背景及功能概述
18.1.1背景描述
18.1.2 功能介绍
18.2 游戏的策划及准备工作
18.2.1 游戏的策划
18.2.2 手机平台下游戏的准备工作
18.3 游戏的架构
18.3.1 各个类的简要介绍
18.3.2 游戏框架简介
说明
18.4 显示界面类
18.4.1 显示界面MySurfaceView类
18.4.2 加载界面LoadingView类
18.4.3 主界面MainView类
18.4.4 转场界面TransitionView类
18.4.5 游戏界面GameView类
说明
说明
18.5 辅助工具类
18.5.1工具类
说明
说明
说明
18.5.2 辅助类
说明
说明
说明
18.5.3 线程类
说明
18.6 绘制相关类
18.6.1 3D模型绘制类的开发
说明
18.6.2 BN3DObject绘制类的开发
说明
18.7 粒子系统的开发
18.7.1 基本原理
18.7.2 开发步骤
说明
说明
说明
18.8 本游戏中的着色器
说明
说明
说明
18.9 游戏的优化及改进
18.10 小结
附录
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜