Behavior Tree 점검

반응성, 비용, 증거를 같은 표에서 본다

행동 트리는 노드 배치보다 Blackboard 키, 중단 범위, 갱신 주기, 실행 결과가 맞물릴 때 안정해집니다.

memory Blackboard 키와 타입
react Observer Aborts 범위
cost Service, EQS 실행 빈도
01 memory Blackboard 계약

TargetActor, LastKnownLocation처럼 노드가 읽는 값의 의미를 고정합니다.

02 gate Decorator 중단

Self, Lower Priority, Both 중 현재 행동을 어디까지 멈출지 정합니다.

03 refresh Service 주기

시야 확인, 거리 계산, 상태 갱신을 필요한 간격으로만 실행합니다.

04 result Task 반환

성공, 실패, 진행 중 상태를 명확히 남겨 디버깅 가능한 행동으로 만듭니다.

좋은 기준 흔한 문제 확인 증거
Blackboard 키 이름과 타입이 노드 의도와 맞고, 값의 소유자가 분명합니다. Target, Location 같은 넓은 이름이 여러 의미로 재사용됩니다. ai.blackboard에서 값 변화가 설명됩니다.
Decorator 조건이 바뀌면 필요한 브랜치만 재평가됩니다. Abort 범위가 커서 이동과 공격이 자주 끊깁니다. Behavior Tree Debugger에서 중단 지점이 보입니다.
Service 감지, 거리, 상태 갱신은 주기와 캐시 기준이 있습니다. 모든 AI가 매 틱 같은 계산을 반복합니다. Profiler와 Visual Logger가 갱신 비용을 보여줍니다.
Task 입력 키, 실행 결과, 실패 조건을 반환값으로 드러냅니다. 커스텀 작업 내부 부작용 때문에 실패 원인이 숨습니다. 실패 시 Blackboard 값과 이동 결과가 함께 남습니다.
구조 Selector와 Sequence 의도가 먼저 보이는가

상위 노드는 목표를 말하고, 하위 노드는 조건과 행동을 분해해야 합니다.

비용 AI 수가 늘어도 같은 빈도로 돌 필요가 있는가

먼 AI는 인지 갱신과 EQS 호출을 낮은 빈도로 옮깁니다.

증거 디버거에서 현재 판단 경로를 설명할 수 있는가

AIDebugger, Blackboard, Visual Logger를 함께 보며 원인을 좁힙니다.