언어:
페이지 정보
엔진 버전:
언리얼 엔진

게임 저장하기

언리얼 엔진

게임 저장 및 로드 구성을 위한 가장 간단한 방법은 SaveGame 오브젝트를 사용하는 것입니다.

BlankSaveGame.png

SaveGame 오브젝트를 여러가지 부속으로 된 박스로 생각해 보세요. 각 부분마다 변수를 만들어 일정량의 정보를 저장하도록 설정할 수 있습니다. 예를 들어 플레이어의 점수는 물론 이름도 저장하는 변수를 만들 수 있습니다. Character, PlayerController, GameMode 와 같은 다른 클래스에서 SaveGame 오브젝트로 정보를 전달할 수 있습니다. 그러기 위해서는 먼저 SaveGame 오브젝트의 인스턴스를 생성하거나 복사해야 합니다.

SaveGameVariables.png

그런 다음 예를 들어 PlayerController 에서 플레이어의 점수와 이름에 대한 값을 받은 다음 SaveGame 오브젝트 내 일치하는 변수에 저장하면 됩니다.

StoreVariables.png

SaveGame 오브젝트는 이제 이 변수 값을 하드 디스크에 저장할 때까지 유지합니다.

StoredVariables.png

마지막으로 SaveGameToSlot 을 사용해서 SaveGame 오브젝트를 하드 디스크 상의 파일에 저장하면 됩니다. 다른 프로그램에서 새 게임 또는 문서를 저장하는 것과 똑같은 방식으로 이루어지는데, SaveGameToSlot 에 파일명을 지어주기 때문입니다. 기본적으로 세이브 게임은 Saved\SaveGames 폴더에 .sav 파일로 저장됩니다. SaveGameToSlot 에 사용자 ID 도 주어야 나중에 로드할 정보를 찾아보는 데 도움이 됩니다.

SaveGame 오브젝트에서 정보를 로드하는 것 역시 단순한 프로세스인데, 정보 저장의 거의 반대입니다. LoadGameFromSlot 함수를 사용하여 입력에서 파일명과 사용자 ID 를 받습니다. LoadGameFromSlot 으로 하드 디스크에서의 정보를 로드하면 SaveGame 오브젝트의 새로운 사본이 생성됩니다.

StoredVariables.png

이 오브젝트를 사용하면 게임내 다른 오브젝트와 액터에 있는 정보를 복사할 수 있습니다. 이 예제에서는 플레이어가 저장된 게임을 열어 플레이를 재시작할 때와 마찬가지로 플레이어의 점수와 이름을 PlayerController 속으로 로드시킵니다.

LoadingVariables.png

셋업

블루프린트 또는 C++ 를 사용한 게임 저장법 관련 상세 정보는 다음과 같습니다: