作 者:(美)席尔瓦 著 杨丰盛,谢明辉,蔡达毅 译
定 价:39
出 版 社:清华大学出版社
出版日期:2013年01月01日
页 数:243
装 帧:平装
ISBN:9787302307440
●第1章 欢迎来到Android世界
1.1 配置开发机
1.2 下载并安装SDK
1.3 配置Eclipse
1.4 安装原生开发工具包
1.4.1 安装NDK
1.4.2 安装Cygwin
1.5 创建Android模拟器
1.6 配置真实设备
1.7 本章小结
第2章 针对手机或平板电脑的游戏技巧
2.1 在Android中编译原生代码
2.1.1 创建支持原生代码的Android项目
2.1.2 应用程序的体系结构
2.2 编译共享库
2.3 调试模拟器
2.4 Java对C/CH事件处理的封装
2.4.1 独立处理音频
2.4.2 级联视频事件
2.5 多点触摸
2.5.1 ltiTouchGesture
2.5 2 ltiTouchScreen
2.5.3 TestActivity
2.6 蓝牙控制器(Zeemote)
2.7 本章小结
第3章 更多OpenGL与JNI游戏技巧
3.1 移动设备的动力
3.2 Java方式的OpenGL
3.2.1 创建项目
3.2.2 Java版本的主Activity
3.2.3 surface视图
3.2.4 GL线程
3.2.5 立方体渲染器
3.2.6 Cube类
3.3 原生方式的OpenGL
3.3.1 主ActiVity
3.3.2 原生接口类
3.3.3 修改原示例
3.3.4 原生立方体渲染器
3.3.5 原生立方体类
3.3.6 编译和运行示例
3.4 通过OpenGLES混合模式缩放视频缓冲区
3.4.1 为什么使用混合缩放
3.4.2 初始化surface
3.4.3 绘制到纹理
3.4.4 当图像的尺寸不是2的幂时会发生什么
3.5 本章小结
第4章 OpenGLES2.0的高效图形
4.1 0penGLES2.0与Android
4.1.1 着色器
4.1.2 GLSL
4.1.3 剖析着色器
4.2 在Android中调用OpenGLES2.0
4.3 二十面体项目
4.3.1 定义形状
4.3.2 处理项目
4.3.3 原生二十面体
4.4 添加“滑动”和多点触摸的“捏”缩放功能
4.5 编译与运行
4.6 本章小节
第5章 3D射击游戏:Doom
5.1 组合使用Java/C,功能无极限
5.2 将Doom移植到移动设备
5.3 Doom游戏的体系结构
5.4 Java层的主Activity
5.4.1 创建处理程序
5.4.2 游戏布局
5.4.3 菜单和选择项处理程序
5.4.4 按键和触摸事件处理程序
5.4.5 原生回调处理程序
5.4.6 导航控件
5.5 独立处理音频格式
5.6 原生接口类
5.6.1 回调监听器
5.6.2 原生方法
5.6.3 C到Java的回调
5.7 原生层
5.7.1 原生方法的实现
5.7.2 对原始游戏进行修改
5.8 使用NDK编译Doom
5.9 在模拟器中测试Doom
5.10 本章小结
第6章 3D射击游戏:Quake
6.1 一些关于Quake的术语
6.2 代码重用的威力:Quake中的新代码少于500行
6.3 软件渲染是合理解决方案吗
6.4 Quake的Android架构
6.4.1 Java OpenGL渲染器架构
6.4.2 独立处理音频格式
6.4.3 处理键盘事件
6.4.4 处理触摸事件
6.4.5 游戏的启动Activity
6.5 原生Quake引擎必需的改动
6,5.1 视频处理程序的改动
6.5.2 处理X轴旋转(pitch)和Y轴旋转(yaw)
6.5.3 处理前进和横向运动
6.5.4 音频处理程序的改动
6.5.5 修复游戏循环
6.6 在设备上运行Quake
6.7 本章小结
第7章 3D射击游戏:QuakeII
7.1 代码回顾
7.2 逃离Java堆的束缚
7.3 让QuakeⅡ引擎在Android中工作
7.3.1 代码的可重用性
7.3.2 当发生致命错误时如何处理
7.3.3 0penGL立即模式问题
7.3.4 视频处理程序
7.4 使用NDK编译QuakeⅡ
7.5 在设备或模拟器中运行游戏
7.6 QuakeⅡ在多种设备中的性能表现
7.7 本章小结
附录 部署和编译技巧
席尔瓦编著的《Android 4 游戏高级编程》将帮助你充分利用近期新的AndroidSDK4.0的强大功能,构建更加成熟、令人着迷的游戏应用。最重要的是,本书向你展示了如何将类似Doom、QuakeⅠ和Ⅱ这样的原生PC游戏以最少的精力移植到近期新的Android平台。
(美)席尔瓦 著 杨丰盛,谢明辉,蔡达毅 译
席尔瓦,出生于厄瓜多尔基多。他在1994年获得厄瓜多尔军队理工学院系统分析师学位。同年,他作为交换生来到美国,在田纳西州州立大学攻读计算机科学硕士学位。毕业后,他加入了IBM WebAhead实验室。他的兴趣包括网格计算、神经网络和人工智能,他还拥有许多IT认证,包括Oracle认证专家(Oracle Certified Professional,OCP)、微软认证解决方案开发专家(Microsoft Certified Solution Developer,MCSD)和微软认证专家(Microsoft Certified Professional,MCP)。他在IBM developerWo等
第2章介绍的一些针对Android的基本游戏开发技术为我们提供了非常重要的引导,包括处理音频/视频、I/O事件和蓝牙控制器。现在,我们将进行更深入的学习。
在本章中,你将学习在Java和C中混合OpenGL代码这一绝技。这是在Java代码中重用大量OpenGL C代码的关键一步,即使用每种语言的很好特性,以便优选限度地节约时间和成本。
每个游戏开发人员都知道OpenGL是高级游戏开发的灵魂。你不可能找到任何一款没有使用该API编写的强大游戏,因为它有硬件加速的优势,这比任何一种软件渲染器都完美。
对于新手来说,OpenGL的复杂性可能会让你望而却步。但你不必作为Op等