: ai캐릭터에 빙의해서 ai캐릭터를 움직여줄 클래스
- Perception 컴포넌트 : ai가 대상을 어떤 감각으로 감지할 것인지 어떻게 감지 할것인지를 담당하는 컴포넌트
Behavior 트리에서 사용할 변수들이 담겨있는 클래스이다.
: 트리의 형태를 띄며 ai의 해야할 행동들을 제어하는 컴포넌트로 root에서 시작하고 branch는 컴포짓으로 leaf노드는 task로 구성되어 있다.
Composite
: 성공과 실패로 결과값이 리턴되며 성공하는 조건들을 제어할 수 있다.
- Sequence : 모든 자식노드가 성공해야 성공으로 인식하고 다음으로 넘어간다. 한개라도 실패하면 다시 루트노드로 돌아간다.
- Selector : 한개라도 성공하면 성공으로 리턴되며 자식노드에서 실패시 다음으로 넘어간다.
- Simple Parallel : 왼쪽은 task로 오른쪽은 task가 처리될동안 돌아갈 컴포짓으로 구성되어있다.
Task
: 실질적으로 실행할 행동을 구현한다.
Decorator
: Task나 Composite에 붙어서 이것을 실행할지 안할지 여부를 제어하는 조건절 역할을 한다.
관찰자 중단
: 데코레이터 설정에서 사용되는 기능으로 특정 조건의 변경을 감지하면 현재 실행중인 Task를 중단하고 다음 부분으로 넘어다는 기능이다. 필요에 따라서 4가지 종류가 있다.
- None : 아무런 중단이 발생하지 않는다.
- Self : 현재 노드의 실행을 중단한다.
- Lower Priority : 현재노드보다 우선순위가 낮은 하위노드들을 중단한다.
- Both :자신과 하위노드를 모두 중단한다.
Service
: 컴포짓이나 Task에 붙어서 주기적으로 실행된다. 주로 블랙보드의 값을 설정하는 역할을 한다.