Unreal Engine 4 蓝图之自定义事件

UE4的蓝图就跟C++等编程语言在概念上是非常类似的。在蓝图中你可以定义变量、函数、宏等等,高级点的,它还可以被继承。这还不算,我们还可以定义蓝图接口,规范子类的行为。基本上C++中可以做的,蓝图也可以做到,而且是所见即所得,拖拖拽拽,即时编译,立即生效。

一般的做法是,程序员在C++中做好功能模块,关卡设计师,用蓝图创建游戏的逻辑,关卡师不需要会编程、可以自己创建逻辑,至少在逻辑这一层不需要程序员来配合。这样的效率会高很多,而且也没有类似Lua这样的脚本语言参与,设计师的门槛要低很多了。

这里记录下蓝图中自定义事件的使用方法:

在蓝图的工具栏上,我们可以看到5个按钮,通过这5个按钮我们可以分别创建多种蓝图的元素。



通过在蓝图中右键、添加事件-》添加自定义事件,可以创建一个自定义事件。自定义事件可以指定输入参数、还可以指定事件是否能在客户端和服务器端同步。


复制那里有四个选项,默认是不能复制,还可以选择多路传送、在服务器上运行、在其所属的客户端上运行,如果需要让事件在网络上传送,可以选这几个选项。

输入值一栏可以添加参数,类型和变量类型一样。

我们来做个例子,实现当按下K按键时,触发这个自定义事件,打印一句Hello。


触发自定义事件,就像调用函数一样,直接调用即可,如果有参数,也可以像函数一样指定参数。

我们还可以动态的绑定将事件绑定到不同的调度器,就像高级编程语言中的Delegate一样。比如这样一个例子,我们按下K,为调度器绑定MyEvent,按下F,为调度器绑定MyEvent1,同样是调用同一个调度器,触发的行为是不同的。


发布了69 篇原创文章 · 获赞 32 · 访问量 22万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章