EvolvingBehavior  0.2.0
 
Loading...
Searching...
No Matches

The abstract base class for genes representing Task nodes, which are leaves of the behavior tree. More...

#include <BTTaskNodeGene.h>

Inheritance diagram for UBTTaskNodeGene:
UBTNodeGene UBTGeneratedTaskGene UBTMappedTaskGene

Public Member Functions

int32 RemoveService (UBTServiceGene *service)
 
int32 InsertService (UBTServiceGene *service, int32 idx)
 
int32 AddService (UBTServiceGene *service)
 
int GetNumServices () const
 
UBTServiceGeneGetService (int idx) const
 
virtual UBTNodeGeneDuplicate (UObject *outer) override
 
virtual void SetServiceInjector (UServiceInjector *serviceInjector) override
 
virtual void SetServiceInjector (UServiceInjector *serviceInjector)
 

Public Attributes

virtual UBTTaskNode * BuildPhenotype (UObject *outer) PURE_VIRTUAL(UBTTaskNode
 
virtual UBTTaskNodeGeneDuplicateTask (UObject *other) PURE_VIRTUAL(UBTTaskNode
 
- Public Attributes inherited from UBTNodeGene
virtual FString ToString () PURE_VIRTUAL(UBTNodeGene
 
virtual UBTNodeGeneDuplicate (UObject *outer) PURE_VIRTUAL(UBTNodeGene
 

Protected Attributes

TArray< UBTServiceGene * > services
 
- Protected Attributes inherited from UBTNodeGene
UServiceInjectorServiceInjector
 

Detailed Description

The abstract base class for genes representing Task nodes, which are leaves of the behavior tree.

Author
npc
Date
12/01/17

Task nodes perform an action, like moving a character or changing it's color.

There are currently two subclasses:

BTMappedTaskGene: These are objects which map to templates for creating an Unreal Engine task node. Defaults are automatically set, and the only set up required is to add default nodes to the "NodeMapper" in the editor, or make sure the nodes you want are in there. We recommend using only mapped nodes until you are comfortable with the tool.

BTGeneratedTaskGene: These are objects which map to templates for creating an Unreal Engine task node. These nodes are based off the default Unreal nodes, sharing their base class, but must be "created" in the editor. This means going into the GeneratedTemplateLibrary and adding nodes. You must choose a name, class, and properties for each node. If your property names match those of the UClass you chose, the internal variables of the node will be mutated during the evolution process, giving an increased degree of control.

Member Function Documentation

◆ SetServiceInjector()

void UBTTaskNodeGene::SetServiceInjector ( UServiceInjector serviceInjector)
overridevirtual

Reimplemented from UBTNodeGene.


The documentation for this class was generated from the following files:
  • Source/EvolvingBehavior/Public/Representation/BTTaskNodeGene.h
  • Source/EvolvingBehavior/Private/Representation/BTTaskNodeGene.cpp