《Swift遊戲開發經典實例(第三版)》是2020年中國電力出版社出版的圖書。
基本介紹
- 中文名:Swift遊戲開發經典實例(第三版)
- 出版時間:2020年1月1日
- 出版社:中國電力出版社
- ISBN:9787519840129
內容簡介,圖書目錄,
內容簡介
·設計遊戲架構,組織遊戲內容。
·用UIKit編寫界面、定製選單。
·讓遊戲能夠檢測和回響用戶輸入。
·使用音效、音樂和語音合成。
·通過iCloud存儲和訪問數據。
·用SpriteKit創建2D圖形及動畫。
·用物理引擎模擬真實世界。
·用SceneKit創建和繪製3D場景。
·設計AI系統進行用戶測試。
·添加遊戲控制,擴展顯示器以及增強現實。
圖書目錄
前言 .1
第1 章 遊戲的設計 9
1.1 設計遊戲引擎 .9
1.2 創建基於繼承的設計 10
1.3 創建基於組件的設計 12
1.4 用 GameplayKit 創建基於組件的遊戲設計 16
1.5 計算螢幕的幀刷新時間 18
1.6 進入和退出遊戲 .19
1.7 用定時器進行遊戲的刷新 22
1.8 每幀刷新 .23
1.9 遊戲暫停 .24
1.10 記錄遊戲時間 25
1.11 使用閉包 26
1.12 在方法中回調閉包 29
1.13 使用 Operation Queues .30
1.14 延遲執行 32
1.15 串列執行 33
1.16 通過閉包進行數組的過濾 34
1.17 載入遊戲資源 35
1.18 在遊戲中使用單元測試 36
.19 二維格線 39
1.20 使用隨機數 .40
1.21 編寫狀態機 .42
第2 章 視圖和選單 . 46
2.1 使用故事板 47
2.2 創建視圖控制器 .53
2.3 通過Segue 導航到不同螢幕 60
2.4 使用布局約束進行布局 65
2.5 導入圖片到項目 68
2.6 切割按鈕的背景圖片 70
2.7 用UIDynamics 創建動畫視圖 71
2.8 用Core Animation 移動圖片.74
2.9 旋轉圖片 75
2.10 實現視圖的彈起效果 77
2.11 用UIAppearance 主題化UI 樣式 79
2.12 對UIView 進行3D 旋轉 .80
2.13 在遊戲內容之上顯示選單 83
2.14 創建高效的遊戲選單 84
第3 章 輸入 . 86
3.1 偵測觸摸 87
3.2 處理輕觸手勢 .88
3.3 在螢幕上拖動圖片 .90
3.4 識別旋轉手勢 .92
3.5 識別捏合手勢 94
3.6 自定義手勢 96
3.7 在視圖的指定區域識別觸摸 .100
3.8 識別搖晃手勢 101
3.9 識別設備傾斜手勢 .102
3.10 獲得指北針方向 106
3.11 獲得用戶的位置 108
3.12 計算運動速度 112
3.13 計算用戶與目標的距離 113
3.14 當用戶進入或離開某個位置時獲得通知 . 114
3.15 通過地名獲得坐標 118
3.16 通過坐標獲得地名 119
3.17 將設備當作方向盤 121
3.18 測量磁場 122
3.19 利用輸入改善遊戲設計 124
第4 章 聲音 126
4.1 用 AVAudioPlayer 播放聲音 .126
4.2 用AVAudioRecorder 進行錄音 .130
4.3 使用多個AVAudioPlayer .131
4.4 兩個聲音間的淡入淡出 133
4.5 合成語音 .136
4.6 獲知音樂程式當前播放曲目 137
4.7 當前曲目何時改變 .140
4.8 音樂回放控制 141
4.9 讓用戶選擇音樂 142
4.10 當其他App 正在播放音樂時的操作 145
4.11 在遊戲中使用哪種聲音播放模式最好 147
第5 章 存儲數據 148
5.1 保存遊戲狀態 148
5.2 在本地保存遊戲得分 .150
5.3 用 iCloud 保存遊戲進度 .151
5.4 使用iCloud 的鍵– 值存儲 .157
5.5 何時使用檔案,何時使用資料庫 159
5.6 管理資源集 160
5.7 用NSUserDefaults 存放數據 .162
5.8 最佳數據存儲策略 .164
5.9 遊戲中的財富值 .165
5.10 保存到CloudKit 166
5.11 向CloudKit 資料庫中添加記錄 .168
5.12 查詢CloudKit 資料庫中的記錄 .169
5.13 從CloudKit 資料庫中刪除記錄 .173
第6 章 2D 圖形和Sprite Kit 175
6.1 熟悉二維數學 176
6.2 創建Sprite Kit 視圖 183
6.3 創建場景 .184
6.4 加入精靈 187
6.5 文本精靈 .188
6.6 獲取有效字型 190
6.7 使用自定義字型 .191
6.8 場景切換 191
6.9 移動精靈和標籤 194
6.10 紋理貼圖精靈 197
6.11 紋理圖集 197
6.12 形狀節點 198
6.13 混合模式 200
6.14 對精靈使用濾鏡 .201
6.15 貝塞爾曲線 202
6.16 煙霧、火焰和粒子特效 204
6.17 抖動螢幕 205
6.18 動畫精靈 207
6.19 視差滾動 208
6.20 噪聲圖 215
第7 章 物理學 217
7.1 物理學術語和定義 .217
7.2 為精靈添加物理特性 .219
7.3 靜止物體和運動物體 .220
7.4 定義碰撞體的形狀 .221
7.5 速度 224
7.6 質量、大小和密度 .224
7.7 創建牆壁 .226
7.8 設定重力 .227
7.9 讓物體無法旋轉 .229
7.10 改變物理模擬世界的時鐘 .229
7.11 碰撞檢測 230
7.12 查找物體 231
7.13 連線 233
7.14 作用力 235
7.15 在物體上添加推進器 .236
7.16 製造爆炸 237
7.17 根據設備方向改變重力 239
7.18 拖動物體 241
7.19 創建車輛 243
第8 章 Scene Kit . 246
8.1 使用Scene Kit .246
8.2 創建一個Scene Kit 場景 247
8.3 顯示3D 對象 248
8.4 Scene Kit 的鏡頭 248
8.5 創建燈光 .249
8.6 移動 251
8.7 使用文本節點 252
8.8 自定義材質 252
8.9 紋理對象 .254
8.10 法向貼圖 254
8.11 約束對象 255
8.12 載入3D 模型檔案 256
8.13 3D 物理學 257
8.14 反射 258
8.15 點擊測試 259
8.16 載入場景檔案 .260
8.17 粒子系統 260
8.18 Metal 261
第9 章 人工智慧和行為 263
9.1 Swift 使向量計算更輕鬆263
9.2 讓對象朝某個點移動 266
9.3 跟隨路徑 .268
9.4 攔截運動物體 269
9.5 逃逸 270
9.6 目標選擇問題 271
9.7 轉向問題 272
9.8 隱蔽點問題 273
9.9 路徑算法 274
9.10 格線中的路徑查找 279
9.11 計算下一步問題 280
9.12 判斷對象能否“看見”其他對象 281
9.13 用NSLinguisticTagger 作詞性標註 .283
9.14 用 AVFoundation 框架訪問相機 285
9.15 導入 Core ML 模型 288
9.16 識別圖片中的物體 289
9.17 用人工智慧增強遊戲設計 293
第10 章 使用外設 294
10.1 檢測控制器 .296
10.2 從遊戲控制器中獲得輸入 298
10.3 通過AirPlay 顯示遊戲內容 .300
10.4 使用擴展螢幕 301
10.5 為不同的螢幕適配UI 303
10.6 拖放 307
10.7 用 UIFeedbackGenerator 實現觸覺回饋 .313
10.8 用ReplayKit 記錄螢幕 315
10.9 用ARKit 顯示AR 畫面 .318
10.10 AR 場景的點擊測試 322
10.11 用 TestFight 測試 APP 325
10.12 用Fastlane 構建和發布APP .326
第11 章 性能和調試 327
11.1 改善幀刷新率 .327
11.2 快速載入關卡 .330
11.3 解決記憶體不足問題 331
11.4 查找崩潰原因 .333
11.5 使用紋理壓縮 .334
11.6 使用watchpoint .338
11.7 記錄日誌 339
11.8 創建語音斷點 .340