BT 데코레이터 문제
135
작성한 질문수 11
안녕하세요. 강의를 완강하고 다시금 따라하며 게임을 제작해보고 있는 한 학생입니다.
강의와 크게 상관은 없지만 질문해봅니다.

Selector를 통해서 공격범위에 있다면 Attack을 아니라면(inverse) Move to하게 했습니다.
근데 제가 하고 싶은 건 공격범위 안에 들어가는 즉시 공격을 하고 싶은데(CheckAttackRange에서 공격사거리 측정) 지금은 무조건 Target의 위치까지 Move to 한 뒤에 Attack 을 하게 됩니다.
Move to 위에있는 CheckAttakcRange(inverse)에 옵션으로 Observer Aborts을 self로 해봐도 결과는 동일합니다.
어떤 이유로 인해 발생하는지 계속 고민해봐도 모르겠어서 질문 드립니다.
답변 3
0
move to 노드는 Acceptable Radius 라는 AI가 목표 위치 근처에 도착했는지 판단하는 float 변수가 있습니다. 저는 각 몬스터마다 , 각 공격패턴 마다 사거리가 다르다보니 패턴을 정한 후 사거리 값을 가져와서 블랙보드에 사거리 키값을 정하고, move to 노드를 행동트리에서 바로 실행시키지않고 새로운 task 노드를 만들어서 MoveToActor()을 코드로 호출해서 해결했습니다.
0
음.. 어짜피 강의를 다 들으셨으니, Target과의 거리에 따라 MoveTo와 Attack을 기능을 합친 Task를 하나 만들어보시는것도 좋을 것 같습니다. 기능은 기존 MoveTo 노드 소스를 참고해보시고요.
0
안녕하세요, 인프런 AI 인턴입니다. qmal789님.
Behavior Tree에서 발생하는 문제에 대해 고민 중이시군요. 게임 AI에서 행동 패턴을 정의하는 데는 세심한 설정이 필요합니다. 현재 상태에서는 설정한 노드가 의도한 대로 작동하지 않는 것 같네요.
여기서 중요한 점은 CheckAttackRange 데코레이터의 동작입니다. Observer Aborts 옵션을 적절히 설정하면 변경된 조건에 따라 실행 중인 작업을 중단할 수 있습니다. 설정을 ‘Both’로 변경해 보시고, 노드의 변화를 더 주시해보는 것도 방법이 될 수 있습니다. 또한, Move To 작업이 완전히 완료되기 전에 조건에 따라 즉시 중단되어야 하므로, 데코레이터가 이를 적절히 반영하게 하는 것이 중요합니다.
추가적으로, 비슷한 문제가 있어서 참고하실만한 게시글을 추천드립니다:
- 비헤이비어 트리에서 Observer Aborts의 활용 - 데코레이터의 설정에 대한 심도 있는 설명을 제공하고 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
무한맵 제작과정중에 GetWorld 가 Nullptr 을 반환합니다.
0
44
2
12강 행동트리에서 질문이 있습니다.
0
51
1
위젯 사이즈랑 위치 질문드려요.
0
81
3
행동트리의 데코레이션 관련하여 질문이 있습니다.
0
93
3
VS 2026 의 문제일까요?
0
483
2
에셋참조 블루프린트질문
0
67
2
애님 몽타주 콤보 관련질문
0
70
2
ThirdPerson CDO 에러가 생깁니다.
0
95
3
캐릭터가 움직이지 않습니다.
0
180
4
쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.
0
62
2
TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.
0
94
2
7강에 나오는 생성자에 대해서 궁금합니다.
0
78
2
6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.
0
73
2
3강을 마무리 하며, 카메라가 움직이지 않습니다.
0
70
2
Use Controller Rotation 옵션값이 궁금합니다.
0
83
2
3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.
0
64
2
PlayerController 에 대헤 제가 잘못 이해한 것 같습니다.
0
78
2
13강 UpdateStat 부분에서 문제를 겪고 있습니다.
0
63
2
BP_PlayerController의 CustomEvent노드 이유가 궁금합니다.
0
64
1
콤포넌트 포인터 선언시 TObjectPtr<>과 UStaticMeshComponent* 차이점
0
72
2
CharacterMovementComponent의 RotationRate관련해서 질문이 있습니다.
0
114
2
언리얼 공부방법에 대해 질문드립니다.
0
86
2
4강 에서 이상한 그림자가 남습니다.
0
46
1
2강에서 카메라 회전안되시는분 참고
2
90
2





