Unreal Engine 5 遊戲開發入門全圖解

馬殷雷

  • 出版商: 人民郵電
  • 出版日期: 2025-06-01
  • 售價: $479
  • 語言: 簡體中文
  • 頁數: 185
  • ISBN: 7115668671
  • ISBN-13: 9787115668677
  • 相關分類: 遊戲開發設計
  • 下單後立即進貨 (約4週~6週)

  • Unreal Engine 5 遊戲開發入門全圖解-preview-1
  • Unreal Engine 5 遊戲開發入門全圖解-preview-2
Unreal Engine 5 遊戲開發入門全圖解-preview-1

相關主題

商品描述

本書通過 3D遊戲案例,講解使用UnrealEngine5進行遊戲開發的技術要點。從搭建3D遊戲世界、用Blueprint編寫遊戲程序、用UserInterface Widget搭建玩家控制界面,到給遊戲添加一個會動的主角、添加粒子特效、設置一個競技對手,以及遊戲制作完成後打包成獨立遊戲等,引導讀者體驗遊戲開發實際全流程。本書適合遊戲開發者,遊戲設計相關專業的教師、學生,遊戲相關培訓機構人員,以及所有對3D遊戲制作感興趣的人士閱讀。

作者簡介

馬殷雷,從業十年,參與制作了多款基於Unreal Engine的大型3D遊戲,具有豐富的UE遊戲開發、Blender建模以及Gimp圖像處理經驗。此外,通過bilibili賬號“殷雷Studio”發布的Unreal Engine視頻教程,觀看人數已超百萬,備受獨立遊戲開發者好評。

目錄大綱

第 1 章 初步了解 Unreal Engine 5 1

1.1 看看 Unreal Engine 5 適合用來做什麼 2

1.1.1 Unreal Engine 5 的軟件特色. 2

1.1.2 學習 Unreal Engine 5 的準備 3

1.2 下載和安裝 Unreal Engine 5 4

1.2.1 使用官方客戶端 Epic Games Launcher 4

1.2.2 下載 Unreal Engine 5 的不同版本. 5

1.2.3 修改保管庫中下載資產的備份路徑. 6

1.3 新建遊戲工程. 7

1.3.1 使用適合自己的遊戲模板 7

1.3.2 了解新建項目的默認設置 8

1.4 熟悉軟件界面. 9

1.4.1 頂部菜單欄10

1.4.2 關卡窗口10

1.4.3 主工具欄10

1.4.4 內容瀏覽器10

1.4.5 大綱 / 放置 Actors.12

1.4.6 細節面板 / 場景設置12

1.5 在關卡中改變視角和挪動 Actor.13

1.5.1 編輯關卡時如何改變視角.13

1.5.2 移動、旋轉和縮放 Actor.13

第 2 章 像搭積木一樣建造遊戲世界.16

2.1 查看網格體模型17

2.2 使用 PBR 材質“包裝”網格體19

目 錄

CONTENTS

Unreal Engine 5 遊戲開發入門全圖解(全).indd 1 2025-06-01 20:12:12

目錄

ii

2.3 進一步“美化”網格體的材質24

2.3.1 改變材質顏色24

2.3.2 調整紋理圖的尺寸和位置.25

2.3.3 混合多種顏色來增加層次感.26

2.3.4 讓材質在場景的不同位置產生變化26

2.4 簡化材質的編寫與使用過程.27

2.4.1 將材質節點“打包”.28

2.4.2 將除了參數以外的整個材質“打包”30

2.5 活用網格體的 LOD 優化場景31

2.5.1 啟用網格體 LOD32

2.5.2 啟用 Nanite 網格體.33

2.6 用光照來點亮世界.34

2.6.1 靈活使用眼部適應功能.34

2.6.2 讓太陽光照亮整個關卡.35

2.6.3 用天空光為暗處增加亮度.36

2.6.4 添加局部光源37

2.6.5 為動態間接光照提供支持的 Lumen 系統37

2.6.6 烘焙靜態光源、固定光源的間接光照38

2.6.7 使用 Lumen 計算場景中的反射.39

2.7 為遊戲添加白雲和藍天.40

2.7.1 使用雲和霧來增加場景的朦朧感40

2.7.2 既是天空也是星球的大氣層.41

