零基礎學Swift遊戲編程

零基礎學Swift遊戲編程

《零基礎學Swift遊戲編程》是2018年10月清華大學出版社出版的圖書,作者是(美)阿爾揚·艾格斯。

基本介紹

  • 書名:零基礎學Swift遊戲編程
  • 作者:(美)阿爾揚·艾格斯
  • 出版社:清華大學出版社
  • 出版時間:2018年10月
  • 定價:120 元
  • ISBN:9787302512813
內容簡介,圖書目錄,

內容簡介

本書詳細闡述了與Swift遊戲開發相關的基本解決方案,主要包括遊戲編程的基礎知識、創建遊戲場景、遊戲數據資源、顏色和碰撞檢測、組織遊戲對象、遊戲物理學、遊戲狀態管理、存儲和恢復遊戲數據、遊戲對象間的互動、動畫效果和智慧型角色等內容。此外,本書還提供了豐富的示例以及代碼,以幫助讀者進一步理解相關方案的實現過程。
本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學教材和參考手冊。

圖書目錄

第1部分 開始編程之旅 1
第1章 Swift語言 3
1.1 計算機和程式 3
1.1.1 處理器和記憶體 3
1.1.2 程式 3
1.1.3 程式語言 4
1.2 遊戲編程 5
1.3 遊戲開發 6
1.3.1 小規模程式設計:編輯-編譯-運行 7
1.3.2 大規模程式設計:設計-制定規範-實現 7
1.4 構建第一個Swift程式 8
1.5 打造第一款Swift遊戲 11
1.6 觀察結果 14
1.7 本章小結 15
第2章 遊戲編程的基礎知識 17
2.1 構建遊戲模組 17
2.2 遊戲場景 17
2.2.1 遊戲循環 18
2.2.2 Swift中的遊戲循環 19
2.3 程式的結構 21
2.3.1 應用程式類型 21
2.3.2 函式 22
2.3.3 語法示意圖 24
2.3.4 函式調用 25
2.4 程式格式 25
2.4.1 注釋 25
2.4.2 指令和多行代碼 26
2.4.3 空行、空格和縮進格式 27
2.5 本章小結 27
第3章 創建遊戲場景 29
3.1 基本類型和變數 29
3.1.1 類型 29
3.1.2 變數的聲明和賦值 30
3.1.3 指令和表達式 33
3.2 運算符和複雜表達式 34
3.2.1 運算符 34
3.2.2 運算符的優先權 34
3.3 其他數值類型 35
3.4 DiscoWorld遊戲 37
3.5 變數的作用域 40
3.6 本章小結 40
第4章 遊戲數據資源 41
4.1 精靈對象的定位 41
4.2 載入並繪製圖像 42
4.3 解析度和寬高比 43
4.4 移動精靈對象 47
4.5 載入和繪製多個精靈對象 48
4.6 配置設備的方向 50
4.7 音樂和聲音 51
4.8 本章小結 53
第2部分 Painter遊戲 55
第5章 回響玩家輸入 57
5.1 處理觸摸輸入 57
5.2 利用觸摸位置修改遊戲場景 60
5.3 基於觸摸行為的條件執行 62
5.4 測試替代方案 64
5.5 比較運算符 65
5.6 邏輯運算符 66
5.7 布爾類型 66
5.8 調整顏色 68
5.9 注意事項 72
5.10 本章小結 73
第6章 處理飛行的球體 75
6.1 方法 75
6.2 參數名和標記 79
6.3 默認參數值 82
6.4 將指令整合至方法中 83
6.5 局部坐標系和世界坐標系 85
6.6 向遊戲場景中添加球體 86
6.6.1 球體的射擊行為 87
6.6.2 更新球體位置 89
6.7 固定時間步和可變時間步 90
6.8 更新球體顏色 92
6.9 本章小結 95
第7章 遊戲對象類型 97
7.1 創建同一類型的多個對象 97
7.2 類 98
7.3 獨立類中的輸入處理 101
7.4 初始化對象 102
7.5 self關鍵字 105
7.6 利用靜態變數訪問其他對象 107
7.7 類的雙重角色 108
7.8 編寫包含多個實例的類 110
7.9 遊戲中的隨機性 111
7.10 計算隨機速度和顏色值 113
7.11 更新油漆桶對象 114
7.12 本章小結 116
第8章 顏色和碰撞檢測 117
8.1 表達顏色的不同方式 117
8.2 對象的數據訪問 118
8.3 向類中加入計算屬性 120
8.4 處理對象間的碰撞 122
8.5 值和引用 124
8.6 結構 127
8.7 本章小結 129
第9章 生命值 131
9.1 維護生命值 131
9.2 向玩家顯示生命值 133
9.3 多次執行指令 134
9.4 遞增計數器的簡化形式 136
9.5 更加緊湊的循環語法 137
9.6 一些特例 141
9.6.1 不產生循環 141
9.6.2 無限循環 141
9.6.3 嵌套循環 142
9.7 重啟遊戲 143
9.8 本章小結 146
第10章 組織遊戲對象 147
10.1 遊戲對象間的相似性 147
10.2 繼承機制 148
10.3 遊戲對象和繼承 152
10.4 ThreeColorGameObject的子類 154
10.5 Ball類 156
10.6 PaintCan類 158
10.7 多態 159
10.8 從現有類中繼承 160
10.9 類的層次結構 161
10.10 本章小結 163
第11章 完成Painter遊戲 165
11.1 添加運動效果 165
11.2 添加音效和音樂 166
11.3 維護積分榜 169
11.4 字元和字元串 170
11.5 特殊字元 171
11.6 添加App圖示 171
11.7 其他注意事項 172
11.8 本章小結 174
第3部分 Tut’s Tomb遊戲 175
第12章 高級輸入處理 177
12.1 創建Touch對象 177
12.2 數組 179
12.3 字典 182
12.4 可選類型 182
12.5 存儲多點觸摸 184
12.6 簡化觸摸輸入行為 186
12.7 將觸摸事件連結至輸入幫助類 188
12.8 拖曳精靈對象 191
12.9 本章小結 192
第13章 遊戲物理學 193
13.1 遊戲對象的基本類 193
13.2 遊戲對象子類 194
13.3 向遊戲對象中添加物理行為 195
13.4 互動行為 197
13.5 本章小結 201
第14章 遊戲設定程式設計 203
14.1 遊戲對象行為 203
14.2 動作 203
14.3 通過動作投擲寶物 205
14.4 其他寶物類型 208
14.5 將寶物變為石頭 210
14.6 處理物理碰撞 211
14.7 本章小結 213
第15章 遊戲狀態 215
15.1 層次處理 215
15.2 添加標題畫面 216
15.3 添加按鈕並顯示幫助對話框 218
15.4 覆蓋圖 220
15.5 本章小結 223
第16章 完成Tut’s Tomb遊戲 225
16.1 添加積分值 225
16.2 訪問控制 227
16.3 使用自定義字型 228
16.4 添加發光體 230
16.5 添加音樂和音效 231
16.6 本章小結 232
第4部分 Penguin Pairs遊戲 233
第17章 選單和格線 235
17.1 格線布局中的遊戲對象 235
17.2 類擴展 240
17.3 設定選單 242
17.4 添加開/關按鈕 243
17.5 定義滑塊按鈕 245
17.6 計算遊戲對象的世界場景位置 245
17.7 Slider類 246
17.8 本章小結 250
第18章 遊戲狀態管理 251
18.1 基本的遊戲管理狀態 251
18.2 遊戲狀態管理器 252
18.3 將名稱賦予節點中 253
18.4 添加狀態並在其間切換 255
18.5 關卡選單狀態 257
18.6 本章小結 259
第19章 存儲和恢復遊戲數據 261
19.1 關卡的結構 262
19.2 從檔案中讀取數據 263
19.3 Tile類 266
19.4 關卡狀態 266
19.4.1 利用switch處理各種情形 270
19.4.2 載入不同的貼圖類型 272
19.5 維護玩家的進程 274
19.6 本章小結 277
第20章 遊戲對象間的互動 279
20.1 定義運算符 279
20.2 企鵝對象的選取操作 280
20.3 更新動物對象 283
20.4 與其他遊戲對象間的碰撞 286
20.5 維護配對的數量 289
20.6 本章小結 292
第21章 完成Penguin Pairs遊戲 293
21.1 顯示提示信息 293
21.2 顯示幫助對話框 295
21.3 重置關卡 297
21.4 切換至下一個關卡 297
21.5 加入音效 300
21.6 其他注意事項 301
21.7 本章小結 301
第5部分 Tick Tick遊戲 303
第22章 主要的遊戲結構 305
22.1 遊戲結構概述 305
22.2 關卡結構 306
22.3 水滴 307
22.4 Tile類 308
22.5 LevelState類 310
22.6 本章小結 312
第23章 動畫效果 313
23.1 動畫的含義 313
23.2 紋理貼圖集 314
23.3 Animation類 315
23.4 多重動畫 317
23.5 Player類 319
23.6 本章小結 323
第24章 物理知識 325
24.1 在遊戲場景中鎖定角色 325
24.2 在正確位置處設定角色 326
24.3 跳躍動作 327
24.4 跌倒動作 328
24.5 碰撞檢測 329
24.6 獲取包圍盒 330
24.7 角色與貼圖之間的碰撞 330
24.8 處理碰撞檢測 332
24.9 本章小結 336
第25章 智慧型角色 337
25.1 火箭對象 337
25.1.1 創建並重置火箭對象 338
25.1.2 定義火箭對象的行為 339
25.2 巡行的敵方角色 340
25.2.1 基本的PatrollingEnemy類 340
25.2.2 不同的敵方角色類型 343
25.3 其他敵方角色類型 344
25.4 載入不同的敵方角色類型 346
25.5 本章小結 347
第26章 添加互動行為 349
26.1 收集水滴 349
26.2 冰塊對象 350
26.3 敵方角色與玩家角色間的碰撞行為 351
26.4 添加垂直和水平方向上的滾屏 355
26.5 本章小結 357
第27章 完成Tick Tick遊戲 359
27.1 設定計數器 359
27.1.1 調整計數器 361
27.1.2 計時器為0 362
27.2 添加山峰和雲彩 364
27.3 顯示幫助對話框 367
27.4 通關後的處理操作 367
27.5 本章小結 370

相關詞條

熱門詞條

聯絡我們