캐릭터 사망 시 삭제는 어떻게 처리해야 하나요?
현재 캐릭터의 HP가 0이 되어서 사망하면
무기하고 캐릭터 몸체는 계속해서 남아있지만
소울라이크에서 보면 일정 시간이 지나면
무기와 캐릭터를 삭제하던데 이것은 어떻게 처리해야 하는지 잘모르겠습니다.
OnDeath()함수에서 단순히 Destory()로 처리하면 되나요?
답변 2
0
안녕하세요.
캐릭터 사망 후 일정시간 후에 삭제하는 것은 OnDeath() 함수에 Timer를 이용해서 원하는 만큼의 딜레이 타임 후에 삭제 되도록 만들면 됩니다.
예를 들면 2초 후에 삭제처리를 한다면 OnDeath() 함수에서 아래의 코드처럼 타이머를 걸어 주고 실제 삭제처리는 DestroyFunc() 함수에서 구현 하시면 됩니다.
FTimerHandle DestroyHandle;
GetWorld()->GetTimerManager().SetTimer(DestroyHandle, this, &ThisClass::DestroyFunc, 2.f, false);그럼 좋은 하루 되세요^^
0
안녕하세요, 인프런 AI 인턴입니다. Lee jae seung님.
캐릭터와 무기의 삭제는 게임에서 매우 중요한 요소입니다. 특히 소울라이크 게임에서 캐릭터가 사망한 후 일정 시간이 지나고 나면 객체를 정확하게 삭제하는 것은 성능 및 게임 플레이 측면에서 중요합니다.
OnDeath()함수:OnDeath()함수에서Destroy()메소드를 호출하는 것이 일반적입니다.Destroy()는 유니티의Destroy()처럼 객체를 메모리에서 해제시키는 역할을 하므로, 불필요한 리소스를 해제하는 데 효과적입니다.
딜레이 후 삭제:
- 캐릭터나 무기가 사망한 직후에 즉시 삭제되지 않고, 일정 시간 후에 삭제되기를 원한다면,
SetTimer를 활용하여 시간 지연을 조정할 수 있습니다.FTimerHandle를 사용하여 일정 시간 후Destroy()를 호출하게 할 수 있습니다.
- 캐릭터나 무기가 사망한 직후에 즉시 삭제되지 않고, 일정 시간 후에 삭제되기를 원한다면,
GetWorldTimerManager().SetTimer(YourTimerHandle, this, &YourClass::YourDestroyFunction, DelayTime, false);
참조 관리:
- 객체를 삭제하기 전, 모든 다른 객체가 해당 객체에 참조를 가지고 있지 않은지 확인해야 합니다. 이는 Null 참조 예외를 방지하고 게임의 안정성을 높입니다.
- 객체를 삭제하기 전, 모든 다른 객체가 해당 객체에 참조를 가지고 있지 않은지 확인해야 합니다. 이는 Null 참조 예외를 방지하고 게임의 안정성을 높입니다.
애니메이션과 이펙트:
- 삭제 전에 사망 애니메이션이나 효과를 추가하여 게임의 완성도를 높이는 것도 좋은 방법입니다. 이를 통해 플레이어는 캐릭터나 무기가 사라지는 과정을 시각적으로 확인할 수 있습니다.
- 삭제 전에 사망 애니메이션이나 효과를 추가하여 게임의 완성도를 높이는 것도 좋은 방법입니다. 이를 통해 플레이어는 캐릭터나 무기가 사라지는 과정을 시각적으로 확인할 수 있습니다.
현재 질문과 유사한 주제를 다룬 기존 Q&A를 참고하시면 도움이 될 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
맵핑부분..
0
30
2
ABP "스테이트의 시퀀스 플레이어에 따른 자동 규칙"질문드립니다.
0
35
1
사용하시는 툴 질문 드립니다.
0
33
2
C++ 생성자 값 관련 질문입니다.
0
71
1
빠른 헤더파일 추가 관련 질문입니다.
0
76
2
각 섹셕별로 수업 자료가 제공된다고 했는데 어디에서 받을 수 있는지 모르겠습니다.
0
87
2
프로젝트 생성 및 설정 첫 강의를 보면서 들었던 궁금한 점
0
120
2
안녕하세요. 입문자입니다.
0
67
1
GAS 관련
0
87
1
폴암 무기 집을때 크러쉬
0
90
2
Tick 컴포넌트에서 락온 함수
0
66
2
카메라를 적에게 고정시키는 로직 부분
0
73
2
강의 자료
0
107
3
방어구 시스템 구현 질문
0
86
3
블로킹 시 피격 이펙트 오류?
0
57
2
AlreadyHitActor들을 TArray로 처리하는 것에 질문있습니다.
0
58
2
무기 콜리전 시스템에 대해
0
101
1
Hit Reaction 설계
0
114
3
FindClosestTarget CheckValue 절댓값 처리
0
67
2
FindClosestTarget 노멀 벡터 방향
0
59
2
44분26초 동일하게 코드를 작성한것같은데 빌드에러가 뜹니다ㅠ
0
83
2
파티클 깨짐
0
56
1
Geneal Action 의미
0
49
0
2강 32분18초 Generate definition 하는 방법이 뭘까요?
0
82
1





