[UE5] FName, FText, FString
·
게임개발/Unreal Engine
언리얼에서 개발을 하다 보면 헷갈리는 문자열 타입 3가지가 있다.FName, FText, FString셋 다 문자열을 처리하는데 어디에, 어떤 식으로 사용되는 것일까? 1. FName콘텐츠 브라우저에서 새 에셋 이름을 지을 때, 다이내믹 머티리얼 인스턴스의 파라미터를 변경할 때, 스켈레탈 메시에서 본에 접근할 때, 모두 FName을 사용합니다. FName 은 문자열 사용에 있어서 초경량 시스템을 제공하는데, 주어진 문자열이 재사용된다 해도 데이터 테이블에 한 번만 저장되는 것입니다. FName 은 대소문자를 구분하지 않습니다. 변경도 불가능하여, 조작할 수 없습니다. 이처럼 FName의 정적인 속성과 저장 시스템 덕에 찾기나 키로 FName에 접근하는 속도가 빠릅니다. FName 서브시스템의 또 다른 특..
[UE5] Replicate Montage Multicast in C++ not working
·
게임개발/Unreal Engine
언리얼5에서 멀티플레이 게임을 제작 중 몽타주 Multicast 실행이 안되는 상황에 마주쳤다. 처음에 PlayerController에서 ServerPlayMontage, MulticastPlayMontage를 만들어서 멀티캐스트 처리하도록 했었다.  그런데 서버에서 몽타주를 실행하면 다른 클라이언트에서 보이지 않았다.클라이언트에서 실행하면 다른 클라나 서버에서 잘 보였는데 말이다. 아무리 다른 변수들의 Replication을 설정하고 함수를 수정해봐도 고쳐지지 않았다. 다른 유튜브 영상을 참고했지만 모두 BP에서만 다루기만 했다.https://www.youtube.com/watch?v=s8j0RhW7xKE&ab_channel=GorkaGamesHow to Replicate Animation Montag..
[UE5] C++ AActor::Destroy() not working in BeginPlay()
·
게임개발/Unreal Engine
언리얼 개발 도중 액터를 파괴하려 Destroy를 호출했으나 작동하지 않았다. 다른 액터에서는 잘 되었는데 BeginPlay에 넣은 Destroy()만 안됐다.   호출 시점이 문제인건가, 아니면 다른 것이 문제인건가 고민하다 아래 링크를 발견했다. https://www.reddit.com/r/unrealengine/comments/jt5s61/c_aactordestroy_not_destroying_actor/ From the unrealengine community on RedditExplore this post and more from the unrealengine communitywww.reddit.com C++에서 Super::BeginPlay()를 호출해야 정상적으로 작동한다는 말이 있어 그대로..