UE4如何將動作限制為特定類別?
哈嘍各位小伙伴,我們在UE4中將動作限制為特定類別就需要執行腳本操作,下面為大家了解在UE4中將動作限制為特定類別的案例步驟。
將動作限制為特定類別
例如,你創建了一個腳本動作來更改選定角色上的材質。但你希望僅在用戶右鍵單擊“靜態網格物體”時才顯示該動作,而在用戶右鍵單擊“Light Actor”或“藍圖”時不顯示該動作。
該AssetActionUtility和ActorAssetUtility基類都提供一個內置命名的功能GetSupportedClass。該函數確定需要選擇的對象的類別,以使你的Blueprint類中的“腳本操作”出現在上下文菜單中。每次用戶右鍵單擊一組Assets或Actor時,都會調用此函數以獲取AssetActionUtility或ActorAssetUtility類支持的類類型。如果返回類類型,則將該返回值與用戶當前選擇的資產或參與者集進行比較。如果這些資產或參與者中至少有一個具有與GetSupportedClass返回的類相匹配的類,然后腳本操作將出現在上下文菜單中。默認情況下,GetSupportedClass函數不返回任何內容。這樣,無論選擇的資產或參與者的類別如何,所有腳本操作都將顯示。
如果要更改此默認行為,則可以在類中重寫GetSupportedClass函數以返回特定類型:
例如,ActorAssetUtility中的此實現返回StaticMeshActor類:
當我們在打開上下文菜單時至少選擇了一個靜態網格物體Actor時,此類中的腳本操作將顯示在上下文菜單中:
但是,當用戶僅選擇了其他類型的Actor時,腳本操作不會出現:
如果選擇了多個Assets或Actor,則該行為是允許的:只要所選項目中的至少一項與GetSupportedClass返回的類相匹配,“腳本操作”就會顯示在上下文菜單中。即使你重寫GetSupportedClass來限制操作處理類別,也不能保證在操作運行時僅選擇該類的實例。
動態輸入
可以將腳本操作設置為要求調用它們的用戶提供信息。如果將一個或多個輸入添加到函數輸入節點或“自定義事件”節點,則每次在編輯器中運行“腳本操作”時,系統都會提示我們提供該輸入。每當腳本需要一些額外的信息(每次調用該操作可能有所不同)時,此功能就很有用。
此函數具有三個輸入:字符串,Actor對象引用和Material對象引用:
當運行此功能的腳本操作時,編輯器會彈出一個小窗口供您設置以下輸入值:
編輯器將驗證每個輸入是否與假定的值類型相匹配。但它不能保證輸入中將完全有值,或者這些值在任何特定上下文中都有意義。腳本應處理未指定的輸入值并驗證用戶確實提供的輸入值。
UE4中腳本操作的知識是需要我們了解的,希望上面UE4中將動作限制為特定類別的方法步驟能夠幫到你。
轉載聲明:本文來源于網絡,不作任何商業用途

全部評論


暫無留言,趕緊搶占沙發
熱門資訊

ZBrush合并/分開模型的方法

ZBrush視圖切換教程!

c4d模擬標簽的布料和布料碰撞體教程分享!...

14個SU建模思路與技巧,畫圖效率提升10倍!...

3D動漫制作軟件,你知道幾個?

C4D中軸心與軸對齊的兩種方法!

3D貼圖繪制軟件有哪些?

C4D是怎么樣導入到PS和AE的?

C4D如何制作布料褶皺的效果?
