书刊介绍
《实例妙解Cocos2D-X游戏开发》内容简介
《实例妙解Cocos2D-X游戏开发》是一本完全通过游戏案例来驱动的实战性著作,作者是一线资深的游戏开发工程师和移动开发工程师。《实例妙解Cocos2D-X游戏开发》根据Cocos2D-X的最新版本3.x撰写,得到了Cocos2D-X创始人王哲和CSDN创始人蒋涛两位业界专家的高度认可,权威性毋庸置疑。它将Cocos2D-X的各种功能、原理、技巧巧妙地融入游戏案例中,既增强了实战性,又降低了学习的难度;同时它还进行了人物和场景的设计,增强了学习的趣味性。此外,这些案例还从另外一个维度详细讲解了空战类、塔防类、物理类游戏的开发过程和方法。
《实例妙解Cocos2D-X游戏开发》全书12章,分为三个部分:准备篇(第1~3章),首先介绍了Cocos2D-X的开发环境搭建和基本开发方法,然后通过一个名为“钢琴师”的游戏介绍了完整的Cocos2D-X游戏开发流程。故事情节上,本书从“屌丝”程序员劲松的同事在学校的美术展上偶遇一位美女老师开始,他想通过为他的女神开发一款游戏来赢得她的芳心,随后一系列有趣的故事由此发生。实战篇(第4~8章),首先通过飞机空战游戏,重点讲解了帧动画、事件分发机制、Schedule使用以及对话框的制作;接着通过打砖块游戏,详细介绍了Physicls物理引擎的使用;最后通过塔防游戏,介绍了瓦片地图以及CocoStudio整合场景的使用方法。在讲解代码的同时,渗透了C++11的使用,带领读者熟悉新的编码风格。拓展篇(第9~12章),首先是对Cocos2D-X 3.x中重要的特性进行了总结和展开阐述,然后讲解了Android平台SDK的接入、App Store支付、微信社交分享的接入等扩展知识。
与市面上已有的Cocos2D-X图书相比,本书主要有三大特色:第一,本书是国内最早的基于3.x版本的著作,因为3.0的变化是革命性的,所以之前的基于2.x版本来写的书几乎全部被淘汰了;第二,本书强调实例,完全摒弃了常规的“先理论后案例”结构,采用了完全用案例驱动的模式,所有知识点都通过实例引出并做分析,降低了学习的难度;第三,本书注重“妙解”,设计了人物和故事场景,使得整个内容故事性更强,增加了学习的趣味性。
樊松阳 资深游戏开发工程师和移动应用开发工程师,曾就职于北京联众,在移动游戏开发方面积累了丰富的经验。精通Cocos2D-X和Unity3D游戏开发,有大量项目实战经验,并且擅长Cocos2D-X框架的改进与封装。此外,他还精通C++、Java和.NET相关技术,能熟练使用Lua、Python等脚本语言开发游戏程序,近期关注Swift。活跃于各大技术社区,CSDN博客专家,撰写的Cocos2D-X游戏开发系列文章非常受欢迎。作品目录
实例妙解Cocos2D-X游戏开发
前言
第一部分
快速上手
第1章:搭建Cocos2D-X开发环境
1.1、引擎简介
1.1.1、选择Cocos2D-X的理由
1.1.2、Cocos2D-X
3.x版本与先前版本的不同
1.2、搭建开发环境
1.2.1、安装开发环境
1.2.2、安装CocoStudio
1.3、创建项目
1.3.1、安装Python
1.3.2、创建新项目
1.3.3、目录结构
1.4、小结
第2章:钢琴师(上)
2.1、解析Cocos2D-X
2.1.1、元素
2.1.2、层
2.1.3、场景
2.1.4、导演
2.1.5、组合
2.2、使用UI编辑器
2.2.1、创建UI工程
2.2.2、创建元素
2.2.3、导出
2.3、载入到程序
2.3.1、创建加载环境
2.3.2、加载导出文件
2.4、完善功能
2.4.1、点击响应
2.4.2、补齐整套琴键
2.5、安装到手机中
2.5.1、安装Java环境
2.5.2、配置Cocos2D-X编译环境
2.5.3、编译项目
2.6、小结
第3章:钢琴师(下)
3.1、粒子效果
3.1.1、粒子效果原理
3.1.2、粒子编辑器
3.1.3、加载到程序中
3.2、动作
3.2.1、重要示例
3.2.2、学习方式
3.2.3、实际使用
3.3、文字
3.3.1、编辑自定义字体
3.3.2、在CocoStudio中使用字体
3.4、输入信息
3.4.1、编辑输入区域
3.4.2、添加输入设置
3.4.3、信息存储
3.5、小结
第二部分
开发实战
第4章:飞机空战(上)
4.1、飞机起飞
4.1.1、动画编辑器
4.1.2、载入到程序中
4.1.3、制作敌人飞机
4.1.4、调整模拟器
4.2、飞机移动
4.2.1、点击调度结构
4.2.2、主角的移动
4.2.3、敌人飞机的移动
4.3、发射子弹
4.3.1、发出子弹
4.3.2、创建多个敌人
4.3.3、滚动背景
4.4、添加物理系统
4.4.1、更改World配置
4.4.2、添加Body
4.4.3、碰撞处理
4.5、重新开始游戏
4.5.1、制作对话框
4.5.2、载入对话框
4.5.3、重构开始游戏
4.6、小结
第5章:飞机空战(下)
5.1、欢迎界面
5.1.1、编辑UI
5.1.2、流程控制
5.2、游戏计分
5.2.1、制作界面
5.2.2、关联程序变量
5.2.3、添加血量
5.2.4、添加得分
5.3、结果界面
5.3.1、编辑界面
5.3.2、加载显示
5.3.3、存储记录
5.4、最高分界面
5.4.1、编辑界面
5.4.2、加载实现
5.5、小结
第6章:打砖块
6.1、搭建物理世界
6.1.1、设置世界特性
6.1.2、回弹的小球
6.1.3、创建挡板
6.1.4、移动挡板
6.2、设计关卡
6.2.1、使用场景编辑器
6.2.2、加载场景
6.2.3、适配场景
6.3、碰撞处理
6.3.1、定义Body类型
6.3.2、绑定编辑模型
6.3.3、碰撞响应
6.4、多个关卡
6.4.1、编辑欢迎界面
6.4.2、创建新关卡
6.4.3、载入程序
6.4.4、关卡预览
6.5、完善流程
6.5.1、编辑结果框
6.5.2、添加获胜逻辑
6.5.3、添加失败处理
6.5.4、梳理流程
6.6、小结
第7章:塔防(上)
7.1、瓦片地图
7.1.1、概念介绍
7.1.2、编辑器
7.1.3、创建工程
7.1.4、编辑场景
7.1.5、加载到程序
7.2、标记路径
7.2.1、创建对象层
7.2.2、加载移动
7.2.3、移动怪物
7.3、面向组件编程
7.3.1、Cocos2D-X对组件的支持
7.3.2、制作组件
7.3.3、初始化数据
7.3.4、调用移动
7.3.5、挂载到节点
7.4、防御塔
7.4.1、制作标记层
7.4.2、创建点击
7.4.3、读取属性
7.4.4、创建塔
7.5、制作碰撞组件
7.5.1、整体设计
7.5.2、编辑炮弹组件
7.5.3、防御塔组件
7.5.4、血量组件
7.6、碰撞模块
7.6.1、编写模块
7.6.2、调用模块
7.7、小结
第8章:塔防(下)
8.1、细化怪物
8.1.1、骨骼动画
8.1.2、编辑动画
8.1.3、载入程序
8.2、分数控制
8.2.1、制作HUD
8.2.2、波数显示
8.2.3、金币数
8.2.4、血量
8.3、流程控制
8.3.1、场景与层
8.3.2、欢迎场景
8.3.3、多关卡
8.4、结果菜单
8.4.1、制作九宫格菜单
8.4.2、挂载程序
8.5、小结
第三部分
拓展知识
第9章:Cocos2D-X特性总结
9.1、基本类与宏
9.1.1、Node继承体系
9.1.2、常用宏
9.2、C++11新特性
9.2.1、auto
9.2.2、Lambda函数
9.2.3、std::function类型
9.3、内存管理
9.4、Cocos2D-X
3.x绘制优化
9.4.1、自动批次渲染
9.4.2、绘制剔除
9.5、小结
第10章:Android平台的SDK接入
10.1、搭建测试环境
10.1.1、创建Cocos2D-X项目
10.1.2、更改Android项目配置
10.2、Android环境配置
10.2.1、Eclipse配置项目关联
10.2.2、创建主Activity
10.3、C++调用SDK功能
10.3.1、添加C++调用
10.3.2、添加Java实现函数
10.4、Java调用C++
10.4.1、定义回调接口
10.4.2、实现处理逻辑
10.5、小结
第11章:App
Store支付接入
11.1、新建应用
11.2、生成授权
11.2.1、授权设备
11.2.2、生成授权文件
11.2.3、运行项目
11.3、创建商品
11.4、接入程序
11.5、测试支付
11.5.1、创建测试账号
11.5.2、真机测试
11.6、小结
第12章:微信社交分享
12.1、开发环境搭建
12.1.1、创建工程
12.1.2、引入包
12.1.3、创建主Activity
12.2、发送信息到微信
12.2.1、C++部分调用
12.2.2、Java部分调用
12.2.3、申请包签名
12.3、小结
光盘内容