《Cocos2d-x实战 C++卷》上线了-源码-样章-感谢大家的支持
《Cocos2d-x实战C++卷》上线了 感谢大家一直以来的支持!
全面介绍Cocos开发技巧,采用Cocos2d-x3.2版本,并且详细介绍跨平台移植已经多平台发布细节。 ·各大商店均开始销售: 京东:http://item.jd.com/11584534.html 亚马逊:http://www.amazon.cn/Cocos2d-x%E5%AE%9E%E6%88%98-C-%E5%8D%B7-%E5%85%B3%E4%B8%9C%E5%8D%87/dp/B00PTYWTLU 当当:http://product.dangdang.com/23606265.html 互动出版网:http://product.china-pub.com/3770734
·《Cocos2d-x实战C++卷》源码及样章下载地址: 源码下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1155&extra=page%3D1 样章下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1157&extra=page%3D1
·本书更配有完整的Cocos2d-x学习路线图: http://v.51work6.com/courseInfoRedirect.do?action=netDetialInfo&courseId=844465&categoryId=0
并且隆重推出Cocos会员服务: Cocos学习路线图
·本书系统论述了Cocos2d-x游戏开发理论与实践。全书内容涵盖了Cocos2d-x的核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、数据交换格式、内存管理、性能优化、平台移植、程序代码管理、三大应用商店发布产品等。本书共29章,按内容结构可分为六篇:
·欢迎与我们进行互动交流 读书交流群:257760386/327403678/389037167 本书最新动态可以关注我的微博@智捷iOS课堂 本书网站:http://www.cocoagame.net,有部分内容和勘误问题讨论区等 全套系列丛书
更新无处不在,更多新增内容请详细阅读本书 ·本书目录 《Cocos2d-x实战C++卷》目录 基础篇 第1章准备开始 1.1本书学习路线图 1.2使用实例代码 第2章Cocos2d-x介绍与环境搭建 2.1移动平台游戏引擎介绍 2.2Cocos2d家谱 2.3Cocos2d-x设计目标 2.4在Windows平台下开始开发Cocos2d-x游戏 2.4.1使用VisualStudio开发工具 2.4.2下载和使用Cocos2d-x案例 2.4.3生成API文档 本章小结 第3章HelloCocos2d-x 3.1第一个Cocos2d-x游戏 3.1.1创建工程 3.1.2工程文件结构 3.1.3代码解释 3.2Cocos2d-x核心概念 3.2.1导演 3.2.2场景 3.2.3层 3.2.4精灵 3.2.5菜单 3.3Node与Node层级架构 3.3.1Node中重要的操作 3.3.2Node中重要的属性 3.3.3游戏循环与调度 3.4Cocos2d-x坐标系 3.4.1UI坐标 3.4.2OpenGL坐标 3.4.3世界坐标和模型坐标 3.5Win32平台下设置屏幕 本章小结 第4章字符串、标签和菜单 4.1Cocos2d-x中的字符串 4.1.1使用constchar*和std::string 4.1.2使用cocos2d::__String 4.1.3Win32平台下中文乱码问题 4.2使用标签 4.2.1LabelTTF 4.2.2LabelAtlas 4.2.3LabelBMFont 4.2.4Cocos2d-x3.x标签类Label 4.2.5标签中文乱码问题 4.3使用菜单 4.3.1文本菜单 4.3.2精灵菜单和图片菜单 4.3.3开关菜单 本章小结 第5章精灵 5.1Sprite精灵类 5.1.1创建Sprite精灵对象 5.1.2实例:使用纹理对象创建Sprite对象 5.2精灵的性能优化 5.2.1使用纹理图集 5.2.2使用精灵帧缓存 本章小结 第6章场景与层 6.1场景与层的关系 6.2场景切换 6.2.1场景切换相关函数 6.2.2场景过渡动画 6.3场景的生命周期 6.3.1生命周期函数 6.3.2多场景切换生命周期 本章小结 第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.3动画 7.3.1帧动画 7.3.2实例:帧动画使用 本章小结 第8章Cocos2d-x用户事件 8.1事件处理机制 8.1.1事件分发器 8.1.2触摸事件 8.1.3实例:单点触摸事件 8.1.4实例:使用Lambda表达式 8.1.5键盘事件 8.1.6鼠标事件 8.2在层中进行事件处理 8.2.1触摸事件 8.2.2实例:单点触摸事件 8.3加速度计与加速度事件 8.3.1加速度计 8.3.2使用事件分发器 8.3.3使用层加速度计事件 8.3.4实例:运动的小球 本章小结 进阶篇 第9章游戏背景音乐与音效 9.1Cocos2d-x中音频文件 9.1.1音频文件介绍 9.1.2Cocos2d-x跨平台音频支持 9.2使用CocosDenshion引擎 9.2.1音频文件的预处理 9.2.2播放背景音乐 9.2.3停止播放背景音乐 9.2.4背景音乐播放暂停与继续 9.3实例:设置背景音乐与音效 9.3.1AppDelegate实现 9.3.2HelloWorld场景实现 9.3.3设置场景实现 本章小结 第10章粒子系统 10.1问题的提出 10.2粒子系统基本概念 10.2.1实例:打火机 10.2.2粒子发射模式 10.2.3粒子系统属性 10.3Cocos2d-x内置粒子系统 10.3.1内置粒子系统 10.3.2实例:内置粒子系统 10.4自定义粒子系统 10.4.1代码创建 10.4.2plist文件创建 本章小结 第11章瓦片地图 11.1地图性能问题 11.2Cocos2d-x中瓦片地图API 11.3实例:忍者无敌 11.3.1设计地图 11.3.2程序中加载地图 11.3.3移动精灵 11.3.4检测碰撞 11.3.5滚动地图 本章小结 第12章物理引擎 12.1使用物理引擎 12.1.1物理引擎核心概念 12.1.2物理引擎与精灵关系 12.2Cocos2d-x3.0中物理引擎封装 12.2.1Cocos2d-x3.x物理引擎API 12.2.2实例:HelloPhysicsWorld 12.2.3实例:碰撞检测 12.2.4实例:使用关节 12.3Box2D引擎 12.3.1Box2D核心概念 12.3.2使用Box2D物理引擎的一般步骤 12.3.3VisualStudio2012下Box2D开发环境设置 12.3.4实例:HelloBox2D 12.3.5实例:碰撞检测 12.3.6实例:使用关节 本章小结 网络与数据篇 第13章Cocos2d-x中使用的数据容器类 13.1Cocos2d-x中两大类——Ref和Value 13.1.1Cocos2d-x根类Ref 13.1.2包装类Value 13.2Ref列表容器 13.2.1__Array容器 13.2.2实例:__Array容器 13.2.3Vector<T>容器 13.2.4实例:Vector容器 13.3Ref字典容器 13.3.1__Dictionary容器 13.3.2实例:__Dictionary容器 13.3.3Map<K,V>容器 13.3.4实例:Map<K,V>容器 13.4Value列表容器——ValueVector 13.4.1ValueVector常用API 13.4.2实例:使用ValueVector容器 13.5Value字典容器——ValueMap和ValueMapIntKey 13.5.1ValueMap和ValueMapIntKey常用API 13.5.2实例:使用ValueMap容器 本章小结 第14章文件访问与数据持久化 14.1使用FileUtils访问文件 14.1.1Cocos2d-x中的目录 14.1.2实例:文件读写 14.1.3实例:路径搜索 14.2持久化概述 14.3UserDefault数据持久化 14.3.1UserDefaultAPI 14.3.2实例:保存背景音乐和音效设置 14.4属性列表数据持久化 14.4.1属性列表概述 14.4.2实例:MyNotes 14.4.3使用__Dictionary读写属性列表文件 14.4.4使用ValueMap读写属性列表文件 14.4.5使用ValueVector读取属性列表文件 14.5SQLite数据库数据持久化 14.5.1SQLite数据库介绍 14.5.2VisualStudio下SQLite数据库开发环境设置 14.5.3实例:重构MyNotes 14.5.4创建数据库 14.5.5SQLite数据库管理工具 14.5.6查询数据 14.5.7修改数据 本章小结 第15章数据交换格式 15.1CSV数据交换格式 15.1.1文档结构 15.1.2CSV格式解码 15.2XML数据交换格式 15.2.1文档结构 15.2.2SAX解析 15.2.3DOM解析 15.3JSON数据交换格式 15.3.1文档结构 15.3.2JSON框架jsoncpp和rapidjson比较 15.3.3实例:rapidjson解码 15.3.4实例:rapidjson编码 本章小结 第16章基于HTTP网络通信 16.1网络结构 16.1.1客户端服务器结构网络 16.1.2点对点结构网络 16.2HTTP与HTTPS协议 16.3使用cURL开发客户端 16.3.1cURL与libcurl库 16.3.2VisualStudio下libcurl库开发环境设置 16.3.3实例:重构MyNotes 16.4使用HttpClient开发客户端 16.4.1HttpClientAPI 16.4.2VisualStudio下HttpClient开发环境设置 16.4.1实例:重构MyNotes 本章小结 第17章基于Node.js的Socket.IO网络通信 17.1Node.js 17.1.1Node.js安装 17.1.2Node.js测试 17.2使用Socket.IO 17.2.1Socket.IO服务器端开发 17.2.2Cocos2d-x的Socket.IO客户端 17.3实例:Socket.IO重构MyNotes 17.3.1Socket.IO服务器端开发 17.3.2Node.js访问SQLite数据库 17.3.3Cocos2d-x的Socket.IO客户端开发 本章小结 设计与优化篇 第18章Cocos2d-x中的常用设计模式 18.1单例设计模式 18.1.1问题提出 18.1.2实现原理 18.1.3应用案例 18.2委托设计模式 18.2.1问题提出 18.2.2实现原理 18.2.3应用案例 18.3观察者设计模式与通知机制 18.3.1问题提出 18.3.2实现原理 18.3.3通知机制 本章小结 第19章Cocos2d-x中的内存管理 19.1C++内存管理 19.1.1内存分配区域 19.1.2动态内存分配 19.2Ref内存管理 19.2.1内存引用计数 19.2.2自动释放池 19.2.3Ref内存管理规则 19.3Ref内存管理设计模式 19.3.1使用静态构造函数 19.3.2使用访问器 19.4其它类型内存管理 19.4.1Value内存管理 19.4.2Vector<T>和Map<K,V>内存管理 本章小结 第20章性能优化 20.1工具 20.1.1Xcode中Instruments工具使用 20.1.2使用Windows任务管理器 20.1.3VisualStudio内存泄漏检测工具——VisualLeakDetector 20.1.4左下角的文字是什么? 20.2使用SpriteBatchNode批次渲染 20.3合理使用缓存 20.3.1场景与资源 20.3.2缓存创建和清除时机 20.4图片与纹理优化 20.4.1选择图片格式 20.4.2拼图 20.4.3纹理像素格式 20.4.4纹理缓存异步加载 20.4.5背景图片优化 20.5声音优化 20.5.1声音格式优化 20.5.2声音预处理与清除 20.6多线程并发访问 20.6.1std::thread多线程技术 20.6.2异步预处理声音 20.7SQLite数据库优化 20.7.1表结构优化 20.7.2查询优化 20.7.3插入(或删除)优化 20.8数据交换格式优化 本章小结 平台移植篇 第21章从Win32到Android 21.1搭建交叉编译和打包环境 21.1.1AndroidSDK安装 21.1.2管理AndroidSDK 21.1.3管理Android开发模拟器 21.1.4AndroidNDK安装 21.1.5设置环境变量 21.2交叉编译和打包 21.2.1通过命令行交叉编译打包 21.2.1Android.mk编译文件 21.2.2使用Eclipse交叉编译打包 21.3移植问题汇总 21.3.1中文乱码问题 21.3.2SQLite3数据库移植问题 21.3.3JSON框架rapidjson移植问题 21.3.4libcurl库移植问题 21.3.5libNetwork库移植问题 21.3.6横屏与竖屏设置问题 本章小结 第22章从Win32到WindowsPhone8 22.1WindowsPhone8开发环境搭建 22.1.1WindowsPhoneSDK8.0安装 22.1.2VisualStudioExpress2012forWindowsPhone8安装 22.2Cocos2d-x3.x的WindowsPhone8工程 22.2.1生成工程 22.2.1运行工程 22.2.1调试工程 22.3移植问题汇总 22.3.1中文乱码问题 22.3.2SQLite3数据库移植问题 22.3.3框架rapidjson移植问题 22.3.4libcurl库移植问题 22.3.5libNetwork库移植问题 22.3.6横屏与竖屏设置问题 本章小结 第23章从Win32到iOS 23.1iOS开发环境搭建 23.1.1Xcode安装和卸载 23.1.2Xcode操作界面 23.2从VisualStudio工程到Xcode工程 23.2.1添加源文件 23.2.2添加资源文件 23.3移植问题汇总 23.3.1中文乱码问题 23.3.2SQLite3数据库移植问题 23.3.3JSON框架rapidjson移植问题 23.3.4libcurl库移植问题 23.3.5声音移植问题 23.3.6使用PVR纹理格式 23.3.7横屏与竖屏设置问题 23.4多分辨率屏幕适配 23.4.1问题的提出 23.4.2Cocos2d-x屏幕适配 23.4.3分辨率策略 23.4.4纹理图集资源适配 23.4.5瓦片地图资源适配 本章小结 实战篇 第24章使用Git管理程序代码版本 24.1代码版本管理工具——Git 24.1.1版本控制历史 24.1.2术语和基本概念 24.1.3Git环境配置 24.1.4Git常用命令 24.1代码托管服务——GitHub 24.1.1创建和配置GitHub账号 24.1.2创建代码库 24.1.3删除代码库 24.1.4派生代码库 24.1.5GitHub协同开发 24.2实例:Cocos2d-x游戏项目协同开发 24.2.1提交到GitHub代码库 24.2.2克隆GitHub代码库 24.2.3重新获得GitHub代码库 本章小结 第25章Cocos2d-x敏捷开发项目实战——迷失航线手机游戏 25.1迷失航线游戏分析与设计 25.1.1迷失航线故事背景 25.1.2需求分析 25.1.3原型设计 25.1.4游戏脚本 25.2任务1:游戏工程的创建与初始化 25.2.1迭代1.1:创建工程 25.2.2迭代1.2:多分辨率支持 25.2.3迭代1.3:通用类与基类维护 25.2.4迭代1.4:发布到GitHub 25.3任务2:创建Loading场景 25.3.1迭代2.1:添加场景和层 25.3.2迭代2.2:Loading动画 25.3.3迭代2.3:异步加载纹理缓存 25.3.4迭代2.4:异步预处理声音 25.4任务3:创建Home场景 25.4.1迭代3.1:添加场景和层 25.4.2迭代3.2:添加菜单 25.5任务4:创建设置场景 25.6任务5:创建帮助场景 25.7任务6:游戏场景实现 25.7.1迭代6.1:创建敌人精灵 25.7.2迭代6.2:创建玩家飞机精灵 25.7.3迭代6.3:创建炮弹精灵 25.7.1迭代6.4:初始化游戏场景 25.7.2迭代6.5:游戏场景菜单实现 25.7.3迭代6.6:玩家飞机发射炮弹 25.7.4迭代6.7:炮弹与敌人的碰撞检测 25.7.5迭代6.8:玩家飞机与敌人的碰撞检测 25.7.6迭代6.9:玩家飞机生命值显示 25.7.7迭代6.10:显示玩家得分情况 25.8任务7:游戏结束场景 本章小结 第26章为迷失航线游戏添加广告 26.1使用谷歌AdMob广告 26.1.1注册AdMob账号 26.1.2管理AdMob广告 26.1.3AdMob广告类型 26.1.4下载谷歌AdMobAdsSDK 26.2为迷失航线游戏Android平台添加AdMob广告 26.2.1Cocos2d-x引擎Android平台下AdMob开发环境搭建 26.2.2编写AdMob相关代码 26.2.3交叉编译与打包运行 26.3为迷失航线游戏WindowsPhone8平台添加AdMob广告 26.3.1Cocos2d-x引擎WindowsPhone8平台下AdMob开发环境搭建 26.3.2编写AdMob相关代码 26.4为迷失航线游戏iOS平台添加AdMob广告 26.4.1Cocos2d-x引擎iOS平台下AdMob开发环境搭建 26.4.2编写AdMob相关代码 本章小结 第27章把迷失航线游戏发布放到Googleplay应用商店 27.1谷歌Android应用商店Googleplay 27.2Android设备测试 27.3还有“最后一公里” 27.3.1添加图标 27.3.2应用程序打包 27.4发布产品 27.4.1上传APK 27.4.2填写商品详细信息 27.4.3定价和发布范围 本章小结 第28章把迷失航线游戏发布放到WindowsPhone应用商店 28.1微软WindowsPhone应用商店 28.2WindowsPhone8设备测试 28.2.1播放音频程序崩溃问题 28.2.2屏幕分辨率宽度和高度相反问题 28.3还有“最后一公里” 28.3.1使用应用商店测试套件完成“最后一公里” 28.3.2测试应用程序包XAP 28.3.3修改应用程序的基本属性 28.3.4配置图标 28.3.5应用商店磁贴和屏幕快照 28.3.6修改UI相关描述信息 28.3.7修改打包信息 28.4发布产品 28.4.1填写应用信息 28.4.2上传并描述您的程序包 本章小结 第29章把迷失航线游戏发布放到苹果AppStore 29.1苹果的AppStore 29.2iOS设备测试 29.2.1创建开发者证书 29.2.2设备注册 29.2.3创建AppID 29.2.4创建配置概要文件 29.2.5设备上运行 29.3还有“最后一公里” 29.3.1添加图标 29.3.2添加启动界面 29.3.3修改发布产品属性 29.3.4为发布进行编译 29.3.5应用打包 29.4发布产品 29.4.1创建应用及基本信息 29.4.2应用定价信息 29.4.3基本信息输入 29.4.4上传应用前准备 29.4.5上传应用 29.5常见审核不通过的原因 29.5.1功能问题 29.5.2用户界面问题 29.5.3商业问题 29.5.4不当内容 29.5.5其它问题 本章小结 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |