Unreal UI 教學說明使用 Unreal Motion Graphics UI Designer (UMG) 設計遊戲 UI 包括製作血條、能量條、跟隨玩家的訊息文字的教學。 使用 Starter Content 初學者內容包。 使用控件藍圖 ( Widget Blueprint ) 以視覺化的操作方式製作 UI 元素,將創建的 UI 元素包括 HUD 與選單放置在控件藍圖中。 1. 點擊 Content Browser 的 Add New 按鈕,然後選擇 User Interface > Widget Blueprint 新增控件藍圖,並且命名為 HUD 。 2. 再點擊 Add New 按鈕,然後選擇 User Interface > Widget Blueprint 新增控件藍圖,並且命名為 MainMenu 主選單。 3. 再點擊 Add New 按鈕,然後選擇 User Interface > Widget Blueprint 新增控件藍圖,並且命名為 PauseMenu 暫停選單。
------------------------------ 開啟 HUD 控件藍圖,使用 Widget Blueprint Editor 控件藍圖編輯器計計 HUD 的視覺效果與腳本功能。 在 Palette 控制板視窗,將 Progress Bar 進度條拖曳到 Hierarchy 視窗的 [Canvas Panel] 畫布面板上。 使用 Progress Bar 進度條 製作玩家角色的血條,Details 重新命名為 Health ,使用 Anchors 位置。 補充 Palette: Border / Button 按鈕 / Check Box 核取方塊 / Image / Slider / Text 文字 / / Horizontal Box 水平方框 Size X / Size Y / Position X / Position Y 調整位置。 使用 Percent 調整進度條的百分比,按下 Bind > Create Binding 將會建立 Get HP? Percent 0 (右上方 Graph 切換) 有 Get HP? Percent 0 節點、Return Node 節點。 此時右上方 Graph 切換回 Designer 可以在 Percent 後方看到綁定的 Get_HP?_Percent _0 下拉選單,
若需要控制進度條的 Percent 可以在場景藍圖或遊戲角色藍圖製作 在 World Outliner 找到 ThirdPersonCharacter 第三人稱角色,點擊後方的 Edit ThirdPersonCharacter 開啟藍圖。
|
Unreal 基本 UI功能 - 使用 虛幻示意圖形 (UMG) 顯示文字與變數的數值。
使用第三人稱專案,右鍵 [ User Interface > Widget Blueprint ] 建立控件藍圖。
滑鼠雙擊剛建立的 Widget Blueprint(控件藍圖),開啟編輯視窗。
將左側 Text 文字元件拖曳至編輯區
為了讓 Unreal UMG 顯示在遊戲畫面,開啟 [Content >ThirdPersonBP > Blueprints > ThirdPersonCharacter] 玩家藍圖。
在 Event Graph 空白處按滑鼠右鍵,選擇建立 BeginPlay 事件節點。
從 BeginPlay 節點後建立 Create Widget 節點
將節點中的 Class 項目,選擇使用剛建立的 PlayerUI 控件藍圖。
從節點右側的 Return Value 建立 Add to Viewport 節點,將 UI 顯示加到遊戲畫面。
注意!請從 Return Value 新增此節點,空白處按滑鼠右鍵將無此節點。
完成到此步驟後,回到場景Play就能在畫面上看到剛剛建立的UI
回到 Widget 藍圖,左下方的 Hierarchy 下選擇 Text 元件
在右側 Details 標籤頁下 Content 項目下的 Text,點選後方的 Bind 並建立新的 Binding
建立後會自動跳轉到 Graph 模式下
在左側My Blueprint標籤下,Variables項目建立新的變數
左下的Details中能修改該變數的名稱與類型
將剛剛建立的變數拖曳至藍圖中並選擇Get
將HP節點連接到Return Value(會自動建立轉換節點)
回到玩家藍圖,建立一個Int類型的變數
1139
1140
從Create Player UI Widget節點中的 Return Value 中建立Set HP 節點
在藍圖空白處建立 EventTick 節點 (1143, 114x)
將 Event Tick 節點連接到Set HP 節點 (1145)
將 HP 變數後方的眼睛圖示勾選 (1146)
將 HP 變數拖曳至藍圖中並選擇 Get (1147)
將HP變數連接至SetHP節點的HP (1148)
回到場景中,Play後選擇玩家物件,調整公開的HP變數,UI顯示的數值會同步變動 (1149/1150)
Unreal UI -Basic-02_顯示玩家血條並以公開變數調整連動
開啟玩家藍圖,在藍圖中新增Sequence節點
1157
點擊Add pin按鈕,增加一個輸出針腳(共三個)
1158
建立兩個branch節點
1159
將Sequence兩個空白針腳連接到Branch
1160
將HP變數拖曳至藍圖中Get
1161
從HP針腳向右拉出,建立Integer < Interger節點
1162
1163
以同樣的方法建立Integer > Integer節點
1164
將兩個節點連接到Branch節點上的Boolean針腳
1165
將HP變數拖曳至藍圖中Set(兩個)
1166
將Branch節點的True針腳連接到Set HP
1167
修改Integer > Integer節點的數值與後方Set HP的對應值(改為100)
1168
開啟玩家UI藍圖,在 Designer 模式增加一個Progress Bar與一個Text
1169
調整 ProgressBar 元件的位置大小
1170
調整 Text元件 (一開始的 HP)
1171
1172
調整 Text元件 (剛建立的 Text 元件)
1173
回到 ProgressBar元件,Details標籤頁下的Progress項目下的Percent後方Bind按鈕
1174
建立新的 Bind後會自動跳轉到Graph模式的藍圖
1175
在 MyBlueprint標籤下,Variables點擊+號按鈕建立新變數MaxHP(Int類型)
1176
在 Details 標籤下,Default Value下將數值設為100
1177
將變數HP、MaxHP拉到藍圖中Get
1178
建立兩個To Float(Integer)節點
1179
將變數 HP、MaxHP連接To Float節點
1180
建立 Float / Float節點
1181
連接各節點
1182
回到 Desinger 模式,ProgressBar > Details > Appearance > Fill Color and Opeciity調整顏色
1183
回到場景,Play後可以調整玩家身上HP變數,可以看到UI上的數字與血條的變化
1184