第1章 简介
1.1 iPhone游戏程序设计
1.2 欢迎进入Apple世界——iPhone现象
1.3 iPhone家族——规范
1.4 开始之旅
1.4.1 下载书中的示例
1.4.2 反馈意见
第2章 基础知识——工作模式
2.1 iOSDev Center
2.2 下载并安装Xcode和iOS SDK
2.2.1 下载并尝试运行示例代码
2.2.2 使用iPhone模拟器
2.3 使用Xcode模板
2.4 基于控制台输出的Hello World程序
2.4.1 委托和Main方法
2.4.2 程序流、框架和App文件
2.4.3 委托类的结构和控制台输出的实现过程
2.5 视图实例中的Hello World文本
2.6 Objective-C语言简介
2.6.1 Objective-C语言的历史
2.6.2 与方法相关的语法
2.6.3 类声明
2.6.4 创建对象
2.6.5 实例和类方法
2.6.6 内存管理
2.6.7 自动引用计数(ARC)
2.7 应用程序的生命周期
2.8 更为广泛的支持——通用程序
2.8.1 iPad于游戏开发的优势
2.8.2 独立平台的程序设计
2.8.3 条件编码
2.8.4 通用应用程序开发示例
2.8.5 关闭状态栏
2.8.6 添加资源——应用程序图标和启动图像
2.8.7 设置应用程序名称
2.8.8 查询分辨率和文本输出
2.9 支持Retina显示
2.9.1 Retina分辨率的支持方式
2.9.2 测试Retina模拟器
第3章 游戏开发简介
3.1 游戏的工作方式
3.1.1 游戏的制作方式
3.1.2 相关知识
3.2 二维坐标系
3.3 构建示例项目
3.4 绘制类:渲染简单的场景
3.4.1 如何绘制直线
3.4.2 确定颜色和透明度
3.4.3 直线宽度
3.4.4 随机数和抽象艺术
3.4.5 如何绘制矩形
3.4.6 如何绘制圆
3.4.7 文本输出(字体和字号)
3.5 整合、加载和显示图像
3.6 游戏循环和帧
3.7 剪裁和动画
3.7.1 剪裁和贴图
3.7.2 创建精灵对象
3.7.3 利用数组进行有效的组织
3.8 碰撞控制
3.8.1 两点之间的距离
3.8.2 基于圆的碰撞检测
3.9 用户输入
3.10 游戏管理器和精灵对象管理器
3.10.1 游戏元素
3.10.2 赢得游戏
3.10.3 战胜对手
3.10.4 控制
3.10.5 HUD(平视显示)
3.10.6 菜单导航
3.10.7 组建代码
3.10.8 资源管理
3.10.9 精灵对象的管理
3.10.10 单次动画序列
3.10.11 有限状态机
3.10.12 用户输入
3.10.13 HUD和得分机制
3.11 背景音乐和音效
3.11.1 框架整合
3.11.2 AVAudioPlayer的应用方式
3.11.3 复音和音频格式
3.11.4 如何获取适宜的音频
3.11.5 将音频整合至游戏中
3.12 数据存储
第4章 基于GameKit和Game Center的多玩家游戏
4.1 简介
4.2 设置iTunes连接
4.3 通过Game Center测试应用程序
4.3.1 登录Game Center
4.3.2 回调句柄
4.3.3 上传积分榜
4.3.4 积分榜
4.3.5 将GCHelper整合应用程序中
4.4 多玩家游戏
第5章 OpenGL ES开发
5.1 为何使用OpenGL ES
5.2 OpenGL ES及其构建方式
5.3 OpenGL ES中的基本问题
5.4 OpenGL ES的整合操作
5.5 OpenGL坐标系
5.6 简单的绘制操作
5.7 数学绘图
5.8 图像和纹理
5.9 基于矩阵的转换函数
5.10 基于纹理剪裁的动画效果
5.11 滚屏和视差滚屏
5.12 基于OpenGL ES的射击游戏
5.12.1 完整框架
5.12.2 游戏体验
5.12.3 精灵类
5.12.4 游戏元素
5.13 基于OpenGL ES的视网膜显示
5.13.1 精确的像素渲染
5.13.2 是否采用全分辨率
5.13.3 性能问题
第6章 3D游戏
6.1 3D游戏的构建方式
6.2 基础框架
6.3 3D坐标系
6.4 绘制简单的图形
6.5 纹理表面
6.6 3D对象的纹理操作
6.7 光照效果
6.8 创建、加载并整合3D模型
6.8.1 表面
6.8.2 Obj文件创建过程
6.9 包含纹理的其他3D模型
6.10 第一人称视角:设定相机
6.11 3D飞行游戏
6.11.1 游戏概念:飞行
6.11.2 控制
6.11.3 游戏元素
6.11.4 三维精灵对象
6.11.5 游戏元素的实现
6.11.6 控制
6.11.7 第一人称视角
6.11.8 激光
6.11.9 碰撞信息
6.11.10 其他精灵对象
第7章 物理引擎Box2D
7.1 简介
7.1.1 物理引擎提供的内容
7.1.2 初步测试
7.2 Box2D的整合操作
7.3 Box2D实践
7.4 Box2D下的精灵对象
7.5 Box2D游戏实践
7.5.1 横向模式和纵向模式
7.5.2 新的Sprite类
7.5.3 构建石塔建筑
7.5.4 赢取游戏
7.5.5 展望
第8章 GLKit框架——简化OpenGL ES应用
8.1 简介
8.1.1 利弊关系
8.1.2 概述
8.2 示例
8.3 GLKitView和游戏循环
8.4 GLKit和3D——根据GLU模型使用相机
第9章 基于OpenAL的游戏声音
9.1 简介
9.2 封装OpenAL API
9.3 声音的构成方式
9.4 创建复音引擎
9.4.1 声音ID和缓冲区
9.4.2 音频上下文
9.4.3 加载声音
9.4.4 合成声音
9.4.5 播放声音
第10章 发布游戏
10.1 iTunes Connect操作
10.2 将游戏植入设备中
10.3 发布游戏
10.4 市场规划