图书介绍
Cocos2d-x实战 Lua卷 第2版PDF|Epub|txt|kindle电子书版本网盘下载
![Cocos2d-x实战 Lua卷 第2版](https://www.shukui.net/cover/21/31971465.jpg)
- 关东升著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302457305
- 出版时间:2017
- 标注页数:445页
- 文件大小:53MB
- 文件页数:464页
- 主题词:移动电话机-游戏程序-程序设计;便携式计算机-游戏程序-程序设计
PDF下载
下载说明
Cocos2d-x实战 Lua卷 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 准备开始1
1.1 本书学习路线图1
1.2 使用实例代码3
第一篇 基础篇7
第2章 Lua语言基础7
2.1 Lua开发环境搭建7
2.1.1 安装LDT工具7
2.1.2 HelloLua实例测试11
2.2 标识符和保留字15
2.2.1 标识符15
2.2.2 保留字16
2.3 常量和变量16
2.3.1 常量16
2.3.2 变量16
2.3.3 命名规范16
2.4 注释17
2.5 Lua数据类型18
2.5.1 数据类型18
2.5.2 type函数19
2.5.3 数据类型转换19
2.6 运算符20
2.6.1 算术运算符20
2.6.2 关系运算符22
2.6.3 逻辑运算符23
2.6.4 运算优先级24
2.7 控制语句24
2.7.1 分支语句24
2.7.2 循环语句26
2.7.3 跳转语句28
2.8 table类型29
2.8.1 字典29
2.8.2 数组30
2.9 字符串类型31
2.9.1 字符串截取32
2.9.2 字符串转换32
2.9.3 字符串查询33
2.9.4 字符串格式化33
2.10 函数34
2.10.1 使用函数34
2.10.2 变量作用域35
2.10.3 多重返回值35
2.11 闭包函数36
2.11.1 嵌套函数36
2.11.2 返回函数37
2.11.3 使用闭包表达式38
2.12 Lua中的面向对象39
2.12.1 Lua中的对象39
2.12.2 类的实现40
本章小结41
第3章 Cocos2d-x Lua API与环境搭建42
3.1 移动平台游戏引擎介绍42
3.2 Cocos2d家谱42
3.3 Cocos2d-x设计目标43
3.4 搭建Cocos2d-x Lua API开发环境44
3.4.1 安装Visual Studio开发工具45
3.4.2 下载和使用Cocos2d-x Lua API官方案例45
3.4.3 配置Cocos2d-x环境47
3.4.4 使用API文档50
本章小结50
第4章 Hello Cocos2d-x51
4.1 第一个Cocos2d-x Lua API游戏51
4.1.1 创建工程51
4.1.2 工程文件结构52
4.1.3 重构HelloLua工程52
4.1.4 运行HelloLua工程54
4.1.5 调试HelloLua工程56
4.2 Cocos2d-x核心概念59
4.2.1 导演59
4.2.2 场景59
4.2.3 层60
4.3 Node与Node层级架构61
4.3.1 Node中重要的操作61
4.3.2 Node中重要的属性63
4.3.3 游戏循环与调度65
4.4 Cocos2d-x坐标系67
4.4.1 UI坐标67
4.4.2 OpenGL坐标67
4.4.3 世界坐标和模型坐标68
本章小结72
第5章 标签和菜单73
5.1 游戏中的文字73
5.2 使用标签74
5.2.1 Label类74
5.2.2 实例:使用系统字体和TTF字体75
5.2.3 实例:使用位图字体76
5.2.4 LabelAtlas类78
5.3 使用菜单79
5.3.1 文本菜单80
5.3.2 精灵菜单和图片菜单81
5.3.3 开关菜单84
本章小结85
第6章 精灵86
6.1 Sprite精灵类86
6.1.1 创建Sprite精灵对象86
6.1.2 实例:使用纹理对象创建Sprite对象87
6.2 精灵的性能优化88
6.2.1 使用纹理图集89
6.2.2 使用精灵帧缓存91
本章小结93
第7章 场景与层94
7.1 场景与层的关系94
7.2 场景切换94
7.2.1 场景切换相关函数94
7.2.2 场景过渡动画99
7.3 场景的生命周期101
7.3.1 生命周期函数101
7.3.2 多场景切换生命周期103
本章小结105
第8章 动作、特效和动画106
8.1 动作106
8.1.1 瞬时动作107
8.1.2 间隔动作111
8.1.3 组合动作116
8.1.4 动作速度控制120
8.1.5 函数调用123
8.2 特效126
8.2.1 网格动作127
8.2.2 实例:特效演示127
8.3 动画129
8.3.1 帧动画129
8.3.2 实例:帧动画使用129
本章小结132
第9章 用户事件133
9.1 事件处理机制133
9.1.1 事件分发器134
9.1.2 触摸事件135
9.1.3 实例:单点触摸事件137
9.1.4 实例:多点触摸事件140
9.1.5 键盘事件142
9.2 加速度计与加速度事件144
9.2.1 加速度计144
9.2.2 加速度计事件144
9.2.3 实例:运动的小球145
本章小结146
第二篇 进阶篇149
第10章 游戏背景音乐与音效149
10.1 Cocos2d-x Lua API中音频文件149
10.1.1 音频文件介绍149
10.1.2 Cocos2d-x跨平台音频支持150
10.2 使用AudioEngine引擎151
10.2.1 音频文件的预处理151
10.2.2 播放背景音乐152
10.2.3 停止播放背景音乐154
10.3 实例:设置背景音乐与音效156
10.3.1 GameScene场景实现156
10.3.2 SettingScene场景实现158
本章小结161
第11章 粒子系统162
11.1 问题的提出162
11.2 粒子系统基本概念163
11.2.1 实例:打火机163
11.2.2 粒子发射模式165
11.2.3 粒子系统属性165
11.3 内置粒子系统167
11.3.1 内置粒子系统167
11.3.2 实例:内置粒子系统168
11.4 自定义粒子系统170
11.4.1 代码创建171
11.4.2 plist文件创建173
本章小结176
第12章 瓦片地图177
12.1 地图性能问题177
12.2 瓦片地图API178
12.3 实例:忍者无敌180
12.3.1 设计地图180
12.3.2 程序中加载地图181
12.3.3 移动精灵182
12.3.4 检测碰撞184
12.3.5 滚动地图187
本章小结190
第13章 物理引擎191
13.1 使用物理引擎192
13.1.1 物理引擎核心概念192
13.1.2 物理引擎与精灵关系193
13.2 Cocos2d-x中物理引擎193
13.2.1 Cocos2d-x物理引擎Lua API193
13.2.2 实例:HelloPhysicsWorld197
13.2.3 实例:接触与碰撞检测200
13.2.4 实例:使用关节203
本章小结205
第14章 Cocos2d-x GUI控件206
14.1 按钮207
14.2 ImageView209
14.3 文本控件210
14.3.1 Text210
14.3.2 TextBMFont210
14.3.3 Rich Text211
14.4 RadioButton和RadioButtonGroup213
14.5 CheckBox215
14.6 LoadingBar217
14.7 滑块控件218
本章小结220
第15章 Cocos2d-x中的3D特性221
15.1 一些3D概念221
15.1.1 网格和模型221
15.1.2 相机221
15.1.3 投影221
15.2 使用3D精灵223
15.2.1 创建Sprite3D对象223
15.2.2 实例:使用模型和纹理Sprite3D对象223
15.3 3D模型文件格式226
15.4 使用相机227
15.4.1 创建和设置Camera对象227
15.4.2 实例:使用Camera对象227
15.5 3D粒子系统229
15.5.1 创建PUParticleSystem3D对象229
15.5.2 实例:创建Particle Universe 3D粒子229
本章小结231
第三篇 数据与网络篇235
第16章 文件访问操作和数据持久化235
16.1 使用FileUtils访问文件235
16.1.1 Cocos2d-x Lua API中的目录235
16.1.2 实例:读取文件236
16.1.3 实例:路径搜索238
16.2 持久化概述239
16.3 UserDefault数据持久化240
16.3.1 UserDefault API240
16.3.2 实例:保存背景音乐和音效设置241
16.4 属性列表数据持久化245
16.4.1 属性列表概述245
16.4.2 实例:访问根为字典结构的属性列表文件246
16.4.3 实例:访问根为列表结构的属性列表文件249
本章小结251
第17章 基于HTTP网络通信252
17.1 网络结构252
17.1.1 客户端服务器结构网络252
17.1.2 点对点结构网络253
17.2 HTTP与HTTPS协议253
17.3 使用XMLHttpRequest对象开发客户端254
17.3.1 使用XMLHttpRequest对象254
17.3.2 实例:MyNotes255
17.4 数据交换格式259
17.5 JSON数据交换格式261
17.5.1 文档结构261
17.5.2 JSON解码与编码262
17.5.3 实例:完善MyNotes264
本章小结267
第18章 Node.js与WebSocket网络通信268
18.1 Node.js268
18.1.1 Node.js安装268
18.1.2 Node.js测试269
18.2 使用WebSocket270
18.2.1 使用Node.js开发WebSocket服务器端程序271
18.2.2 Cocos2d-x Lua API客户端272
本章小结275
第四篇 优化篇279
第19章 性能优化279
19.1 合理使用缓存279
19.1.1 场景与资源279
19.1.2 缓存创建和清除时机280
19.2 图片与纹理优化284
19.2.1 选择图片格式284
19.2.2 拼图285
19.2.3 纹理像素格式286
19.2.4 纹理缓存异步加载287
19.2.5 背景图片优化290
19.3 声音优化291
19.3.1 声音格式优化291
19.3.2 声音预处理与清除292
本章小结293
第五篇 多平台移植篇297
第20章 移植到Android平台297
20.1 搭建交叉编译和打包环境297
20.1.1 Android SDK安装300
20.1.2 管理Android SDK301
20.1.3 管理Android开发模拟器302
20.1.4 Android NDK安装304
20.1.5 设置环境变量304
20.2 交叉编译、打包和运行306
20.2.1 使用cocos命令行工具306
20.2.2 Android.mk编译文件306
20.3 移植问题汇总309
20.3.1 Lua文件编译问题309
20.3.2 横屏与竖屏设置问题309
本章小结310
第21章 移植到iOS平台311
21.1 iOS开发环境搭建311
21.1.1 Xcode安装和卸载311
21.1.2 Xcode操作界面313
21.2 编译与运行315
21.3 移植问题汇总317
21.3.1 iOS平台声音移植问题317
21.3.2 使用PVR纹理格式319
21.3.3 横屏与竖屏设置问题320
21.4 多分辨率屏幕适配320
21.4.1 问题的提出321
21.4.2 Cocos2d-x Lua API屏幕适配321
21.4.3 分辨率策略324
21.4.4 纹理图集资源适配326
21.4.5 瓦片地图资源适配328
本章小结328
第六篇 实战篇331
第22章 使用Git管理程序代码版本331
22.1 代码版本管理工具——Git331
22.1.1 版本控制历史331
22.1.2 术语和基本概念332
22.1.3 Git环境配置332
22.1.4 Git常用命令333
22.2 代码托管服务——GitHub335
22.2.1 创建和配置GitHub账号336
22.2.2 创建代码库339
22.2.3 删除代码库341
22.2.4 派生代码库341
22.2.5 GitHub协同开发344
22.3 实例:Cocos2d-x游戏项目协同开发345
22.3.1 提交到GitHub代码库345
22.3.2 克隆GitHub代码库348
22.3.3 重新获得GitHub代码库348
本章小结349
第23章 Cocos2d-x Lua API敏捷开发项目实战——迷失航线手机游戏350
23.1 迷失航线游戏分析与设计350
23.1.1 迷失航线故事背景350
23.1.2 需求分析350
23.1.3 原型设计351
23.1.4 游戏脚本352
23.2 任务1:游戏工程的创建与初始化353
23.2.1 迭代1.1:创建工程353
23.2.2 迭代1.2:添加资源文件353
23.2.3 迭代1.3:添加常量文件SystemConst.lua355
23.2.4 迭代1.4:多分辨率支持357
23.2.5 迭代1.5:发布到GitHub359
23.3 任务2:创建Loading场景359
23.3.1 迭代2.1:添加场景和层359
23.3.2 迭代2.2:Loading动画361
23.3.3 迭代2.3:异步加载纹理缓存362
23.4 任务3:创建Home场景363
23.4.1 迭代3.1:添加场景和层363
23.4.2 迭代3.2:添加菜单364
23.5 任务4:创建设置场景366
23.6 任务5:创建帮助场景368
23.7 任务6:游戏场景实现368
23.7.1 迭代6.1:创建敌人精灵369
23.7.2 迭代6.2:创建玩家飞机精灵373
23.7.3 迭代6.3:创建炮弹精灵375
23.7.4 迭代6.4:初始化游戏场景377
23.7.5 迭代6.5:游戏场景菜单实现381
23.7.6 迭代6.6:玩家飞机发射炮弹384
23.7.7 迭代6.7:炮弹与敌人的接触检测385
23.7.8 迭代6.8:玩家飞机与敌人的接触检测388
23.7.9 迭代6.9:玩家飞机生命值显示390
23.7.10 迭代6.10:显示玩家得分情况390
23.8 任务7:游戏结束场景391
本章小结394
第24章 把迷失航线游戏发布到Google play应用商店395
24.1 谷歌Android应用商店Google play395
24.2 “最后一公里”396
24.2.1 Lua文件编译396
24.2.2 添加图标397
24.2.3 生成数字签名文件397
24.2.4 应用程序打包398
24.3 发布产品399
24.3.1 上传APK399
24.3.2 填写商品详细信息401
24.3.3 定价和发布范围403
本章小结405
第25章 把迷失航线游戏发布到苹果App Store应用商店406
25.1 苹果的App Store406
25.2 “最后一公里”408
25.2.1 添加图标408
25.2.2 添加启动界面409
25.2.3 修改发布产品属性413
25.3 iOS设备测试415
25.3.1 Xcode设置415
25.3.2 设备设置417
25.4 为发布进行编译419
25.4.1 创建开发者证书419
25.4.2 创建App ID425
25.4.3 创建描述文件427
25.4.4 发布编译431
25.5 发布上架432
25.5.1 创建应用433
25.5.2 应用定价435
25.5.3 基本信息输入436
25.5.4 上传应用440
25.5.5 提交审核442
25.6 常见审核通不过的原因444
25.6.1 功能问题444
25.6.2 用户界面问题444
25.6.3 商业问题444
25.6.4 不当内容445
25.6.5 其他问题445
本章小结445