UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)

概述

蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)的意义和C/C++中函数以及宏大致相同。它们都是用于代码复用,并且如果合理使用可以让蓝图变得非常整洁。

蓝图函数库

一个蓝图函数库中可以定义若干个函数,这些函数都是全局函数,可以在任意蓝图中直接调用。

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)
下面是个简单的例子,定义了一个DoubleIt把输入的float乘以2

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)

蓝图宏库

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)
创建蓝图宏库需要选择一个“基类”,这样蓝图宏库中就可以使用基类的成员了

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)
本例中以AActor为基类创建了一个宏库,这样我们就可以使用AActorGetGameMode方法了

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)

下面是我的TOPDOWN_Character蓝图,在没有使用宏时获取并转换为TOPDOWN_GameMode需要两个节点
UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)

使用了上文定义的Get TOPDOWN Game Mode就变成了下面的样子

UE4基础:蓝图函数库(Blueprint Function Library)和蓝图宏库(Blueprint Macro Library)