UE4複習2 資訊互動(上)

2022-09-15 08:06:12 字數 2151 閱讀 3057

1.自定義事件(函式呼叫事件)

自定義事件可以在函式中被呼叫,實現了函式呼叫函式外事件

在藍圖中右鍵,輸入custom event,點選建立事件

這個事件列印了乙個wow的字串。

然後在某函式中,右鍵輸入自定義方法的名稱,就會出現 call custom event。

這樣就實現了用別的事件觸發printwow這個函式,然後函式再去呼叫custom event這個過程。

比如這樣

ps.用的是乙個簡單的,列印字串的功能作為例子。一般來說自定義事件都比較複雜,用函式直接呼叫可以減少很多不必要的工作。

也可以用命令列進行呼叫, ce+空格+自定義事件名稱

2.類藍圖呼叫場景中其他actor或類藍圖

左圓錐為類藍圖bp_m,右圓環為類藍圖bp_n

第一種思路就是在bp_m的類藍圖中新增乙個變數,並且將該變數的型別改成要呼叫的actor 的型別。可以在場景中點選他看他的type。

下面具體介紹如何在類藍圖m中呼叫n中的事件或者函式。

首先,在m中新增變數,並修改型別為bp_n,可以把該型別改成public,便於選取。

編譯並儲存後,在場景中點選m,會發現多了乙個屬性,即選取哪個bp_n,

也可以用後面的吸管工具在場景中選取該物件。

比如圖中,按e列印輸出n的name;

ps.需要注意的是,右下角input選項裡,auto receive input要選成我們目前的角色。做改動之前是default,是不接受我們輸入的。

在n的藍圖中新增乙個自定義事件,命令n旋轉(因為之前選了個圓環,旋轉看不出來,所以現在換成一根棍狀的模型了)

編譯並儲存後 按e, 棍棍就開始旋轉了。

呼叫函式同理。

第二種思路是借用中間量。 

具體步驟如下。首先在乙個在場景中絕對會存在的藍圖類(比如角色)作為橋梁,先在其中新增需要呼叫的變數,並在場景中指認。

注意要把pawn轉換成我們使用的型別,在這裡是thirdpersoncharacter,轉換之後才可以在裡面找到bp_n。

ps.上述兩種方法,都需要在場景中事先指認變數n,如果想要在遊戲進行過程中再進行指認怎麼辦呢?

複製了兩根棍棍,name分別是bp_n, bp_n2, bp_n3。

假如我們只想讓bp_n3進行旋轉,就需要用到 get all actors of class這個函式。它是用來獲取場景中某類物體,並輸出乙個以該類物體為元素的陣列的函式。

這樣就只有第二根棍旋轉了。

3.類藍圖呼叫關卡藍圖中的自定義事件

可以用命令列的方式。

在類藍圖中,呼叫函式,execute console command

command裡面寫 ce+空格+要呼叫的事件名。

就可以實現類藍圖呼叫關卡藍圖的自定義事件。

ue4 載入材質 UE4渲染引擎模組簡介 2

ue4用新的pso caching用來替代原來的fshadercache。原來的fshadercache實現的是對shader 或二進位制的bytecode 進行cache.新的pso caching則是shadercache的超集,它不僅cache了渲染所用的shader 同時也cache了渲染狀...

UE4學習2 使用粒子效果 C

建立乙個粒子元件並且繫結到物體的靜態網格上。再再ue4裡面找乙個粒子資源右鍵copyreference 資源加入到粒子元件上 生成的物體就帶粒子效果了 來。馬不多 uparticlesystemcomponent particle createdefaultsubobject text mparti...

UE4全反射零耦合筆記 UMG與C 互動

1,建立widget 建立widget方法一 createwidget u widgetclass是uclass u widget xwidget createwidget u widget getworld u widgetclass 建立widget方法二 通過widgetthree建立元件,只...