跳至内容

UBTTask_AgentStep

class UBTTask_AgentStep : public UBTTaskNode, public IInferenceAgent

一个 BT 任务,用于运行一个推理步骤以确定模型采取的行动。

依赖项

此类型依赖于

继承自: public UBTTaskNode, public IInferenceAgent

公共接口

构造函数

UBTTask_AgentStep

UBTTask_AgentStep(FObjectInitializer const &ObjectInitializer)

任务构造函数。

参数

名称类型默认
ObjectInitializerFObjectInitializer const &

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 28 行, 第 1 列)

实现: Schola/Source/Schola/Private/Inference/BT/BTT_AgentStep.cpp (第 5-11 行)

公共函数

GetControlledPawn

inline virtual APawn * GetControlledPawn() override

获取代理的控制 Pawn。

返回值:指向控制 Pawn 的指针。

返回值: APawn *

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 74 行, 第 15 列)

GetInteractionManager

inline virtual UInteractionManager * GetInteractionManager() override

获取用于收集执行器和观察值的交互管理器。

返回值:指向交互管理器对象的指针。

返回值: UInteractionManager *

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 79 行, 第 29 列)

GetBrain

inline virtual UAbstractBrain * GetBrain() override

获取代理的大脑。

返回值:指向大脑对象的指针。

返回值: UAbstractBrain *

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 84 行, 第 24 列)

GetPolicy

inline virtual UAbstractPolicy * GetPolicy() override

获取代理的策略。

返回值:指向策略对象的指针。

返回值: UAbstractPolicy *

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 89 行, 第 25 列)

GetAllObservers

inline virtual TArray<UAbstractObserver *> GetAllObservers() override

获取附加到控制 Pawn 的观察值以及附加到代理的观察值。

返回值:观察值对象数组。

返回值: TArray&lt;UAbstractObserver &#42;&gt;

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 94 行, 第 16 列)

GetAllActuators

inline virtual TArray<UActuator *> GetAllActuators() override

获取附加到控制 Pawn 的执行器以及附加到代理的执行器。

返回值:执行器对象数组。

返回值: TArray&lt;UActuator &#42;&gt;

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 102 行, 第 16 列)

GetStatus

inline virtual EAgentStatus GetStatus() override

获取代理的状态。

返回值:代理的状态。

返回值: EAgentStatus

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 110 行, 第 22 列)

SetStatus

inline virtual void SetStatus(EAgentStatus NewStatus) override

设置代理的状态。

参数

  • NewStatus (EAgentStatus) – 要设置的新状态。

属性: inline, virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 115 行, 第 14 列)

TickTask

virtual void TickTask(UBehaviorTreeComponent &OwnerComp, uint8 *NodeMemory, float DeltaSeconds) override

参数

名称类型默认
OwnerCompUBehaviorTreeComponent &
NodeMemoryuint8 *
DeltaSecondsfloat

属性: virtual

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 120 行, 第 14 列)

实现: Schola/Source/Schola/Private/Inference/BT/BTT_AgentStep.cpp (第 23-30 行)

公共成员

UInteractionManager * InteractionManager

UInteractionManager * InteractionManager = = CreateDefaultSubobject<UInteractionManager>(TEXT("InteractionManager"))

定义代理如何与环境交互的对象。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 32 行, 第 21 列)

UAbstractPolicy * Policy

UAbstractPolicy * Policy

定义一个异步函数 f:Observations->Actions,用于为代理做出决策的对象。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 36 行, 第 17 列)

UAbstractBrain * Brain

UAbstractBrain * Brain

定义决策请求如何同步的对象。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 40 行, 第 16 列)

TArray<UAbstractObserver *> Observers

TArray<UAbstractObserver *> Observers

收集代理观察值的观察值列表。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 44 行, 第 8 列)

TArray<UActuator *> Actuators

TArray<UActuator *> Actuators

执行代理动作的执行器列表。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 48 行, 第 8 列)

EAgentStatus Status

EAgentStatus Status = = EAgentStatus::Running

代理的状态。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 52 行, 第 14 列)

bool bRegisterAgentStep

bool bRegisterAgentStep = = true

代理是否应设置为自动执行操作。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 56 行, 第 6 列)

FThinkTickFunction ThinkTickFunction

FThinkTickFunction ThinkTickFunction = = FThinkTickFunction(this)

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 60 行, 第 20 列)

FActTickFunction ActTickFunction

FActTickFunction ActTickFunction = = FActTickFunction(this, true)

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 64 行, 第 18 列)

bool bUseTickTask

bool bUseTickTask = = false

是 tick 任务还是执行任务。

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 68 行, 第 6 列)

私有接口

私有函数

ExecuteTask

EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent &OwnerComp, uint8 *NodeMemory)

参数

名称类型默认
OwnerCompUBehaviorTreeComponent &
NodeMemoryuint8 *

返回值: EBTNodeResult::Type

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 24 行, 第 21 列)

实现: Schola/Source/Schola/Private/Inference/BT/BTT_AgentStep.cpp (第 13-21 行)

Step

void Step(UBehaviorTreeComponent &OwnerComp)

参数

名称类型默认
OwnerCompUBehaviorTreeComponent &

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 131 行, 第 6 列)

实现: Schola/Source/Schola/Private/Inference/BT/BTT_AgentStep.cpp (第 32-46 行)

私有成员

bool bConnected

bool bConnected = = false

与所有者 Pawn 的连接是否已建立。

属性: private

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 125 行, 第 6 列)

APawn * OwnerPawn

APawn * OwnerPawn

执行此任务的 Pawn。

属性: private

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 129 行, 第 7 列)

EBTNodeResult::Type TaskResult

EBTNodeResult::Type TaskResult = = EBTNodeResult::InProgress

属性: private

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 133 行, 第 21 列)

来源: Schola/Source/Schola/Public/Inference/BT/BTT_AgentStep.h (第 20 行, 第 1 列)

© . This site is unofficial and not affiliated with AMD.