第一篇 基础知识 3
第1章 小游戏 3
1.1初识小游戏 3
1.1.1小游戏是什么 3
1.1.2微信小游戏 4
1.1.3微信小游戏官方开发工具 5
1.2 Cocos Creator游戏引擎 6
1.2.1关于Cocos Creator 6
1.2.2 Cocos Creator工作流程 7
1.2.3 Cocos Creator技术架构 8
1.3 Cocos Creator的安装与启动 10
1.3.1下载与安装 10
1.3.2 Dashboard 11
1.4 Hello World 12
1.4.1打开项目 12
1.4.2编写项目 13
1.5项目结构 15
第2章 编辑器 17
2.1资源管理器 18
2.1.1资源管理器面板 18
2.1.2资源管理 19
2.2场景编辑器 20
2.2.1场景编辑器面板 20
2.2.2场景编辑器的使用 20
2.3层级管理器 23
2.3.1层级管理器面板 23
2.3.2层级管理器的使用 24
2.4属性检查器 25
2.4.1属性检查器面板 25
2.4.2属性检查器的介绍 26
2.5设置 27
2.5.1编辑器设置 27
2.5.2项目设置 31
2.6其他 32
2.6.1控制台 32
2.6.2主菜单 33
2.6.3工具栏 34
2.6.4编辑器布局 35
2.6.5控件库 35
2.6.6构建预览 36
第3章 脚本开发 38
3.1认识脚本 38
3.1.1创建和使用脚本 38
3.1.2添加脚本到场景节点中 39
3.1.3 cc.Class 40
3.1.4访问节点和其他组件 44
3.1.5常用节点和组件接口 48
3.2脚本常用函数与方法 50
3.2.1生命周期 50
3.2.2创建和销毁节点 52
3.2.3加载和切换场景 55
3.2.4获取和加载资源 55
3.3事件 59
3.3.1监听事件和发射事件 59
3.3.2系统内置事件 61
3.3.3玩家输入事件 63
3.4动作系统 65
3.4.1使用动作系统 65
3.4.2计时器 70
3.5脚本 71
3.5.1脚本的执行顺序 71
3.5.2模块化脚本 74
3.5.3插件脚本 76
3.5.4 TypeScript脚本 77
3.6其他 77
3.6.1网络接口 77
3.6.2对象池 78
3.6.3代码分包加载 80
第4章 子系统 82
4.1图像和渲染 82
4.1.1 Sprite组件:图像显示 82
4.1.2 Label组件:文本显示 85
4.1.3 Mask组件:约束组件 86
4.2外部资源渲染 87
4.2.1 ParticleSystem组件:粒子读取组件 87
4.2.2 TiledMap组件:地图组件 89
4.2.3 Spine组件:骨骼动画的播放、渲染组件 90
4.2.4 DragonBones组件:骨骼动画资源的播放、渲染组件 90
4.2.5 VideoPlayer组件:视频播放组件 91
4.2.6 WebView组件:网页显示组件 94
4.3摄像机 96
4.3.1摄像机属性 96
4.3.2摄像机方法 97
4.4绘图系统 101
4.5动画系统 102
4.5.1 Animation组件 102
4.5.2动画事件 103
4.6物理系统 107
4.6.1碰撞系统 107
4.6.2物理引擎 110
4.7音乐和音效 115
第5章 UI系统 117
5.1适配 117
5.1.1多分辨率适配 117
5.1.2对齐挂件 119
5.1.3文字排版 119
5.1.4自动布局容器 120
5.2 UI组件 121
5.2.1 Canvas组件 121
5.2.2 Widget组件 121
5.2.3 Button组件 122
5.2.4 Layout组件 125
5.2.5 EditBox组件 126
5.2.6 ScrollView组件 129
5.2.7 ScrollBar组件 132
5.2.8 ProgressBar组件 132
5.2.9 Toggle组件 133
5.2.10 ToggleGroup组件 135
5.2.11 Slider组件 135
5.2.12 PageView组件 137
5.2.13 PageViewlndicator组件 140
5.2.14 BlockInputEvents组件 140
5.3制作拉伸图像和动态列表 141
5.3.1制作拉伸图像 141
5.3.2制作动态列表 141
第6章 Cocos Creator提高 145
6.1开放数据域 145
6.1.1开放数据域介绍 145
6.1.2开放数据域示例 146
6.2资源、数据管理 151
6.2.1资源管理——meta文件 151
6.2.2存储和读取数据 153
6.2.3热更新 154
6.3扩展补充 155
6.3.1扩展编辑器 155
6.3.2 SDK集成 162
6.3.3管理项目资源 165
第二篇 实战案例 171
第7章 精准射击 171
7.1项目初始化 171
7.2脚本编写 172
第8章 摇杆控制 175
8.1项目初始化 175
8.2脚本编写 176
第9章 跳一跳 182
9.1准备项目和资源 183
9.2创建游戏场景 183
9.3创建游戏主角的脚本 185
9.4创建游戏控制脚本 188
第10章 地图路径 191
10.1项目初始化 191
10.2脚本编写 193
第11章 触摸控制角色移动射击 199
11.1项目初始化 199
11.2脚本编写 200
第12章 NPC的控制 205
12.1项目初始化 205
12.2脚本编写 206
第13章 天气效果——雨 211
13.1项目初始化 211
13.2脚本编辑 212
第14章 打地鼠 217
14.1项目初始化 217
14.2脚本编辑 218
第15章 消消乐 223
15.1项目初始化 224
15.2脚本编辑 225
第16章 捕鱼达人 245
16.1项目初始化 245
16.2脚本编辑 247
第17章 趣味套牛 257
17.1项目初始化 257
17.1.1创建项目 258
17.1.2项目资源 258
17.2搭建游戏场景 259
17.2.1创建游戏场景 259
17.2.2设置游戏场景图片 259
17.3按钮控制套绳套牛 261
17.3.1单击事件 261
17.3.2控制绳子移动 262
17.4游戏核心——套牛 263
17.4.1游戏动画脚本 264
17.4.2编写游戏逻辑脚本 266
17.4.3构建牛的预制体 269
17.5套牛玩法 270
17.5.1随机产生一头牛 270
17.5.2对套牛成功、失败的判断 272
17.6构建发布 276
17.6.1构建发布游戏项目 276
17.6.2微信小游戏 279
第18章 趣味桌球 280
18.1项目初始化 281
18.1.1创建项目 281
18.1.2搭建游戏场景 281
18.2脚本编写 284
18.2.1开启物理引擎 284
18.2.2白球的碰撞检测 285
18.2.3球杆击球 287
18.2.4球的碰撞检测 290
18.2.5重新开始游戏 292
第19章 点我+1 294
19.1项目初始化 295
19.1.1创建项目 295
19.1.2搭建游戏场景 295
19.1.3搭建游戏结束场景 296
19.2开始游戏 297
19.2.1开始游戏页面 297
19.2.2场景切换、播放音乐 298
19.3主游戏场景脚本编写 300
19.3.1主游戏页面初始化 300
19.3.2主游戏页面游戏逻辑实现 310
19.3.3主游戏页面游戏逻辑完整脚本 322
19.4游戏结束页面 331
第20章 跑酷 335
20.1项目初始化 335
20.2游戏场景实现 336
20.2.1循环的游戏场景 337
20.2.2不断出现的台阶 338
20.2.3随机生成金币 342
20.3收集金币 348
第21章 抽奖游戏 359
21.1转盘抽奖游戏 359
21.1.1创建项目 360
21.1.2搭建弱联网服务器 360
21.1.3脚本编辑 361
21.2街机抽奖游戏 369
21.2.1项目初始化 369
21.2.2脚本编辑 370
第22章 疯狂坦克 375
22.1项目初始化 376
22.1.1创建项目 376
22.1.2搭建游戏场景 376
22.2脚本编辑 377
22.2.1开始游戏页面 378
22.2.2主游戏页面 379
22.2.3主游戏脚本 384
第23章 橡皮怪 422
23.1项目初始化 423
23.1.1创建项目 423
23.1.2搭建游戏场景 423
23.1.3搭建游戏结束场景 424
23.2脚本编辑 424
23.2.1开始游戏页面 425
23.2.2主游戏页面 426
23.2.3游戏结束页面 439
第24章 棍子英雄 441
24.1项目初始化 442
24.1.1创建项目 442
24.1.2搭建游戏场景 443
24.2脚本编辑 443
24.2.1开始游戏页面 443
24.2.2主游戏页面 446