●章熟悉Unity軟件的操作1
1.1可多平臺發布的Unity遊戲引擎1
1.2Unity遊戲引擎的下載和安裝1
1.2.1Unity的下載2
1.2.2Unity的安裝3
1.2.3Unity的注冊4
1.2.4啟動Unity4
1.3認識Unity的編輯界面5
1.3.1軟件標題欄5
1.3.2主菜單6
1.3.3Project項目資源窗口16
1.3.4Hierarchy層級窗口24
1.3.5Scene場景窗口25
1.3.6Inspector組件屬性面板37
1.3.7Game遊戲預覽窗口42
1.3.8Console控制臺43
1.4自定義窗口布局44
1.4.1使用Unity內置的窗口布局功能44
1.4.2自定義窗口布局46
1.5Unity中定義的重要概念47
1.5.1資源(Assets)47
1.5.2工程(Project)48
1.5.3場景(Scenes)48
1.5.4遊戲對像(GameObject)48
1.5.5組件(Component)48
1.5.6腳本(Scripts)49
1.5.7預置(Prefabs)49
第2章打地鼠50
2.1遊戲簡介50
2.2遊戲規則50
2.3程序思路50
2.3.1洞口的排列50
2.3.2地鼠出現頻率51
2.3.3單個地鼠設置51
2.3.4遊戲時間和分數51
2.3.5遊戲流程圖52
2.4程序實現52
2.4.1前期準備52
2.4.2設置洞口53
2.4.3單隻地鼠的出現與消失56
2.4.4地鼠的隨機出現和出現頻率59
2.4.5時間、分數和其他64
第3章俄羅斯方塊70
3.1遊戲簡介70
3.2遊戲規則70
3.3遊戲實現思路72
3.3.1隨機生成方塊72
3.3.2地圖的生成72
3.3.3判斷方塊是否都在邊界內72
3.3.4判斷是否踫到其他方塊73
3.3.5檢查是否滿行73
3.3.6刪除填滿的行73
3.3.7提示下一個方塊組73
3.3.8結束判定74
3.3.9遊戲流程圖74
3.4遊戲程序實現75
3.4.1前期準備75
3.4.2制作場景76
3.4.3生成方塊組與方塊組下落79
3.4.4邊界判斷83
3.4.5刪除一行方塊92
3.4.6結束判定97
3.4.7細節完善98
第4章打磚塊102
4.1遊戲簡介102
4.2遊戲規則102
4.3程序思路103
4.3.1地圖生成103
4.3.2磚塊控制103
4.3.3小球控制103
4.3.4遊戲流程圖104
4.4程序實現105
4.4.1前期準備105
4.4.2遊戲場景設定106
4.4.3橫板控制107
4.4.4小球控制109
4.4.5磚塊的生成及控制112
4.4.6道具的控制117
第5章三消123
5.1遊戲簡介123
5.2遊戲規則123
5.3程序思路124
5.3.1地圖生成124
5.3.2消除檢測124
5.3.3消除算法125
5.3.4寶石掉落126
5.3.5遊戲流程圖127
5.4程序實現128
5.4.1前期準備128
5.4.2遊戲場景設定130
5.4.3地圖生成131
5.4.4點選響應及寶石交換135
5.4.5寶石的消除判定及寶石的消除140
第6章翻牌子149
6.1遊戲簡介149
6.2遊戲規則149
6.3程序思路149
6.3.1搭建卡片池149
6.3.2卡片狀態150
6.3.3遊戲計分151
6.3.4遊戲流程圖151
6.4程序實現151
6.4.1前期準備151
6.4.2遊戲場景設定152
6.4.3卡片池的生成154
6.4.4卡片圖案的隨機生成156
6.4.5卡片的配對163
6.4.6步數、分數和重新開始166
第7章連連看173
7.1遊戲簡介173
7.2遊戲規則173
7.3程序思路174
7.3.1地圖生成174
7.3.2消除檢測175
7.3.3畫線176
7.3.4遊戲流程圖177
7.4程序實現177
7.4.1前期準備177
7.4.2制作遊戲場景178
7.4.3地圖創建179
7.4.4點選判定183
7.4.5消除判定185
7.4.6畫線194
7.4.7道具實現199
第8章拼圖203
8.1遊戲簡介203
8.2遊戲規則203
8.3遊戲思路203
8.3.1原圖與碎片的對應關繫203
8.3.2鼠標拖曳移動碎片204
8.3.3正確判斷205
8.3.4獲勝判斷205
8.3.5遊戲流程圖205
8.4遊戲實現206
8.4.1前期準備206
8.4.2制作遊戲場景208
8.4.3碎片生成210
8.4.4鼠標事件211
8.4.5遊戲結束判斷215
第9章推箱子217
9.1遊戲簡介217
9.2遊戲規則217
9.3程序思路217
9.3.1地圖生成217
9.3.2角色移動218
9.3.3箱子移動219
9.3.4角色及箱子移動邏輯220
9.3.5遊戲獲勝判定221
9.3.6遊戲流程圖221
9.4程序實現222
9.4.1前期準備222
9.4.2制作遊戲場景223
9.4.3地圖生成224
9.4.4角色的移動228
9.4.5箱子的移動235
9.4.6遊戲勝利判定239
9.4.7動畫的加入241
0章炸彈人245
10.1遊戲簡介245
10.2遊戲規則245
10.3程序思路246
10.3.1地圖生成246
10.3.2炸彈管理247
10.3.3怪物管理247
10.3.4遊戲管理248
10.3.5遊戲流程圖248
10.4程序實現249
10.4.1前期準備249
10.4.2地圖制作249
10.4.3開始制作250
10.4.4玩家操控258
10.4.5牆體摧毀263
10.4.6怪物制作265
1章華容道270
11.1遊戲簡介270
11.2遊戲規則270
11.3遊戲程序實現思路271
11.3.1棋子271
11.3.2棋盤271
11.3.3移動棋子272
11.3.4結束判定277
11.3.5遊戲流程圖277
11.4遊戲實現278
11.4.1前期準備278
11.4.2制作遊戲場景279
11.4.3生成棋子281
11.4.4棋子移動284
11.4.5遊戲結束判定309
2章橫版跑酷312
12.1遊戲簡介312
12.2遊戲規則313
12.3程序思路313
12.3.1地圖313
12.3.2金幣和道具313
12.3.3障礙物314
12.3.4玩家314
12.3.5金幣分數和已經前進距離的顯示314
12.3.6遊戲流程圖314
12.4工程實現315
12.4.1前期準備315
12.4.2制作遊戲場景317
12.4.3玩家控制319
12.4.4路段上金幣、道具和障礙物的生成328
12.4.5顯示前進距離和金幣332
3章掃雷335
13.1遊戲簡介335
13.2遊戲規則335
13.2.1掃雷的布局335
13.2.2掃雷的基本操作336
13.2.3遊戲結束337
13.3程序思路337
13.3.1雷區繪制337
13.3.2左鍵單擊337
13.3.3右鍵單擊338
13.3.4左右鍵雙擊338
13.3.5遊戲結束339
13.3.6遊戲流程圖339
13.4程序實現340
13.4.1前期準備340
13.4.2制作遊戲場景340
13.4.3雷區的生成341
13.4.4地雷隨機分布344
13.4.5方塊關聯352
13.4.6鼠標點擊356
13.4.7遊戲失敗360
13.4.8剩餘地雷數、時間和笑臉管理362
4章貪喫蛇370
14.1遊戲簡介370
14.2遊戲規則371
14.3程序思路371
14.3.1地圖的生成371
14.3.2食物出現371
14.3.3蛇的數據結構371
14.3.4貪喫蛇移動算法371
14.3.5蛇的增長372
14.3.6判斷蛇頭是否撞到了自身372
14.3.7邊界判斷372
14.3.8遊戲流程圖372
14.4遊戲程序實現373
14.4.1前期準備373
14.4.2制作場景374
14.4.3生成食物376
14.4.4蛇的移動378
14.4.5蛇的長大及移動382
14.4.6累計分數384
14.4.7結束判定386
5章五子棋388
15.1遊戲簡介388
15.2遊戲規則388
15.2.1五子棋棋盤和棋子388
15.2.2五子棋基本規則389
15.2.3落子順序389
15.2.4禁手389
15.3遊戲算法思路390
15.3.1棋盤的繪制390
15.3.2盤面棋子繪制391
15.3.3落子391
15.3.4獲勝規則判定392
15.3.5判定黑方禁手功能392
15.3.6遊戲流程圖393
15.4遊戲程序實現393
15.4.1前期準備393
15.4.2創建場景395
15.4.3落子398
15.4.4切換落子權限404
15.4.5更新棋盤狀態406
15.4.6獲勝判斷407
15.4.7禁手規則419
15.4.8重新開始430
6章跳棋434
16.1遊戲簡介434
16.2遊戲規則434
16.3程序思路434
16.3.1棋盤排列434
16.3.2棋子生成436
16.3.3棋子的位置和移動436
16.3.4計算可移動位置437
16.3.5回合438
16.3.6遊戲勝負判斷438
16.3.7遊戲流程圖438
16.4程序實現439
16.4.1前期準備439
16.4.2創建棋盤439
16.4.3創建棋子444
16.4.4移動棋子446
16.4.5可移動位置448
16.4.6回合456
16.4.7勝利判斷459
7章喫豆人462
17.1遊戲簡介462
17.2遊戲規則462
17.3程序思路463
17.3.1地圖生成463
17.3.2幽靈狀態463
17.3.3小精靈管理465
17.3.4遊戲流程圖465
17.4程序實現467
17.4.1前期準備467
17.4.2制作遊戲場景467
17.4.3喫豆人的移動468
17.4.4豆子的消失473
17.4.5幽靈運動474
8章鬥地主487
18.1遊戲簡介487
18.2遊戲規則487
18.3程序思路488
18.3.1撲克牌488
18.3.2洗牌488
18.3.3發牌489
18.3.4出牌489
18.3.5牌型491
18.3.6大小491
18.3.7玩家491
18.3.8勝利492
18.3.9遊戲流程圖492
18.4工程實現492
18.4.1前期準備492
18.4.2制作遊戲場景494
18.4.3定義一張牌496
18.4.4洗牌503
18.4.5發牌504
18.4.6勝利判定513
18.4.7叫地主514
18.4.8出牌525
18.4.9判斷牌型527
18.4.10比大小534
18.4.11勝利541
9章坦克大戰542
19.1遊戲簡介542
19.2遊戲規則542
19.3程序思路542
19.3.1地圖生成542
19.3.2敵人543
19.3.3玩家544
19.3.4障礙物544
19.3.5道具545
19.3.6基地545
19.3.7遊戲流程圖545
19.4工程實現546
19.4.1前期準備546
19.4.2制作遊戲場景548
19.4.3玩家控制551
19.4.4子彈558
19.4.5地圖上各類障礙物及基地560
19.4.6敵人566
19.4.7敵人生成器576
19.4.8道具579
在遊戲開發學習中,借鋻經典遊戲的開發思路和算法是快速提升開發與設計水平的有效捷徑,這種學習的路徑也是明智而高效的。本書精選了18個廣受歡迎的經典遊戲案例進行講解剖析,包含打地鼠、俄羅斯方塊、打磚塊、三消、翻牌子、連連看、拼圖、推箱子、炸彈人、華容道、橫板跑酷、掃雷、貪喫蛇、五子棋、跳棋、喫豆人、鬥地主、坦克大戰等遊戲。本書遊戲的實現采用了Unity2017版軟件,該軟件是目前世界範圍內使用很廣泛的遊戲開發與虛擬現實開發平臺之一,界面友好,功能強大,有適合不同學習階段和不同開發需求的對應版本。
本書不僅詳細介紹了Unity的軟件操作基礎與遊戲開發操作流程,而且對每個遊戲案例的開發思路、算法分析、程序實現等都有詳盡的講解,很好適合對遊戲開發、虛擬現實開發設計感興趣的初中級讀者,也適合遊戲相關專業作為教材使用。