版本号:4.26 在使用C++写行为树任务的时候,经常需要在蓝图中指定黑板键,在任务内部进行修改,而有时我们需要能够限制黑板键自动筛选可以输入对象。 因此, 首先我们需要在C++文件中,声明一个黑板键。
UPROPERTY(EditAnywhere, Category = Blackboard)
struct FBlackboardKeySelector BlackboardKey;
然后开始限制该黑板键值的输入范围。
限制输入范围为:Bool
BlackboardKey.AddBoolFilter(this, GET_MEMBER_NAME_CHECKED(UBTTask_Test, BlackboardKey));
限制输入范围为:FVector
BlackboardKey.AddVectorFilter(this, GET_MEMBER_NAME_CHECKED(UBTTask_Test, BlackboardKey));
限制输入范围为:Enum
BlackboardKey.AddEnumFilter(this, GET_MEMBER_NAME_CHECKED(UBTTask_Test, BlackboardKey), FindObject<UEnum>(ANY_PACKAGE, TEXT("TargetEnum")));
限制输入范围为:Actor
BlackboardKey.AddObjectFilter(this,GET_MEMBER_NAME_CHECKED(UBTTask_Test,BlackboardKey),AActor::StaticClass());
|