USTRUCT()
struct FWeaponSaveData
{
GENERATED_BODY()
public:
FWeaponSaveData(): WeaponType(EWeaponType::None), WeaponTier(EWeaponTier::None) {}
FWeaponSaveData(EWeaponType Type, EWeaponTier Tier): WeaponType(Type), WeaponTier(Tier) {}
EWeaponType WeaponType;
EWeaponTier WeaponTier;
};
UCLASS()
class PROJECT_4_API UPlayerData : public USaveGame
{
GENERATED_BODY()
public:
UPROPERTY()
TArray<FWeaponSaveData> WeaponSaveData;
};
데이터를 저장할때 이런식으로 struct를 저장하고 싶을 때가 있다.
분명 데이터를 정확하게 넣었는데 저장된 세이브를 불러서 값을 확인해보면 이상하게 나온다.
이에 언리얼 포럼에서는 이렇게 말한다.
자 변역을 해보자면 struct의 변수들을 UPROPERTY로 플래그를 지정해줘야 구조체가 SaveGame에서 직렬화 된다고 한다... 냉큼 바꿔보자
USTRUCT()
struct FWeaponSaveData
{
GENERATED_BODY()
public:
FWeaponSaveData(): WeaponType(EWeaponType::None), WeaponTier(EWeaponTier::None) {}
FWeaponSaveData(EWeaponType Type, EWeaponTier Tier): WeaponType(Type), WeaponTier(Tier) {}
UPROPERTY()
EWeaponType WeaponType;
UPROPERTY()
EWeaponTier WeaponTier;
};
GOOD!
'Unreal 5 > Troubleshooting' 카테고리의 다른 글
[Unreal 5 / C++] BlueprintNativeEvent 사용 시 주의 점 (0) | 2025.02.28 |
---|---|
[Unreal 5] C++ 클래스가 언리얼 에디터에서 보이지 않거나 삭제하고 싶을 때 (0) | 2024.12.27 |
[Unreal 5] C++ 클래스 빨간줄이 발생할 때 (0) | 2024.12.27 |