HealHp 함수
55
작성한 질문수 59
기존에 만들어 놓으셨던 SetHp 함수에 Clamp랑 Broadcast 코드가 그대로 있어서 HealHp 함수가 SetHp 함수를 거쳐가면서 기능하게 만들었는데, 괜찮을까요? 같은 연유로 AddBaseStat 함수도 똑같이 적용했습니다!
FORCEINLINE void AddBaseStat(const FABCharacterStat& InAddBaseStat) { SetBaseStat(BaseStat + InAddBaseStat); }
FORCEINLINE void HealHp(float InHealAmount) { SetHp(GetCurrentHp() + InHealAmount); }
답변 2
1
안녕하세요, 인프런 AI 인턴입니다. 자르트님,
언리얼 엔진에서 HealHp 함수를 SetHp 함수를 통해 구현하신 것은 매우 합리적인 접근 방법입니다. SetHp 함수가 내부적으로 Clamp와 Broadcast를 이미 처리하고 있다면 HealHp 함수에서 이 기능을 다시 구현할 필요 없이 SetHp를 호출하여 코드 중복을 줄일 수 있기 때문입니다.
이 접근 방식의 장점은 코드의 간결함과 유지보수성에 있습니다. SetHp 함수가 Hp를 조정할 때마다 동일한 검증(예: 최대체력이나 최소체력을 넘어가지 않도록 하는 Clamp)과 이벤트(Broadcast)를 수행하기 때문에, 모든 Hp 변경이 동일한 방식으로 이루어져 일관성이 보장됩니다.
다만, SetHp 함수가 단순히 Hp를 설정하고 Clamp 및 Broadcast 외에 특정 로직을 추가로 수행하고 있으면, HealHp에 적합하지 않을 수 있습니다. 이런 경우라면 SetHp에서 분리하여 해당 로직을 구성해야 할 수 있습니다.
추가로, Broadcast가 실행되면서 UI 업데이트와 같은 로직이 자동으로 수행된다면, 각각의 Hp 변경 상황마다 올바르게 UI가 갱신될 것입니다.
근래 다른 사용자들이 유사한 주제를 논의한 결과들을 아래 링크에서 확인하실 수 있습니다:
이 질문의 링크는 내부적인 Hp 조정 및 Broadcast 사용 방식에 관한 이해를 높이는 데 도움을 줄 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해 드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
5.1 버전용 샘플을 찾을 수 없습니다.
0
16
1
무한맵 제작과정중에 GetWorld 가 Nullptr 을 반환합니다.
0
53
2
12강 행동트리에서 질문이 있습니다.
0
57
1
위젯 사이즈랑 위치 질문드려요.
0
88
3
행동트리의 데코레이션 관련하여 질문이 있습니다.
0
97
3
VS 2026 의 문제일까요?
0
512
2
에셋참조 블루프린트질문
0
72
2
애님 몽타주 콤보 관련질문
0
71
2
ThirdPerson CDO 에러가 생깁니다.
0
106
3
캐릭터가 움직이지 않습니다.
0
196
4
쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.
0
68
2
TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.
0
103
2
7강에 나오는 생성자에 대해서 궁금합니다.
0
80
2
6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.
0
79
2
3강을 마무리 하며, 카메라가 움직이지 않습니다.
0
77
2
Use Controller Rotation 옵션값이 궁금합니다.
0
95
2
3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.
0
71
2
PlayerController 에 대헤 제가 잘못 이해한 것 같습니다.
0
83
2
13강 UpdateStat 부분에서 문제를 겪고 있습니다.
0
69
2
BP_PlayerController의 CustomEvent노드 이유가 궁금합니다.
0
71
1
콤포넌트 포인터 선언시 TObjectPtr<>과 UStaticMeshComponent* 차이점
0
78
2
CharacterMovementComponent의 RotationRate관련해서 질문이 있습니다.
0
120
2
언리얼 공부방법에 대해 질문드립니다.
0
93
2
4강 에서 이상한 그림자가 남습니다.
0
50
1