2.8 為遊戲添加山川和平原.42

2.8.1 在關卡中添加地形.42

2.8.2 雕刻地形44

2.8.3 繪制地形材質45

2.9 在陸地上添加大量植物.46

2.9.1 完成植物筆刷的設置.46

2.9.2 將植物繪制到網格體表面.47

第 3 章 繪制遊戲的代碼藍圖49

3.1 在遊戲開始後出現主角.50

3.1.1 新建一個主角藍圖.50

Unreal Engine 5 遊戲開發入門全圖解(全).indd 2 2025-06-01 20:12:13

目錄

iii

3.1.2 讓主角藍圖在遊戲開始後生效52

3.2 給網格體添加物理碰撞.53

3.2.1 啟用網格體的物理模擬.53

3.2.2 修改網格體的碰撞形態.54

3.2.3 自定義網格體的碰撞邏輯.55

3.3 在屏幕上顯示“Hello World!”56

3.3.1 遊戲開始在屏幕上顯示一行文字56

3.3.2 遊戲開始在屏幕上滾動顯示文字56

3.3.3 小球下落撞擊地面後在屏幕上顯示文字58

3.3.4 按【Q】鍵在屏幕上顯示文字.59

3.4 控制小球動起來61

3.4.1 給小球增加一個前進的沖量.61

3.4.2 用 Macro(宏)和自定義事件將節點“打包”.62

3.4.3 使用 Timeline(時間軸)持續施加沖量63

3.5 小球吃金幣得分64

3.5.1 放置一些會自動旋轉的金幣.64

3.5.2 用重疊事件判斷金幣觸碰小球後讓金幣消失.66

3.5.3 累計分數與結束遊戲.68

3.6 達到一定分數後進入下一關.69

3.6.1 在遊戲中切換至新建的 Level.69

3.6.2 保持遊戲 Level 之間設置的一致性.70

3.6.3 存儲關鍵信息並在下一關開始時讀取71

3.6.4 從多個出生點中選擇一個進入下一關72

3.7 編輯藍圖在關卡中設置機關.74

3.7.1 自動往復運動的踏板.74

3.7.2 用小球來啟動踏板的移動.76

3.7.3 用 Event Dispatcher(事件分發器)改寫火盆藍圖77

3.7.4 用 Blueprint Interface(藍圖接口)改寫火盆藍圖.79

3.7.5 區別使用類型轉換、事件分發器、藍圖接口.82

第 4 章 搭建玩家控制界面84

4.1 制作一個顯示當前得分的 UI85

4.1.1 新建一個控件藍圖.85

Unreal Engine 5 遊戲開發入門全圖解(全).indd 3 2025-06-01 20:12:15

目錄

iv

4.1.2 添加文本控件並調整其位置.86

4.1.3 把半成品的 UI 顯示在屏幕上87

4.1.4 修改文本控件的內容讓其顯示得分87

4.1.5 美化文本控件的顯示內容.89

4.2 在 UI 中顯示遊戲進行時間.90

4.2.1 把所有控件按一定的疊放順序排列90

4.2.2 編寫一個計時器來顯示當前用時91

4.2.3 讓進度條調用時間變量.93

4.3 制作保存和讀取遊戲進度的界面94

4.3.1 做一個保存和讀取的 UI94

4.3.2 在 UI 彈出時添加一個淡入動畫96

4.3.3 完善 UI 的鼠標單擊交互功能98

4.3.4 保存和讀取分數.98

4.4 制作遊戲開始界面.99

4.4.1 把空白關卡當作開始界面的“載體”99

4.4.2 在正式關卡用鏡頭切換插入開始界面101

第 5 章 對人形主角使用骨骼動畫103

5.1 為普通網格體添加骨骼.104

5.1.1 將靜態網格體轉化為骨骼網格體104

5.1.2 為骨骼網格體添加骨骼.104

5.2 將骨骼綁定至身體.106

5.2.1 自動生成綁定權重.106

5.2.2 手動修改權重107

5.2.3 加載引擎內置人物作為參考.108

5.3 讓小白人取代小球在遊戲中動起來109

5.3.1 用 Character 類型藍圖加載骨骼網格體.109

5.3.2 用增強輸入系統接收玩家的行走指令110

5.3.3 編寫行走事件的邏輯. 111

5.4 調整與優化人物前進時的視角112

5.4.1 讓人物轉身時及時調整前進方向112

5.4.2 用鼠標實時調整水平視角.113

5.5 生成人物行走和跑動時的動畫114

Unreal Engine 5 遊戲開發入門全圖解(全).indd 4 2025-06-01 20:12:16

目錄

v

5.5.1 建立源骨骼和目標骨骼的 IK 綁定與重定向器.115

5.5.2 設置重定向映射.117

5.5.3 添加關鍵幀微調動畫序列.118

5.6 用動畫藍圖控制人物的常駐動畫119

5.6.1 在混合空間中將動畫和速度相關聯119

5.6.2 在動畫藍圖中實時獲取速度.120

5.6.3 在動畫藍圖中設置不同動畫的混合邏輯122

5.6.4 用狀態機設置更復雜的動畫切換124

5.7 用動畫蒙太奇觸發非常駐動作128

5.7.1 將動畫序列轉化為動畫蒙太奇128

5.7.2 在小白人藍圖中調用動畫蒙太奇130

5.7.3 用 Notify(通知)在蒙太奇中標示出事件發生的時間點131

5.8 用控制綁定制作一段動畫.133

5.8.1 創建骨骼的 FK 控制器133

5.8.2 創建骨骼的 IK 控制器.136

5.8.3 用創建好的控制綁定編輯一段動畫139

第 6 章 添加炫目的粒子效果141

6.1 在關卡中使用粒子效果.142

6.1.1 了解哪些是粒子效果.142

6.1.2 在遊戲中實時生成粒子效果.143

6.2 用 Niagara 做火焰效果144

6.2.1 新建一個 Niagara 資產.144

6.2.2 借用翻頁動畫做出火焰材質.146

6.2.3 給火焰添加顏色.147

6.3 設置更多模塊來豐富火焰效果148

6.3.1 生成更多粒子148

6.3.2 讓火焰飛舞得更猛烈.150

6.3.3 添加煙霧發射器.151

6.4 用 Niagara 做落葉效果152

6.4.1 區別使用 CPU 模擬和 GPU 模擬152

6.4.2 啟用網格體渲染器.153

6.4.3 調整參數讓落葉飄落得更真實154

Unreal Engine 5 遊戲開發入門全圖解(全).indd 5 2025-06-01 20:12:17

目錄

vi

6.5 在扔出去的白球身後添加拖尾效果154

6.5.1 把絲帶綁定在白球身後.155

6.5.2 編輯拖尾的材質.156

6.5.3 調整拖尾的粒子效果參數.156

6.6 通過設置用戶參數靈活控制粒子效果157

6.6.1 調整扔出去的光球的方向和速度158

6.6.2 給扔出的光球設置一個追蹤對象159

第 7 章 設置 NPC 的行動邏輯.161

7.1 制作一個跟隨主角的 AI 機械球162

7.1.1 在主角身邊生成機械球.162

7.1.2 設置 AI 機械球的跟隨路徑163

7.1.3 調整和優化跟隨路徑.164

7.1.4 使用半動態導航實時修改局部路面165

7.1.5 使用全動態路徑引導超大地圖中的 AI166

7.1.6 讓 AI 機械球可以跳過間隔167

7.2 賦予 AI 機械球攻擊技能.168

7.2.1 用行為樹和黑板強化 AI 控制器169

7.2.2 自定義機械球攻擊敵人的行為樹任務171

7.2.3 給行為樹的分支增加執行條件173

7.3 賦予 AI 機械球搜索敵人的功能173

7.3.1 啟用 AI 的聽覺感知功能174

7.3.2 實現 NPC 通過聽覺刺激觸發被 AI 攻擊.175

7.3.3 監測 AI 在遊戲運行時的狀態177

7.4 用 EQS 設置敵人 NPC 的復雜行動179

7.4.1 新建一個 EQS 並開啟調試179

7.4.2 添加遊戲運行中會實時改變的測試180

7.4.3 啟用設置完成的 EQS182

7.5 打包完成的遊戲184

7.5.1 遊戲打包的基本設置.184

7.5.2 打包失敗時的解決方法.184