Cocos2d是一個(gè)開源框架,可用于構(gòu)建游戲和應(yīng)用程序,它可以讓用戶在創(chuàng)建自己的多平臺游戲時(shí)節(jié)省很多的時(shí)間。
本書介紹了使用Cocos2d進(jìn)行跨平臺游戲開發(fā)的相關(guān)知識。全書內(nèi)容共分為11章,分別介紹了精靈與動(dòng)畫、場景與菜單、各類交互方法、物理引擎、聲音、AI與A*尋路、數(shù)據(jù)存儲(chǔ)與取回、游戲效果、輔助工具、Swift/SpriteBuilder,同時(shí)還介紹了如何將所開發(fā)的游戲移植到Android平臺下。
本書經(jīng)過了精心編排和設(shè)計(jì),包含豐富且實(shí)用的開發(fā)示例,能夠讓讀者輕松獲取知識并掌握開發(fā)技巧,非常適合對Cocos2d有一些了解的讀者閱讀,也適合有相關(guān)游戲開發(fā)經(jīng)驗(yàn)的人員閱讀。
Siddharth Shekar,是一位游戲開發(fā)者,擁有超過5年的游戲行業(yè)開發(fā)經(jīng)驗(yàn)。他開發(fā)了幾款游戲,并把它們發(fā)布到iOS、Android、Windows Phone App Stores中。
除了開發(fā)游戲之外,他還在較大的工程院校開設(shè)游戲開發(fā)講習(xí)班,在游戲開發(fā)機(jī)構(gòu)擔(dān)任客座講師。Siddharth也是《Learning Cocos2d-x Game Development》與《Learning iOS 8 Game Development Using Swift》兩本書的作者。
Siddharth Shekar,是一位游戲開發(fā)者,擁有超過5年的游戲行業(yè)開發(fā)經(jīng)驗(yàn)。他開發(fā)了幾款游戲,并把它們發(fā)布到iOS、Android、Windows Phone App Stores中。
除了開發(fā)游戲之外,他還在較大的工程院校開設(shè)游戲開發(fā)講習(xí)班,在游戲開發(fā)機(jī)構(gòu)擔(dān)任客座講師。Siddharth也是《Learning Cocos2d-x Game Development》與《Learning iOS 8 Game Development Using Swift》兩本書的作者。
第1章 精靈與動(dòng)畫 1
1.1 內(nèi)容簡介 1
1.2 下載并安裝Coscos2d 2
1.2.1 準(zhǔn)備工作 2
1.2.2 操作步驟 5
1.2.3 工作原理 7
1.3 2D坐標(biāo)系統(tǒng) 7
1.4 訪問主場景(MainScene) 8
1.4.1 準(zhǔn)備工作 8
1.4.2 操作步驟 8
1.4.3 工作原理 11
1.5 添加精靈到場景 11
1.5.1 準(zhǔn)備工作 11
1.5.2 操作步驟 12
1.5.3 工作原理 13
1.6 使用RenderTexture創(chuàng)建精靈 13
1.6.1 準(zhǔn)備工作 13
1.6.2 操作步驟 14
1.6.3 工作原理 15
1.6.4 更多內(nèi)容 16
1.7 創(chuàng)建自定義精靈類 16
1.7.1 準(zhǔn)備工作 17
1.7.2 操作步驟 18
1.7.3 工作原理 19
1.8 讓精靈動(dòng)起來 20
1.8.1 準(zhǔn)備工作 20
1.8.2 操作步驟 20
1.8.3 工作原理 22
1.9 添加動(dòng)作到精靈 23
1.9.1 準(zhǔn)備工作 23
1.9.2 操作步驟 23
1.9.3 工作原理 23
1.9.4 更多內(nèi)容 24
1.10 繪制gIPrimitives 26
1.10.1 準(zhǔn)備工作 26
1.10.2 操作步驟 26
1.10.3 工作原理 27
1.10.4 更多內(nèi)容 27
1.11 添加視差效果 31
1.11.1 準(zhǔn)備工作 31
1.11.2 操作步驟 32
1.11.3 工作原理 35
第2章 場景與菜單 37
2.1 內(nèi)容簡介 37
2.2 添加主菜單(MainMenu)場景 38
2.2.1 準(zhǔn)備工作 38
2.2.2 操作步驟 38
2.2.3 工作原理 39
2.3 使用CCLabel添加文本 40
2.3.1 準(zhǔn)備工作 40
2.3.2 操作步驟 41
2.3.3 工作原理 41
2.3.4 更多內(nèi)容 42
2.4 使用CCMenu向場景添加按鈕 43
2.4.1 準(zhǔn)備工作 43
2.4.2 操作步驟 44
2.4.3 工作原理 46
2.5 添加Gameplay場景 46
2.5.1 準(zhǔn)備工作 46
2.5.2 操作步驟 46
2.5.3 工作原理 48
2.6 在場景之間進(jìn)行過渡切換 49
2.6.1 準(zhǔn)備工作 49
2.6.2 操作步驟 49
2.6.3 工作原理 49
2.6.4 更多內(nèi)容 50
2.7 添加過渡效果 51
2.7.1 準(zhǔn)備工作 51
2.7.2 操作步驟 51
2.7.3 工作原理 51
2.7.4 更多內(nèi)容 52
2.8 添加難度選擇場景 53
2.8.1 準(zhǔn)備工作 53
2.8.2 操作步驟 53
2.8.3 工作原理 60
2.9 滾動(dòng)難度級別選擇場景 63
2.9.1 準(zhǔn)備工作 63
2.9.2 操作步驟 64
2.9.3 工作原理 69
第3章 手勢、觸屏與加速度傳感器 72
3.1 內(nèi)容簡介 72
3.2 理解輕掃手勢 73
3.2.1 準(zhǔn)備工作 73
3.2.2 操作步驟 74
3.2.3 工作原理 75
3.2.4 更多內(nèi)容 76
3.3 實(shí)現(xiàn)輕擊手勢 77
3.3.1 準(zhǔn)備工作 77
3.3.2 操作步驟 77
3.3.3 工作原理 78
3.4 添加長按手勢 78
3.4.1 準(zhǔn)備工作 78
3.4.2 操作步驟 78
3.4.3 工作原理 79
3.5 添加捏合/縮放控制 80
3.5.1 準(zhǔn)備工作 80
3.5.2 操作步驟 80
3.5.3 工作原理 81
3.6 添加旋轉(zhuǎn)手勢 82
3.6.1 準(zhǔn)備工作 82
3.6.2 操作步驟 82
3.6.3 工作原理 83
3.7 添加拖動(dòng)手勢(Pan Gesture) 84
3.7.1 準(zhǔn)備工作 84
3.7.2 操作步驟 84
3.7.3 工作原理 85
3.8 添加觸屏動(dòng)作 86
3.8.1 準(zhǔn)備工作 86
3.8.2 操作步驟 86
3.8.3 工作原理 87
3.9 使用touchBegan創(chuàng)建對象 88
3.9.1 準(zhǔn)備工作 88
3.9.2 操作步驟 88
3.9.3 工作原理 88
3.9.4 更多內(nèi)容 89
3.10 使用touchMoved移動(dòng)對象 91
3.10.1 準(zhǔn)備工作 91
3.10.2 操作步驟 91
3.10.3 工作原理 92
3.11 在精靈類中自定義觸屏動(dòng)作 92
3.11.1 準(zhǔn)備工作 92
3.11.2 操作步驟 92
3.11.3 工作原理 93
3.12 添加加速度傳感器 95
3.12.1 準(zhǔn)備工作 95
3.12.2 操作步驟 95
3.12.3 工作原理 96
3.13 添加方向鍵面板 97
3.13.1 準(zhǔn)備工作 97
3.13.2 操作步驟 97
3.13.3 工作原理 101
3.13.4 更多內(nèi)容 101
第4章 物理引擎(Physics) 103
4.1 內(nèi)容簡介 103
4.2 添加physics到游戲場景 104
4.2.1 準(zhǔn)備工作 104
4.2.2 操作步驟 104
4.3 添加物理對象 106
4.3.1 準(zhǔn)備工作 106
4.3.2 操作步驟 106
4.3.3 工作原理 107
4.4 了解不同的body類型 108
4.4.1 準(zhǔn)備工作 108
4.4.2 操作步驟 108
4.4.3 工作原理 110
4.5 向物理對象添加精靈紋理 112
4.5.1 準(zhǔn)備工作 112
4.5.2 操作步驟 112
4.5.3 工作原理 114
4.6 創(chuàng)建復(fù)合體 114
4.6.1 準(zhǔn)備工作 114
4.6.2 操作步驟 115
4.6.3 工作原理 116
4.7 創(chuàng)建復(fù)雜形狀 117
4.7.1 準(zhǔn)備工作 117
4.7.2 操作步驟 119
4.7.3 工作原理 120
4.8 修改body屬性 122
4.8.1 準(zhǔn)備工作 122
4.8.2 操作步驟 122
4.8.3 操作步驟 123
4.8.4 更多內(nèi)容 123
4.9 使用觸摸控制施加沖量 124
4.9.1 準(zhǔn)備工作 124
4.9.2 操作步驟 124
4.9.3 工作原理 125
4.10 通過加速度計(jì)添加作用力 127
4.10.1 準(zhǔn)備工作 127
4.10.2 操作步驟 128
4.10.3 工作原理 129
4.11 碰撞檢測 129
4.11.1 準(zhǔn)備工作 129
4.11.2 操作步驟 130
4.11.3 工作原理 132
4.12 添加旋轉(zhuǎn)關(guān)節(jié) 134
4.12.1 準(zhǔn)備工作 134
4.12.2 操作步驟 134
4.12.3 工作原理 136
4.13 添加馬達(dá)關(guān)節(jié) 136
4.13.1 準(zhǔn)備工作 136
4.13.2 操作步驟 137
4.13.3 工作原理 138
4.14 添加游戲主循環(huán)與計(jì)分 138
4.14.1 準(zhǔn)備工作 138
4.14.2 操作步驟 139
4.14.3 工作原理 142
第5章 聲音 144
5.1 內(nèi)容簡介 144
5.2 添加背景音樂 144
5.2.1 準(zhǔn)備工作 145
5.2.2 操作步驟 149
5.2.3 工作原理 149
5.3 添加音效 150
5.3.1 準(zhǔn)備工作 150
5.3.2 操作步驟 150
5.3.3 工作原理 151
5.4 添加靜音按鈕 151
5.4.1 準(zhǔn)備工作 152
5.4.2 操作步驟 153
5.4.3 工作原理 155
5.5 添加音量滑塊 156
5.5.1 準(zhǔn)備工作 157
5.5.2 操作步驟 157
5.5.3 工作原理 159
5.6 添加暫停與繼續(xù)按鈕 159
5.6.1 準(zhǔn)備工作 160
5.6.2 操作步驟 160
5.6.3 工作原理 161
第6章 游戲AI與A*尋路 163
6.1 內(nèi)容簡介 163
6.2 敵人巡邏行為 163
6.2.1 準(zhǔn)備工作 164
6.2.2 操作步驟 164
6.2.3 工作原理 169
6.3 拋射體射擊敵人 172
6.3.1 準(zhǔn)備工作 172
6.3.2 操作步驟 173
6.3.3 工作原理 179
6.4 敵人追趕行為 180
6.4.1 準(zhǔn)備工作 181
6.4.2 操作步驟 181
6.4.3 工作原理 184
6.5 A*尋路 186
6.5.1 準(zhǔn)備工作 186
6.5.2 操作步驟 186
6.5.3 工作原理 198
第7章 數(shù)據(jù)存儲(chǔ)與取回 200
7.1 內(nèi)容簡介 200
7.2 加載XML文件數(shù)據(jù) 201
7.2.1 準(zhǔn)備工作 201
7.2.2 操作步驟 202
7.2.3 工作原理 206
7.3 存儲(chǔ)數(shù)據(jù)到XML文件 207
7.3.1 操作步驟 207
7.3.2 工作原理 209
7.4 從JSON文件加載數(shù)據(jù) 210
7.4.1 準(zhǔn)備工作 210
7.4.2 操作步驟 212
7.4.3 工作原理 214
7.5 從PLIST文件加載數(shù)據(jù) 214
7.5.1 準(zhǔn)備工作 215
7.5.2 操作步驟 216
7.5.3 工作原理 217
7.6 存儲(chǔ)數(shù)據(jù)到PLIST文件 218
7.6.1 準(zhǔn)備工作 218
7.6.2 操作步驟 218
7.6.3 工作原理 222
7.7 使用NSUserDefaults 223
7.7.1 操作步驟 223
7.7.2 工作原理 224
第8章 效果 225
8.1 內(nèi)容簡介 225
8.2 CCEffects 225
8.2.1 準(zhǔn)備工作 226
8.2.2 操作步驟 226
8.2.3 工作原理 232
8.3 添加玻璃效果 233
8.3.1 準(zhǔn)備工作 233
8.3.2 操作步驟 233
8.3.3 工作原理 234
8.4 添加拖尾效果 235
8.4.1 準(zhǔn)備工作 235
8.4.2 操作步驟 235
8.4.3 工作原理 236
8.5 添加粒子效果 237
8.5.1 準(zhǔn)備工作 237
8.5.2 操作步驟 237
8.5.3 工作原理 238
8.5.4 更多內(nèi)容 239
8.6 添加2D照明 241
8.6.1 準(zhǔn)備工作 241
8.6.2 操作步驟 244
8.6.3 工作原理 245
8.6.4 更多內(nèi)容 246
第9章 游戲開發(fā)輔助工具 252
9.1 內(nèi)容簡介 252
9.2 Glyph Designer 253
9.2.1 準(zhǔn)備工作 253
9.2.2 操作步驟 255
9.2.3 工作原理 256
9.3 粒子系統(tǒng) 257
9.3.1 準(zhǔn)備工作 257
9.3.2 操作步驟 263
9.3.3 工作原理 264
9.4 TexturePacker 264
9.4.1 準(zhǔn)備工作 265
9.4.2 工作原理 270
9.5 PhysicsEditor 271
9.5.1 準(zhǔn)備工作 271
9.5.2 操作步驟 275
9.5.3 工作原理 277
第10章 Swift/SpriteBuilder基礎(chǔ) 278
10.1 內(nèi)容簡介 278
10.2 了解Swift語法 278
10.2.1 準(zhǔn)備工作 279
10.2.2 操作步驟 279
10.3 Cocos2d Swift 305
10.3.1 準(zhǔn)備工作 305
10.3.2 操作步驟 305
10.3.3 工作原理 308
10.4 SpriteBuilder基礎(chǔ) 309
10.4.1 準(zhǔn)備工作 309
10.4.2 操作步驟 309
10.4.3 工作原理 318
第11章 移植到Android 319
11.1 內(nèi)容簡介 319
11.2 安裝Android Xcode插件 320
11.2.1 準(zhǔn)備工作 320
11.2.2 操作步驟 320
11.3 啟用設(shè)備中的USB調(diào)試功能 323
11.4 在設(shè)備上運(yùn)行SpriteBuilder項(xiàng)目 325
11.5 移植項(xiàng)目到Android中 328
11.6 No Java runtime錯(cuò)誤 334
11.7 Provision profile錯(cuò)誤 335
11.8 Blank screen錯(cuò)誤 336
11.9 有用的資源 336