UInferenceComponent
class UInferenceComponent : public UActorComponent, public IInferenceAgent一个实现了 IInferenceAgent 接口的组件,用于控制具有 Brain/Policy 的 Pawn。
依赖项
此类型依赖于
- FActTickFunction
- FThinkTickFunction
- IInferenceAgent
- UAbstractBrain
- UAbstractObserver
- UAbstractPolicy
- UActuator
- UInteractionManager
继承自: public UActorComponent, public IInferenceAgent
公共接口
公共函数
GetControlledPawn
inline virtual APawn * GetControlledPawn() override获取代理的控制 Pawn。
返回值:指向控制 Pawn 的指针。
返回值: APawn *
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 61, column 15)
GetInteractionManager
inline virtual UInteractionManager * GetInteractionManager() override获取代理的交互管理器。
返回值:交互管理器的指针。
返回值: UInteractionManager *
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 70, column 29)
GetBrain
inline virtual UAbstractBrain * GetBrain() override获取代理的大脑。
返回值:大脑的指针。
返回值: UAbstractBrain *
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 79, column 24)
GetPolicy
inline virtual UAbstractPolicy * GetPolicy() override获取代理的策略。
返回值:策略的指针。
返回值: UAbstractPolicy *
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 88, column 25)
GetAllObservers
inline virtual TArray<UAbstractObserver *> GetAllObservers() override获取附加到代理的所有观察者。
返回值:观察者指针的数组。
返回值: TArray<UAbstractObserver *>
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 97, column 16)
GetAllActuators
inline virtual TArray<UActuator *> GetAllActuators() override获取代理的所有执行器。
返回值:执行器指针的数组。
返回值: TArray<UActuator *>
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 109, column 16)
GetStatus
inline virtual EAgentStatus GetStatus() override获取代理的状态。
返回值:代理的状态。
返回值: EAgentStatus
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 123, column 22)
SetStatus
inline virtual void SetStatus(EAgentStatus NewStatus) override设置代理的状态。
参数
NewStatus(EAgentStatus) – [in] 要设置的新状态。
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 132, column 14)
RegisterComponentTickFunctions
inline void RegisterComponentTickFunctions(bool bRegister) override注册或注销代理的 Tick 函数。
参数
bRegister(bool) – [in] 是否注册 Tick 函数。
属性: inline
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 141, column 6)
BeginPlay
inline virtual void BeginPlay() override游戏开始或生成时调用。
属性: inline, virtual
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 160, column 14)
公共成员
UInteractionManager * InteractionManager
UInteractionManager * InteractionManager = = CreateDefaultSubobject<UInteractionManager>(TEXT("InteractionManager"))定义代理如何与环境交互的对象。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 23, column 21)
UAbstractPolicy * Policy
UAbstractPolicy * Policy定义一个异步函数 f:Observations->Actions,用于为代理做出决策的对象。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 27, column 17)
UAbstractBrain * Brain
UAbstractBrain * Brain定义决策请求如何同步的对象。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 31, column 16)
TArray<UAbstractObserver *> Observers
TArray<UAbstractObserver *> Observers收集代理观察值的观察值列表。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 35, column 8)
TArray<UActuator *> Actuators
TArray<UActuator *> Actuators执行代理动作的执行器列表。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 39, column 8)
EAgentStatus Status
EAgentStatus Status = = EAgentStatus::Stopped代理的状态。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 43, column 14)
FThinkTickFunction ThinkTickFunction
FThinkTickFunction ThinkTickFunction = = FThinkTickFunction(this)来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 47, column 20)
FActTickFunction ActTickFunction
FActTickFunction ActTickFunction = = FActTickFunction(this)来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 51, column 18)
bool bRegisterAgentStep
bool bRegisterAgentStep = = true代理是否应设置为自动采取行动。
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 55, column 6)
来源: Schola/Source/Schola/Public/Inference/InferenceComponent.h (line 16, column 1)