新書推薦:
《
鸣沙丛书·大风起兮:地方视野和政治变迁中的“五四”(1911~1927)
》
售價:NT$
454.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
|
編輯推薦: |
《Cocos2d-x实战:Lua卷》是著名移动开发专家关东升、赵大羽倾力创作的“Cocos2d-x实战”典藏大系之一。全书首次系统介绍了Cocos2d-x之Lua开发的方法和技巧。全书基于Cocos2d-x最新版本论述!Cocos2d-x创始人王哲亲自作序。CocoChina、CSDN、51CTO、9Tech等6大专业社区9位知名专家联袂推荐!非常值得阅读、收藏。
|
內容簡介: |
本书是介绍Cocos2dx Lua游戏编程和开发技术的书籍,介绍了使用Cocos2dx Lua中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台移植、程序代码管理、两大应用商店发布产品。
全书分为六篇: 基础篇、进阶篇、数据与网络篇、优化篇、跨平台移植篇和实战篇,共23章。
基础篇包括第1~8章,分别是Cocos2dx Lua介绍、环境搭建、标签、菜单、精灵、场景、层、动作、特效、动画和用户事件。
进阶篇包括第9~12章,分别是游戏音乐与音效、粒子系统、瓦片地图和物理引擎。
数据与网络篇包括第13~15章,分别是数据持久化、基于HTTP的网络通信、Node.js与WebSocket网络通信。
优化篇为第16章,主要介绍性能优化。
跨平台移植篇包括第17章和第18章,分别是移植到Android平台和移植到iOS平台。
实战篇包括第19~23章,分别是使用Git管理程序代码、项目实战——迷失航线手机游戏、为迷失航线游戏添加广告、发布放到Google play应用商店和发布放到苹果App Store。
|
關於作者: |
关东升 国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。担任51CTO社区iOS技术顾问,精通iOS、Android和Windows Phone及HTML5等移动开发技术。曾先后主持开发大型网络游戏《神农诀》的iOS和Android客户端开发,国家农产品追溯系统的iPad客户端开发,酒店预订系统的iOS客户端开发,金融系统的iOS、Windows Phone 及Android客户端开发。在App Store上发布数款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。长期为中国移动研究院、云南移动、东软、方正科技、大唐电信、中石油、深圳康拓普、上海财富168、天津港务局等企事业单位授课。著有《iOS网络编程与云端应用最佳实践》、《iOS传感器应用开发最佳实践》、《iOS图形图像、动画和多媒体编程技术最佳实践》、《iOS开发指南——从零基础到App Store上架》、《交互设计的艺术——iOS 7拟物化到扁平化革命》等iOS专业图书。
|
目錄:
|
第一篇基础篇
第1章准备开始
1.1本书学习路线图
1.2使用实例代码
第2章Lua语言基础
2.1环境搭建
2.1.1Lua编辑工具
2.1.2HelloLua实例测试
2.2标识符和保留字
2.2.1标识符
2.2.2保留字
2.3常量和变量
2.3.1常量
2.3.2变量
2.3.3命名规范
2.4注释
2.5Lua数据类型
2.5.1数据类型
2.5.2type函数
2.5.3数据类型转换
2.6运算符
2.6.1算术运算符
2.6.2关系运算符
2.6.3逻辑运算符
2.6.4运算优先级
2.7控制语句
2.7.1分支语句
2.7.2循环语句
2.7.3跳转语句
2.8表类型
2.8.1字典
2.8.2数组
2.9字符串类型
2.9.1字符串截取
2.9.2字符串转换
2.9.3字符串查询
2.9.4字符串格式化
2.10函数
2.10.1使用函数
2.10.2变量作用域
2.10.3多重返回值
2.11闭包函数
2.11.1嵌套函数
2.11.2返回函数
2.11.3使用闭包表达式
2.12Lua中的面向对象
2.12.1Lua中的对象
2.12.2类的实现
本章小结
第3章Hello Cocos2dx Lua
3.1移动平台游戏引擎介绍
3.2Cocos2d游戏引擎
3.2.1Cocos2d游戏引擎家谱
3.2.2Cocos2dx引擎
3.2.3JavaScript和Lua绑定
3.3搭建Cocos2dx Lua开发环境
3.3.1搭建Cocos Code IDE开发环境
3.3.2下载和使用Cocos2dx Lua官方案例
3.4第一个Cocos2dx Lua游戏
3.4.1创建工程
3.4.2Cocos Code IDE中运行
3.4.3工程文件结构
3.4.4代码解释
3.5重构HelloLua
3.6Cocos2dx Lua核心概念
3.6.1导演
3.6.2场景
3.6.3层
3.6.4精灵
3.6.5菜单
3.7Node与Node层级架构
3.7.1Node中重要的操作
3.7.2Node中重要的属性
3.7.3游戏循环与调度
3.8Cocos2dx Lua坐标系
3.8.1UI坐标
3.8.2OpenGL坐标
3.8.3世界坐标和模型坐标
本章小结
第4章标签和菜单
4.1使用标签
4.1.1LabelTTF
4.1.2LabelAtlas
4.1.3LabelBMFont
4.1.4Cocos2dx 3.x标签类Label
4.2使用菜单
4.2.1文本菜单
4.2.2精灵菜单和图片菜单
4.2.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章用户事件
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加速计事件
8.2.3实例: 运动的小球
本章小结
第二篇进阶篇
第9章游戏背景音乐与音效
9.1Cocos2dx Lua中音频文件
9.1.1音频文件介绍
9.1.2Cocos2dx Lua跨平台音频支持
9.2使用Audio Engine引擎
9.2.1音频文件的预处理
9.2.2播放背景音乐
9.2.3停止播放背景音乐
9.3实例: 设置背景音乐与音效
9.3.1GameScene场景实现
9.3.2SettingScene场景实现
本章小结
第10章粒子系统
10.1问题的提出
10.2粒子系统的基本概念
10.2.1实例: 打火机
10.2.2粒子发射模式
10.2.3粒子系统属性
10.3Cocos2dx内置粒子系统
10.3.1内置粒子系统
10.3.2实例: 内置粒子系统
10.4自定义粒子系统
10.4.1代码创建
10.4.2plist文件创建
本章小结
第11章瓦片地图
11.1地图的性能问题
11.2Cocos2dx Lua中瓦片地图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.2Cocos2dx Lua中物理引擎
12.2.1Cocos2dx Lua物理引擎API
12.2.2实例: HelloPhysicsWorld
12.2.3实例: 碰撞检测
12.2.4实例: 使用关节
本章小结
第三篇数据与网络篇
第13章数据持久化
13.1使用FileUtils访问文件
13.1.1Cocos2dx Lua中的目录
13.1.2实例: 读取文件
13.1.3实例: 路径搜索
13.2持久化概述
13.3UserDefault数据持久化
13.3.1UserDefaultAPI
13.3.2实例: 保存背景音乐和音效设置
13.4属性列表数据持久化
13.4.1属性列表概述
13.4.2实例: 访问根为字典列表结构的属性列表文件
13.4.3实例: 访问根为列表结构的属性列表文件
本章小结
第14章基于HTTP的网络通信
14.1网络结构
14.1.1客户端服务器结构网络
14.1.2点对点结构网络
14.2HTTP与HTTPS协议
14.3使用XMLHttpRequest对象开发客户端
14.3.1使用XMLHttpRequest对象
14.3.2实例: MyNotes
14.4数据交换格式
14.5JSON数据交换格式
14.5.1文档结构
14.5.2JSON解码与编码
14.5.3实例: 完善MyNotes
本章小结
第15章Node.js与WebSocket网络通信
15.1Node.js
15.1.1Node.js安装
15.1.2Node.js测试
15.2使用WebSocket
15.2.1使用Node.js开发WebSocket服务器端程序
15.2.2Cocos2dx Lua客户端
15.3实例: WebSocket重构MyNotes
15.3.1WebSocket服务器端开发
15.3.2服务器端Node.js访问SQLite数据库
15.3.3Cocos2dx Lua客户端开发
本章小结
第四篇优化篇
第16章性能优化
16.1合理使用缓存
16.1.1场景与资源
16.1.2缓存创建和清除的时机
16.2图片与纹理优化
16.2.1选择图片格式
16.2.2拼图
16.2.3纹理像素格式
16.2.4纹理缓存异步加载
16.2.5背景图片优化
16.3声音优化
16.3.1声音格式优化
16.3.2声音预处理与清除
本章小结
第五篇跨平台移植篇
第17章移植到Android平台
17.1搭建交叉编译和打包环境
17.1.1Android SDK安装
17.1.2管理Android SDK
17.1.3管理Android开发模拟器
17.1.4Android NDK安装
17.2创建Cocos2dx Lua工程
17.3交叉编译
17.4打包运行
17.5移植问题汇总
17.5.1Lua文件编译问题
17.5.2横屏与竖屏设置问题
本章小结
第18章移植到iOS平台
18.1iOS开发环境搭建
18.1.1Xcode安装和卸载
18.1.2Xcode操作界面
18.2创建Cocos2dx Lua工程
18.3编译与发布
18.4移植问题汇总
18.4.1iOS平台声音移植问题
18.4.2使用PVR纹理格式
18.4.3横屏与竖屏设置问题
18.5多分辨率屏幕适配
18.5.1问题的提出
18.5.2Cocos2dx Lua屏幕适配
18.5.3分辨率策略
18.5.4纹理图集资源适配
18.5.5瓦片地图资源适配
本章小结
第六篇实战篇
第19章使用Git管理程序代码版本
19.1代码版本管理工具——Git
19.1.1版本控制历史
19.1.2术语和基本概念
19.1.3Git环境配置
19.1.4Git常用命令
19.2代码托管服务——GitHub
19.2.1创建和配置GitHub账号
19.2.2创建代码库
19.2.3删除代码库
19.2.4派生代码库
19.2.5GitHub协同开发
19.3实例: Cocos2dx Lua游戏项目协同开发
19.3.1提交到GitHub代码库
19.3.2克隆GitHub代码库
19.3.3重新获得GitHub代码库
本章小结
第20章Cocos2dx Lua敏捷开发项目实战——迷失航线手机游戏
20.1迷失航线游戏分析与设计
20.1.1迷失航线故事背景
20.1.2需求分析
20.1.3原型设计
20.1.4游戏脚本
20.2任务1: 游戏工程的创建与初始化
20.2.1迭代1.1: 创建工程
20.2.2迭代1.2: 添加资源文件
20.2.3迭代1.3: 添加常量文件SystemConst.lua
20.2.4迭代1.4: 多分辨率支持
20.2.5迭代1.5: 发布到GitHub
20.3任务2: 创建Loading场景
20.3.1迭代2.1: 添加场景和层
20.3.2迭代2.2: Loading动画
20.3.3迭代2.3: 异步加载纹理缓存
20.4任务3: 创建Home场景
20.4.1迭代3.1: 添加场景和层
20.4.2迭代3.2: 添加菜单
20.5任务4: 创建设置场景
20.6任务5: 创建帮助场景
20.7任务6: 游戏场景实现
20.7.1迭代6.1: 创建敌人精灵
20.7.2迭代6.2: 创建玩家飞机精灵
20.7.3迭代6.3: 创建炮弹精灵
20.7.4迭代6.4: 初始化游戏场景
20.7.5迭代6.5: 游戏场景菜单实现
20.7.6迭代6.6: 玩家飞机发射炮弹
20.7.7迭代6.7: 炮弹与敌人的碰撞检测
20.7.8迭代6.8: 玩家飞机与敌人的碰撞检测
20.7.9迭代6.9: 玩家飞机生命值显示
20.7.10迭代6.10: 显示玩家得分情况
20.8任务7: 游戏结束场景
本章小结
第21章为迷失航线游戏添加广告
21.1使用谷歌AdMob广告
21.1.1注册AdMob帐号
21.1.2管理AdMob广告
21.1.3AdMob广告类型
21.1.4下载谷歌AdMob Ads SDK
21.2为迷失航线游戏Android平台添加AdMob广告
21.2.1Google Play服务下载与配置
21.2.2导入libcocos2dx类库工程到Eclipse
21.2.3导入LostRoutes工程到Eclipse
21.2.4编写AdMob相关代码
21.2.5交叉编译、打包和运行
21.3为迷失航线游戏iOS平台添加AdMob广告
21.3.1Cocos2dx引擎iOS平台下AdMob开发环境搭建
21.3.2编写AdMob相关代码
本章小结
第22章把迷失航线游戏发布放到Google play应用商店
22.1谷歌Android应用商店Google play
22.2还有“最后一公里”
22.2.1Lua文件编译
22.2.2添加图标
22.2.3应用程序打包
22.3发布产品
22.3.1上传APK
22.3.2填写商品详细信息
22.3.3定价和发布范围
本章小结
第23章把迷失航线游戏发布放到苹果的App Store
23.1苹果的App Store
23.2iOS设备测试
23.2.1创建开发者证书
23.2.2设备注册
23.2.3创建App ID
23.2.4创建配置概要文件
23.2.5设备上运行
23.3还有“最后一公里”
23.3.1添加图标
23.3.2添加启动界面
23.3.3修改发布产品属性
23.3.4为发布进行编译
23.3.5应用打包
23.4发布产品
23.4.1创建应用及基本信息
23.4.2应用定价信息
23.4.3基本信息输入
23.4.4上传应用前的准备
23.4.5上传应用
23.5常见审核不通过的原因
23.5.1功能问题
23.5.2用户界面问题
23.5.3商业问题
23.5.4不当内容
23.5.5其他问题
本章小结
"
|
|