【UE4】事件调度器(蓝图)

事件调用器

事件调度器是蓝图中按照观察者模式(订阅)而添加的。观察者模式是较为常用的一种设计模式,具有高效低耦合的特性。在整个设计链上,采用有动态状态改变时主动发出通知,从而达到订阅特性。

观察者模式应当构建对象,应该将对象想象为观察者和被观察者。

使用事件调度器首先要分清观察者和被观察者!

观察者:希望接受被观察者的响应

所以,我们要记住响应逻辑(动作)应该写在观察者身上,而出发动作应该卸载被观察者身上。

所以,事件应该写在希望接收通知的对象(订阅者)身上。调度器写到发出通知的人(被订阅者)身上。

事件调度器的使用

以上帝开灯为例,上帝是被订阅者,灯是订阅者。

事件调用器的使用,可以实现:在关卡中添加新的灯时,不用每个灯都编写上帝控制开关的逻辑,利用事件调度器,一起调度灯的开关。

1、编写事件调度器

在被订阅者身上编写事件调度器

请添加图片描述

2、想使用事件调度器必须先绑定

在订阅者(灯)上添加绑定事件,绑定需要持有被订阅者(上帝,也是事件调度器的持有者)引用方可绑定。

即从订阅者身上找到被订阅者的引用,再从被订阅者身上找到调度器,最后绑定给自己

请添加图片描述

3、使用事件调度器

绑定成功后,直接在被订阅者(上帝)上调用事件调度器即可。
请添加图片描述

4、解除事件调用器绑定的事件

可以解除该事件调用器绑定的某个事件,也可以解除该事件调用器绑定的所有事件。

定的事件

可以解除该事件调用器绑定的某个事件,也可以解除该事件调用器绑定的所有事件。
请添加图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44283836/article/details/127315792