티스토리 뷰
대부분의 게임에는 Save/Load 시스템이 있다. 로그라이크 장르처럼 세이브가 없는 게임도 있지만 그런 게임들도 클리어 횟수라던지 해금요소들이 저장되어 게임을 실행할 때마다 저장파일을 불러오기도 한다. UE4에서 게임을 어떻게 저장하는지 알아보자.
데이터를 저장하고 불러오는 등 단순한 기능은 blueprint로 구현할 수 있도록 되어있다. 물론 복잡한 저장데이터를 저장하거나 저장하고 불러올 때 특별한 처리를 해야한다면 c++코드가 필요할 수도 있지만 단순한 기능만 먼저 알아보자.
SaveGame
기본적으로 SaveGame이라는 클래스의 인스턴스를 저장하고 불러온다. 이 SaveGame은 UObject 클래스로 blueprint로 만들 수 있다 사용자는 어떤 데이터를 저장할지 변수 형태로 추가하면 된다.
GameplayStatics::CreateSaveGameInstance 함수를 통해 원하는 SaveGame 인스턴스를 생성할 수 있다. 이 인스턴스를 원하는 SaveSlot에 저장할 수 있다.
SaveSlot
실제 게임에서 사용되는 단어와 동일한 의미로 사용한다. FString이다. 이곳에 저장하면 프로젝트 폴더에 같은이름의 .sav 파일이 생성되는것을 볼 수 있다.
Save/Load
실제 게임을 저장하고 불러올 수 있는 DoesSaveGameExist, LoadGameFromSlot, SaveGameToSlot 등은 모두 GameplayStatics에 함수로 정의되어있다. 사용자는 필요할 때 SaveGame 인스턴스를 만들고, 내부 변수를 조작한 후 저장로직을 호출하면 된다.
'Programming > UnrealEngine' 카테고리의 다른 글
UE4 Expert | 벽 뒤에있는 오브젝트 그리기 Custom Depth (3) | 2020.11.10 |
---|---|
UE4 Beginner | Masking Material (0) | 2020.09.04 |
UE4 Beginner | Level (0) | 2020.08.06 |
Z-Depth Fog 만들기 (0) | 2020.05.28 |
UE4 Tip - 렌더링 상태 보기 (0) | 2018.08.15 |
- Total
- Today
- Yesterday
- Git
- C++
- 수학
- ios
- swift
- 국내여행
- JSP
- mongoDB
- 운영체제
- winsock
- DesignPattern
- Cocos2d-x
- Spring
- scala
- database
- 데이터베이스
- 드라마
- 알고리즘
- SOCKET
- rxswift
- OS
- C/C++
- C
- SwiftUI
- Java
- ue4
- game
- 자료구조
- SHADER
- machine learing
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |