前言
最近項目裏改名的工作量較大,受不了了,所以發現4.22的新增功能很有意思,決定試試。
一實驗還真成功了。
原來不只可以改名,批量的工作,看來都可以用【編輯器工具】了。
使用版本
UE4.22
需求
實現UE4當中,將選擇的 Actor 批量改名成 自己的StaticMeshComponent 的 StaticMesh 的名稱。
本文將使用藍圖中如下幾個關鍵功能
核心內容
1. Forloop 功能塊實現循環,
2. Get Component by Class 和 Get Object Name 組合獲取靜態網格的名字
3. setActorLabel 功能塊,實現改名
下面開始具體操作
創建一個編輯器工具
打開 UE4.22
在資源內容Content 窗口的空白處右鍵鼠標,鼠標經過【編輯器工具】,彈出選項單擊【編輯器控件】 ,創建一個編輯器控件。
對新創建的編輯器控件改名爲你喜歡的名字,我叫它“RenameTools”
編輯製作工具的UI頁面
雙擊剛建好的RenameTools,彈出編輯窗口
在左側控制板中,通用欄中找到【button】元素
將其拖放進編輯面板,完成按鈕創建
搭建功能
選擇剛創建的按鈕,在右側細節面板中,向下翻動面板,找到事件欄,點擊OnClicked 後面的 + ,對該按鈕添加事件觸發。
點擊 + 後,窗口會變成如下,注意紅圈地方發生了變化,右上角,設計師 》 圖表 可以在 UI 和 藍圖 之間切換視口,中間進行編輯,左側是各種事件屬性參數清單
下面來製作一個改名功能,右鍵創建藍圖功能塊,按照下圖搭建藍圖。
完成後點擊左上角【編譯】按鈕
變成下圖樣式
而後點擊保存
完成製作
測試
在UE4的display窗口中選擇準備改名字的對象
現在它的名字還沒有被修改
運行剛剛編輯的插件
在content內容窗口中,右鍵單擊製作好的插件,彈出菜單點擊【運行編輯器工具控件】
彈出剛纔製作的窗口
選擇物體,點擊製作工具的按鈕,可以看到名字被修改成功。
該方案只適用於具有靜態網格component的actor,並沒有做合法性判斷。至於增加魯棒性,大家可以自由發貨啦。