카테고리 없음

[UE4] BehaviorTree - 테스크 노드(Task Node)의 종류

Honey Badger 2023. 4. 12. 02:47

 

 

1. Finish With Result

    트리의 실행을 종료하면서, 노드가 지정한 결과값을 반환하는 노드이다. 이 노드는 주로 Behavior Tree가 끝나는 부분에서 사용되며, 이전 노드들이 실행한 결과값에 따라 Behavior Tree의 실행 결과를 반환하고자 할 때 사용된다. 또한 FinishWithResult 노드는 노드가 실행되기 전에 입력받은 블랙보드 데이터를 검사하여, 이에 따라 실행 결과를 반환할 수도 있다. 

 

 

 

2. Make Noise

   AI 캐릭터가 주변에 노이즈를 발생시키는 역할을 한다. 다른 AI 캐릭터들은 노이즈를 듣고 반응할 수 있다. 노이즈에는 다양한 정보를 설정할 수 있는데 노이즈의 크기, 노이즈를 발생시킨 캐릭터의 정보, 노이즈의 발생 위치 등이 포함된다. 이러한 정보는 다른 AI 캐릭터들이 노이즈를 들었을 때 적절하게 반응할 수 있도록 도와준다. MakeNoise 노드는 AI 캐릭터들의 협조적인 행동과 게임 플레이의 리얼리티를 높이는 데 큰 역할을 한다. 만약 플레이어가 경비원에게 걸렸다면 경비원이 노이즈를 발생시킴으로서 다른 AI 캐릭터들이 캐릭터의 위치를 추적할 수 있게 된다. 

 

 

 

 

3. Move Directly Toward

     주어진 위치로 캐릭터를 이동시키는 데 사용되는 노드이다. 이 노드는 대상 위치를 나타내는 Vector3 변수와 이동 속도를 나타내는 Float 변수를 필요로 한다. 이 노드는 네비게이션 시스템과 관계없이 캐릭터를 직선으로 목표값으로 이동시킨다. 캐릭터가 직선으로 이동하는 도중 장애물에 부딧히면 멈추고 작업이 중단된다. 

 

 

 

 

4. Move To

      Move Directly Toward 노드와 목표값으로 이동한다는 동작 자체는 비슷하지만 MoveTo 노드는 네비게이션 시스템을 사용하여 이동한다. 이 노드는 이동을 취소하고 다른 작업을 수행하기 위한 조건도 설정할 수 있다. 

 

 

 

 

5. Play Animation

   명시된 애니메이션을 재생시킨다. 

 

 

 

 

6. Play Sound

   명시된 사운드를 재생시킨다.

 

 

7. Push PawnAction

  이 노드를 사용하면 지정한 작업을 캐릭터의 컨트롤러에 푸시할 수 있다. 

 

 

 

 

 

8. Rotate to fave BB entry

    명시된 블랙보드 Key를 향해 연결된 Pawn을 회전시킨다. (이때 Pawn의 Use Controller Rotation Yaw 옵션이 true로 설정되어 있어야 성공적으로 회전할 수 있다.)

 

 

 

 

 

9. Run Behavior

   이 노드를 사용하면 실행 스택에 하위 트리를 밀어 넣어 다른 동작 트리를 실행하도록 할 수 있다. 고려해야 할 한가지 제한 사항은 런타임 중에 하위 트리를 변경할 수 없다는 것이다. 이 제한은 상위 트리에 주입되는 하위 트리의 루트레벨 데코레이터를 지원함으로 인해 발생한다. 또한 실행 중인 트리의 구조는 런타임에 수정할 수 없다. 만약 하위 트리가 런타임에 변경될 수 있도록 하고싶으면 아래 노드를 대신 사용할 수 있다. 

 

 

 

 

 

10. Run Behavior Dynamic

    이 노드를 사용하면 런타임에 SetDynamicSubtree()함수를 사용하여 하위 트리 에셋을 할당할 수 있다. 대신 하위 트리의 루트 레벨 데코레이터를 지원하지 않는다. 

 

 

 

 

 

11. Run EQS Query

   지정된 EQS(Environment Query System) 에셋을 실행합니다.

 

 

 

 

 

12. Set Tag Cooldown

  Behavior Tree 실행을 방지하는 Cooldown Tag Decorator와 함께 사용되며, Cooldown 값을 설정한다.

 

 

 

 

 

13. Wait

   지정된 대기 시간이 완료될 때까지 트리가 이 노드에서 대기하도록 한다. 

 

 

 

 

 

14. Wait Blackboard Time

   위의 노드와 동일한 작업을 하지만, 대기 시간에 대해선 블랙보드의 값을 가져온다. 

 

 

 

 

 

15. Custom Tasks

   New Task 버튼을 클릭하여 고유한 커스텀 작업을 생성할 수 있습니다.