[Unreal] 언리얼 행동 트리
Table of Contents
행동 트리 #
- 트리를 기반으로 계층화되어있다.
- 왼쪽에서부터 깊이 우선 탐색을 시작한다.
- 모듈화가 잘 되어 있어 확장이 자유롭다.
언리얼 행동 트리 구성 요소 #
- 자식 노드를 컨트롤 하는 컴포짓(Composite) 노드
이름 | 설명 |
---|---|
Sequence | 자식 노드를 모두 수행한다. |
Selector | 자식 노드 중 하나를 선택한다. |
Parallel | 자식 노드를 동시에 수행한다. |
- 노드 수행 결과
이름 | 설명 |
---|---|
Succeeded | 행동의 성공 |
Failed | 행동의 실패 |
Aborted | 외부 요인으로 인한 행동의 실패 |
InProgress | 행동 결과 반환을 대기한다. |
- 컴포짓 노드에 부착하는 추가 기능
이름 | 설명 |
---|---|
Decorator | 이 조건에 부합하는 경우에만 컴포짓 노드가 실행된다. |
Service | 컴포짓 노드가 활성화될 때 주기적으로 실행하는 부가 명령이다. |
Abort | Decorator 조건에 안맞을 시 컴포짓 내 활동을 모두 즉시 중단하고, 행동 트리의 루트부터 다시 실행한다. (관찰자 중단) 이것을 설정하지 않으면 Decorator 조건에 안맞아도 일단 하던 컴포짓 노드는 다 완료한 뒤 그 때 조건을 체크한다. Self : 자신과 하위 자식 노드를 중단한다. Lower Priority : 이 노드의 오른쪽에 있는 (우선순위가 낮은) 모든 노드를 중단한다. Both: 둘 다 중단한다. |