inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

12강 행동트리 모델의 구현

데코레이터 구현 질문..

210

themoon007

작성한 질문수 98

0

수업에서는 AttackInRange 데코레이터를 CalculateRawConditionValue() 만 구현해서 사용했는데요.

 

aborts 발동 조건같은걸 따로 지정안해도 자동으로 되는 건가요??

 

BlackBoard 데코레이터의 경우에는 값이나 결과? 가 바뀌면 aborts가 발동되는 걸로 이해해서 코드를 보니 상당히 복잡하게 aborts 구현이 되어있더라구요....

 

어설프게 이해한 바로는 블랙보드의 키에 델리게이트 등록해서 값 변경 이벤트를받아 ConditionalFlowAbort() 라는 함수를 호출하고 있습니다.

이 과정에서 CalculateRawConditionValue()가 또 호출되고 활성/비활성으로 나뉘어져 뭔가 복잡하게 수행하는데요.

 

결국 aborts를 해야하는지 말아야하는지 체크는 ConditionalFlowAbort() 를 호출함으로서 시작되는 것 같아 보이는데....

이걸 안 한 AttackInRange 데코레이터는 aborts 가 어떻게 동작하는지 알고 싶습니다..

 

 

unreal-engine ue-blueprint 언리얼-c++

답변 1

0

이득우

음.. 사실 언리얼의 BT가 실전에서 쓰기에는 좀 애매한 부분이 있습니다.
그래서 BT 모델의 동작을 학습하는 정도가 딱 적당해보입니다.
만일 사용한다고 해도 정교하게 진행하기 보다 트리 형태로 우선권이 주어지는 상태 머신 느낌으로 사용하는게 좋다고 보여집니다. 라일라 샘플을 봐도 BT 자체는 단순하게 구성되어 있고 EQS에서 많은 것이 진행됩니다.
혹시 어떤 기능이 필요하신지 궁금하네요.

0

themoon007

데코레이터로 분기를 빠져나오게 하는 조건을 구현하는 방법을 잘 모르겠습니다..

확인 주기나 조건 구현장소 이런걸 어디서 어떻게 하는게 좋은지 알아보려고 수업내용을 다시 보다가 딱히 aborts 관련된 구현이 없이 돌아가게 되있어서 디폴트 동작이 있는건지 궁금했습니다...

0

이득우

저는 그 경우 관찰자 중단으로 구현했는데, 언리얼의 데코레이터가 그 기능을 지원하는지는 확인해봐야겠네요.

0

themoon007

네. 언리얼에서 기본제공하는 블랙보드 데코레이터의 관찰자 중단처럼 직접 만든 attackinRange 데코레이터 내에서 aborts 를 구현하는게 필요할것 같았는데. attackInRange는 aborts 따로 구현없이 observer aborts 옵션만 both로 하고 있어서 정말 관찰자 중단이 작동되고 있는건지 잘 모르겠습니다..

무한맵 제작과정중에 GetWorld 가 Nullptr 을 반환합니다.

0

48

2

12강 행동트리에서 질문이 있습니다.

0

52

1

위젯 사이즈랑 위치 질문드려요.

0

82

3

행동트리의 데코레이션 관련하여 질문이 있습니다.

0

94

3

VS 2026 의 문제일까요?

0

492

2

에셋참조 블루프린트질문

0

67

2

애님 몽타주 콤보 관련질문

0

70

2

ThirdPerson CDO 에러가 생깁니다.

0

96

3

캐릭터가 움직이지 않습니다.

0

184

4

쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.

0

62

2

TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.

0

95

2

7강에 나오는 생성자에 대해서 궁금합니다.

0

79

2

6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.

0

73

2

3강을 마무리 하며, 카메라가 움직이지 않습니다.

0

71

2

Use Controller Rotation 옵션값이 궁금합니다.

0

84

2

3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.

0

66

2

PlayerController 에 대헤 제가 잘못 이해한 것 같습니다.

0

78

2

13강 UpdateStat 부분에서 문제를 겪고 있습니다.

0

64

2

BP_PlayerController의 CustomEvent노드 이유가 궁금합니다.

0

66

1

콤포넌트 포인터 선언시 TObjectPtr<>과 UStaticMeshComponent* 차이점

0

73

2

CharacterMovementComponent의 RotationRate관련해서 질문이 있습니다.

0

115

2

언리얼 공부방법에 대해 질문드립니다.

0

87

2

4강 에서 이상한 그림자가 남습니다.

0

48

1

2강에서 카메라 회전안되시는분 참고

2

92

2