Unity 2D遊戲開發(2020年清華大學出版社出版的圖書)

Unity 2D遊戲開發(2020年清華大學出版社出版的圖書)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

《Unity 2D遊戲開發》是2020年6月清華大學出版社出版的圖書,作者是[美]傑瑞德·哈爾彭。

基本介紹

  • 中文名:Unity 2D遊戲開發
  • 作者:[美]傑瑞德·哈爾彭
  • 譯者:郭華豐、陶有旺
  • 出版社清華大學出版社
  • 出版時間:2020年6月1日
  • 定價:79.8 元
  • ISBN:9787302550525
內容簡介,圖書目錄,作者簡介,

內容簡介

《Unity2D遊戲開發》既是C#(Unity引擎的業界標準語言)語言的真實演練,也是包含腳本編寫、玩家輸入管理、資源使用、動畫、碰撞檢測和狀態管理的重要的Unity核心課程。除基礎知識外,你還將學習最佳編程實踐,有用的遊戲架構模式設計,以及如何自定義Unity使其符合自己的需要。所有內容旨在構建運行良好的2D遊戲。通過專注於2D遊戲和Unity不斷擴展的2D工作流程,本書深入探討了一些非常有用的2D主題,如精靈圖集、瓦片切割以及全新的Tilemap(瓦片地圖)功能。

圖書目錄

第1章 遊戲與遊戲引擎 1
1.1 遊戲引擎——它們是什麼 1
1.1.1 建造房子的第一種方法 2
1.1.2 建造房子的第二種方法 3
1.1.3 關於第一種方法 3
1.1.4 關於第二種方法 3
1.1.5 結論 4
1.2 歷史上的遊戲引擎 4
1.3 今天的遊戲引擎 5
1.4 Unity遊戲引擎 6
1.5 本章小結 7
第2章 Unity簡介 9
2.1 安裝Unity 9
2.2 Unity配置 10
2.3 腳本編輯器:Visual Studio 12
2.4 瀏覽Unity界面 12
2.5 了解不同的視圖 13
2.6 配置和自定義布局 15
2.7 Transform Toolset 15
2.8 Handle Position Controls 16
2.9 Play、Pause和 Step控制按鈕 17
2.10 Unity項目結構 18
2.11 Unity文檔 19
2.12 本章小結 19
第3章 Unity基礎 21
3.1 Game Object:容器實體 21
3.2 Entity-Component Design 22
3.3 Components: Building Blocks 23
3.4 精靈 24
3.5 動畫 30
3.6 碰撞器(Collider) 35
3.7 Rigidbody(剛體)組件 36
3.8 標籤和層 37
3.8.1 標籤(Tag) 37
3.8.2 層(Layer) 38
3.8.3 Sorting Layer(排序層) 39
3.9 預製件(Prefab)介紹 41
3.10 腳本:組件邏輯 43
3.11 狀態和動畫 50
3.11.1 多狀態機 50
3.11.2 動畫參數 52
3.12 本章小結 60
第4章 構建遊戲世界 61
4.1 Tilemap和Tile Palette 61
4.2 創建Tile Palette 62
4.3 用Tile Palette繪製地圖 64
4.4 使用多個Tilemap 66
4.5 圖形設定 69
4.6 攝像機 70
4.7 使用Cinemachine 73
4.8 虛擬攝像機 75
4.9 穩定性 82
4.10 材質 85
4.11 碰撞器和Tilemap 86
4.11.1 Tilemap Collider 2D 86
4.11.2 複合碰撞器 88
4.11.3 編輯Physics Shape 90
4.12 本章小結 93
第5章 整合遊戲 95
5.1 Character類 95
5.2 Player類 96
5.3 聚焦預製件 97
5.3.1 創建硬幣預製件 98
5.3.2 設定Circle Collider 2D 98
5.3.3 設定自定義標籤 99
5.4 基於層的碰撞檢測 100
5.5 觸發器和腳本 102
5.6 Scriptable Object(腳本化對象) 103
5.6.1 創建一個Scriptable Object 104
5.6.2 構建Consumable腳本 107
5.6.3 組裝我們的道具 108
5.6.4 玩家碰撞 109
5.6.5 創建用於增加生命值的道具(Heart Power-Up) 111
5.7 本章小結 116
第6章 生命條與背包 117
6.1 創建生命條 117
6.1.1 Canvas對象 117
6.1.2 UI元素 117
6.1.3 構建生命條 118
6.1.4 錨點 120
6.1.5 調整錨點 121
6.1.6 用戶界面圖像遮罩(UI Image Mask) 123
6.1.7 導入自定義字型 126
6.1.8 添加生命值文本 126
6.1.9 編寫HealthBar.cs腳本 128
6.1.10 Scriptable Object:HitPoints 128
6.1.11 更新Character.cs腳本 129
6.1.12 更新Player.cs腳本 129
6.1.13 創建HealthBar.cs腳本 133
6.1.14 配置Health Bar組件 135
6.2 背包 138
6.2.1 導入背包格子圖像 140
6.2.2 配置背包格子 141
6.2.3 創建Inventory.cs腳本 147
6.3 本章小結 157
第7章 角色、協程和生成點 159
7.1 創建Game Manager 159
7.2 單例(Singleton) 159
7.2.1 創建單例 160
7.2.2 創建RPGGameManager預製件 162
7.3 Spawn Point(生成點) 162
7.3.1 構建SpawnPoint預製件 165
7.3.2 配置Player Spawn Point 167
7.3.3 生成玩家 168
7.3.4 小結 169
7.3.5 敵人Spawn Point 169
7.4 Camera Manager(攝像機管理器) 170
7.4.1 使用Camera Manager 172
7.4.2 設計Character類 174
7.4.3 virtual關鍵字 174
7.5 Enemy類 175
7.5.1 重構 175
7.5.2 internal(內部)訪問修飾符 176
7.6 協程(Coroutine) 177
7.6.1 調用協程 177
7.6.2 暫停或“讓步”執行 177
7.6.3 一個完整的協程 177
7.6.4 具有時間間隔的協程 178
7.6.5 abstract關鍵字 178
7.6.6 實現Enemy類 179
7.6.7 DamageCharacter方法 180
7.6.8 ResetCharacter182
7.6.9 在OnEnable中調用ResetCharacter182
7.6.10 KillCharacter 182
7.7 更新Player類 183
7.7.1 重構預製件的實例化 184
7.7.2 回顧 185
7.7.3 使用已經構建的功能 185
7.7.4 OnCollisionEnter2D方法 186
7.7.5 OnCollisionExit2D方法 187
7.7.6 配置Enemy.cs腳本 188
7.8 本章小結 188
第8章 人工智慧和彈弓武器 189
8.1 漫遊算法 189
8.1.1 入門 190
8.1.2 創建漫遊腳本 191
8.1.3 漫遊變數 191
8.1.4 構建Start方法 193
8.1.5 漫遊協程 194
8.2 選擇一個新的端點 196
8.2.1 角度變弧度,再變向量 197
8.2.2 敵人行走動畫 197
8.2.3 Move協程 200
8.2.4 配置漫遊腳本 203
8.2.5 OnTriggerEnter2D方法 203
8.2.6 OnTriggerExit2D方法 205
8.2.7 Gizmo 206
8.3 自我防衛(Self-Defense) 209
8.4 Ammo類 210
8.4.1 導入資源 210
8.4.2 添加組件,設定圖層 210
8.4.3 更新圖層碰撞矩陣 211
8.4.4 構建Ammo.cs腳本 211
8.4.5 在我們忘記之前製作AmmoObject預製件 213
8.5 對象池(Object Pooling) 213
8.6 創建Weapon類 214
8.6.1 Stubbing-Out方法 216
8.6.2 SpawnAmmo方法 218
8.6.3 Arc類和線性插值 220
8.6.4 螢幕點和世界點 222
8.6.5 FireAmmo方法 223
8.6.7 配置Weapon.cs腳本 225
8.6.8 沿弧線運動 225
8.7 添加彈弓動畫 227
8.8 混合樹 228
8.8.1 清理動畫器 228
8.8.2 構建行走混合樹 229
8.8.3 層和多層嵌套 231
8.8.4 關於混合類型(Blend Type) 231
8.8.5 Animation Parameter(動畫參數) 232
8.8.6 使用參數 232
8.8.7 好了,但為什麼呢 234
8.8.8 循環時間 235
8.8.9 創建轉換 236
8.9 更新運動控制器 236
8.9.1 導入戰鬥精靈 237
8.9.2 創建動畫剪輯 238
8.9.3 構建戰鬥混合樹 239
8.9.4 Exit Time(退出時間) 240
8.9.5 更新Weapon類 240
8.9.6 添加變數 241
8.9.7 Start方法 242
8.9.8 更新Update方法 243
8.9.9 確定方向 243
8.9.10 斜率方法 245
8.9.11 計算斜率 246
8.9.12 比較y軸截距 247
8.9.13 HigherThanNegative-SlopeLine方法 248
8.9.14 GetQuadrant方法 248
8.9.15 UpdateState方法 250
8.10 受到傷害時閃爍 252
8.11 在其他平台上運行遊戲 254
8.12 退出遊戲 255
8.13 本章小結 256
8.14 未來方向 256
8.14.1 社區 256
8.14.2 了解更多信息 257
8.14.3 去哪裡尋求幫助 257
8.14.4 Game Jams 257
8.14.5 新聞和文章 258
8.14.6 遊戲和資源 258
8.15 超越 258

作者簡介

Jared Halpern是一名擁有計算機科學背景和超過12年各種技術工作經驗的軟體開發人員。最近他專注於Apple和Unity。多年來,Jared已經開發了許多iPhone應用程式,包括遊戲、增強現實(AR)、攝影、電子商務、視頻和GIF應用程式。他的興趣包括Swift、Unity、AR、遊戲開發,以及使用這些技術開發的創造性應用程式。他對遊戲開發充滿熱情,希望將遊戲作為一種互動媒介用於講故事,以及提供其他媒介無法提供的體驗。他目前喜歡做一名自由軟體開發人員。

熱門詞條

聯絡我們