언리얼 구조체 리플리케이션이 크래시를 발생시키는 문제 해결
리플리케이션 하려는 구조체의 모든 변수에 UPROPERTY 매크로가 없는 경우
1
2
3
4
5
6
7
8
9
USTRUCT()
struct FMagazine_NetQuantize
{
GENERATED_BODY()
public:
FGuid MagazineId;
int32 AmmoId;
int32 AmmoAmount;
}
1
check(ArrayNum < ShadowArrayNum || SharedParams.Cmds[CmdIndex + 1].Type == ERepLayoutCmdType::DynamicArray);
FMagazine_NetQuantize
구조체를 리플리케이션 하는 경우 다음과 같은 어서트로 인해 실행이 중지 된다.
1
2
3
4
5
6
7
8
9
10
11
12
USTRUCT()
struct FMagazine_NetQuantize
{
GENERATED_BODY()
public:
UPROPERTY()
FGuid MagazineId;
UPROPERTY()
int32 AmmoId;
UPROPERTY()
int32 AmmoAmount;
}
위와 같이 구조체의 모든 변수에 UPROPERTY
매크로를 추가 하면 해결된다.
This post is licensed under CC BY 4.0 by the author.