1
직렬화(Serialization)란 무엇인가?
직렬화는 메모리(RAM) 상에 존재하는 복잡한 객체(Object)의 데이터를 디스크에 저장하거나 네트워크를 통해 전송할 수 있는 형태로 변환하는 과정입니다.
지난 절에서 Save Game Object를 통해 데이터를 저장하고 불러오는 방법을 익혔다면, 이번에는 그 내부 원리를 짚어볼 차례입니다. 핵심은 직렬화(Serialization)와 역직렬화(Deserialization)입니다.
직렬화와 역직렬화를 중심으로 간단한 데이터 직렬화와 역직렬화 기법의 판단 흐름을 읽습니다.
직렬화는 메모리(RAM) 상에 존재하는 복잡한 객체(Object)의 데이터를 디스크에 저장하거나 네트워크를 통해 전송할 수 있는 형태로 변환하는 과정입니다.
역직렬화는 직렬화된 바이트 스트림 데이터를 다시 메모리 상의 원래 객체 형태로 복원하는 과정입니다.
블루프린트를 사용할 때 대부분의 직렬화/역직렬화 과정은 언리얼 엔진 내부적으로 자동으로 처리됩니다.
언리얼 엔진의 내장 저장 시스템 외에도, 직렬화/역직렬화는 다음과 같은 상황에서 간접적으로 활용되거나 이해가 필요합니다.