UE4筆記-事件分發機制(1)


純藍圖中的事件分發機制

1, 在要分發事件的地方創建一個事件調度器(Event Dispacther)並命個名,例如:就在主角Pawn的藍圖中創建一個事件調度器就叫MyEventDispatcher,當主角血量發生變更時就播放。如果需要在廣播事件的時候帶參數就在該事件調度器的Details面板Inputs屬性項里邊點加號‘+’,來添加要攜帶的參數。因為要播放血量變動,肯定要帶一個血量integer類型的參數了。

 

 

 

 

 

 2, 在需要接收的地方Bind 這個事件調度器。例如:一個UI藍圖(User Widget)中需要實時顯示血量,就要訂閱這個事件調度器廣播了,也就是Bind這個Event Dispacher。具體的步驟就是a,Get Player Pawn b,Cast to 正真的Pawn,c,Bind MyEventDispatcher,然后從event引腳拖出輸入線創建自己的事件(其實就是把自己定義的事件綁到這個事件調度器上,讓事件調度器廣播驅動自定義的事件),為啥要從event引腳拖出輸入線來創建自己的事件呢,主要是為了創建匹配這個事件調度器要廣播事件形式,比如這個事件是要帶參數的,單獨Add Custom Event是不帶參數的,那樣拖出來創建的話就能直接創建一個參數匹配的事件了。還有一種更方便方法是,Cast to 正真的Pawn后直接Assign MyEventDispatcher,這樣綁定+創建自定義事件一步搞定。

 

 

 

 

3, 綁定后就可以在自定義的事件中干自己的事了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM