UDataAsset을 상속 받아서 만든 클래스에
TArray<enum> 으로 정의된 멤버를 추가했다.
enum 에 들어간 내용은 enum class 이름 : uint8 이었다.
그런데, 파일로 저장하니 배열의 사이즈 * 8 바이트의 사이즈로 저장된다.
배열의 사이즈가 작으면 별 문제가 안될 수 있으나, 내가 만든 데이터 에셋은 4096*4096 사이즈이다.
즉, 원래는 16MB 정도면 충분한데, 130MB로 저장되었다.
혹시나 싶어 TArray<uint8>로 변환해서 저장하니 16MB가 나왔다.
좀 알아보니, 언리얼에서는 enum 타입을 저장하면 메타데이터 같은 걸 같이 저장하기 때문에 용량이 커진다고 한다.
그래서 대량의 데이터를 저장할 때는 enum 그대로 저장하는 것 보다는 기본 타입으로 변형해서 저장하는 게 좋다.
'개발 > 언리얼' 카테고리의 다른 글
[UE4] Shipping 클라에서 ini 설정파일 이용막기 (0) | 2022.11.16 |
---|---|
[UE4] 언리얼 엔진의 각종 버그 대처법 (0) | 2022.05.08 |
[UE4] 배열에서 항목을 빠르게 제거하는 방법 (0) | 2022.04.20 |
[UE4] 언리얼 로그에서 verbose 활성화 방법 (0) | 2022.04.19 |
[UE4] UE4Editor-Cmd.exe 디버깅하는 방법 (0) | 2022.04.19 |