第1篇基礎篇第1章編寫第一個SpriteKit程序 2
1.1SpriteKit介紹 2
1.1.1什么是SpriteKit 2
1.1.2SpriteKit優缺點 2
1.2蘋果賬號的注冊 3
1.2.1蘋果賬號的分類 3
1.2.2注冊免費蘋果賬號 3
1.2.3注冊非免費蘋果賬號 7
1.3Xcode的下載和安裝 9
1.3.1AppStore上下載和安裝Xcode 9
1.3.2其他的網站上下載Xcode 12
1.4綁定蘋果賬號 13
1.5更新組件與文檔 14
1.6編寫第一個程序 15
1.6.1創建項目 16
1.6.2Xcode界面介紹 18
1.6.3運行程序 20
1.6.4模擬器介紹 21
1.6.5場景編輯器 29
1.6.6編寫代碼 31
1.7使用幫助文檔 32
1.8調試 34
1.9真機測試 36
1.9.1申請和下載證書 36
1.9.2實現真機測試 45
第2章場景 46
2.1添加場景 46
2.2顯示新增的場景 49
2.3設置場景 50
2.3.1設置場景的背景顏色 50
2.3.2設置場景的縮放模式 52
2.3.3設置測試信息 54
2.4切換場景 57
2.4.1單純的場景切換 59
2.4.2具有過渡動畫的場景 59
2.5滾動場景 61
2.5.1讓場景進行滾動 62
2.5.2永無休止的滾動場景 66
第3章精靈 69
3.1節點介紹 69
3.2添加圖像到項目中 70
3.3顯示精靈 71
3.3.1使用場景編輯器顯示精靈 71
3.3.2使用代碼顯示無紋理的精靈 74
3.3.3使用代碼顯示紋理精靈 74
3.4設置精靈 76
3.4.1設置精靈的位置 76
3.4.2設置錨點 77
3.4.3對精靈著色 78
3.4.4調整精靈的尺寸 79
3.4.5縮放精靈 81
3.4.6旋轉精靈 83
3.4.7設置精靈的透明度 84
3.4.8隱藏精靈 85
3.5刪除精靈 86
3.5.1刪除指定的精靈 87
3.5.2刪除所有精靈 87
3.6讓精靈更具真實感 88
3.7移動精靈 92
3.8紋理 96
3.8.1紋理的創建 96
3.8.2紋理的顯示 96
第4章動作 98
4.1移動動作 98
4.1.1以點的方式移動 99
4.1.2以偏移量的方式移動 101
4.2序列動作 103
4.3重復動作 105
4.3.1無限重復 105
4.3.2具有次數的重復 107
4.4延遲動作 108
4.5縮放動作 111
4.5.1以縮放倍數縮放 111
4.5.2以增量值縮放 113
4.6旋轉動作 116
4.7調整尺寸的動作 117
4.7.1以目標值調整尺寸 117
4.7.2以增量調整尺寸 119
4.8組合動作 120
4.9改變透明度的動作 122
4.9.1不需指定alpha值 122
4.9.2指定alpha值 123
4.10改變顏色的動作 126
4.10.1改變混合因子 127
4.10.2改變顏色和混合因子 128
4.11以動畫的形式改變紋理的動作 129
4.12路徑動作 131
4.13反向運動 133
4.14速度動作 134
4.15顯示或隱藏動作 136
4.16塊動作 137
4.17自定義的動作 138
4.18動作屬性 140
4.18.1速度 140
4.18.2時間 141
4.18.3曲線方式 142
4.19刪除動作 144
第5章用戶交互 146
5.1觸摸 146
5.1.1輕拍觸摸 146
5.1.2移動觸摸 149
5.1.3結束觸摸和取消觸摸 154
5.2手勢 157
5.2.1輕拍 157
5.2.2捏 159
5.2.3旋轉 160
5.2.4移動 161
5.2.5滑動 163
5.2.6長按 166
5.3重力感應 169
5.3.1場景布局 172
5.3.2判斷重力感應是否可用 172
5.3.3使用重力感應移動飛船 174
第2篇進階篇
第6章游戲中的文字 178
6.1顯示標簽 178
6.1.1使用場景編輯器顯示標簽 178
6.1.2使用代碼實現標簽 180
6.2設置標簽 182
6.2.1設置文字大小 182
6.2.2設置文字的顏色 183
6.2.3設置標簽顯示的文字 185
6.2.4設置文字的字體 186
6.3為標簽加載自定義的字體 188
6.4標簽的對齊方式 192
6.4.1水平對齊 193
6.4.2垂直對齊 195
6.5為標簽添加動作 196
第7章音頻和視頻 199
7.1背景音樂 199
7.1.1添加背景音樂 199
7.1.2控制背景音樂 203
7.1.3設置音樂的播放點 205
7.1.4設置音量 207
7.1.5設置循環播放 209
7.2音效 210
7.2.1AVFoundation.framework框架 210
7.2.2使用AudioToolbox.framework框架 214
7.2.3使用playSoundFileNamed()方法 216
7.3視頻 218
7.3.1添加視頻 219
7.3.2控制視頻 220
第8章粒子系統 223
8.1使用粒子系統編輯器添加粒子系統 223
8.2使用場景編輯器實現添加粒子系統 229
8.3粒子發射器中的參數說明 231
8.4使用代碼實現粒子系統 233
8.5使用關鍵幀序列配置粒子屬性 236
8.6給粒子添加動作 237
8.6.1使用runAction()方法添加動作 237
8.6.2使用particleAction屬性添加動作 239
8.7重置粒子系統 240
第9章SpriteKit中其他節點 243
9.1修剪節點 243
9.2形狀節點 245
9.2.1使用場景編輯器添加形狀節點 245
9.2.2使用代碼添加形狀節點 247
9.2.3個性化形狀 252
9.2.4設置形狀的路徑 257
9.3效果節點 258
第3篇高級篇
第10章物理引擎與碰撞 262
10.1什么是物理引擎 262
10.2使用場景編輯器添加物理引擎 263
10.3使用代碼添加物理引擎 265
10.3.1創建簡單的物理體 265
10.3.2添加物理體 266
10.3.3創建自定義的物理體 267
10.3.4為物理體添加邊界 268
10.3.5可視化物理體 271
10.4物理引擎的屬性設置 275
10.5讓物理體進行移動 278
10.6物理體連接 280
10.7在游戲中的碰撞 283
10.7.1最簡單的碰撞——if語句 283
10.7.2使用intersectsNode()方法 286
10.7.3使用物理引擎 294
第11章瓦片地圖 298
11.1創建瓦片地圖 298
11.2設置瓦片地圖 302
11.2.1縮放模式 302
11.2.2過濾模式 303
11.2.3顛倒地圖 304
11.2.4隨機生成瓦片 305
11.3加載TXT文件到地圖中 306
11.3.1添加TXT文件 306
11.3.2設置TXT文件中的內容 310
11.3.3加載內容到地圖中 310
11.4加載TML文件到地圖中 313
11.4.1軟件下載與安裝 313
11.4.2用TexturePacker創建圖塊 318
11.4.3用Tield繪制地圖 323
11.4.4加載TML文件 327
11.5滾動地圖 333
11.6添加移動精靈 336
11.6.1添加精靈 337
11.6.2移動精靈 338
10.7在瓦片地圖上的碰撞 345
第12章發布應用程序 349
12.1創建AppID 349
12.2申請發布證書 351
12.2.1申請證書 351
12.2.2申請證書對應的配置文件(ProvisionFile) 353
12.3準備提交應用程序 356
12.3.1創建應用及基本信息 356
12.3.2項目的相關設置 360
12.4提交應用程序到AppStore上 366
12.4.1ApplicationLoader 366
12.4.2Archives 371
12.5常見審核不通過的原因 373