게임의 저장 시스템 선택
Xbox 서비스를 통합하는 게임의 경우 동일한 게임을 다른 장치에서 플레이할 때 사용자의 게임 저장이 원활하게 마이그레이션되어야 한다는 요구 사항이 있습니다. 게임이 무료인 동안
자체 솔루션을 구현하기 위해 게이머가 기대할 수 있는 것을 고려하기 시작할 때 이것은 빠르게 매우 비싼 기능이 될 수 있습니다. 일반적인 게이머 기대 수준은 다음과 같습니다.
- 저장은 사용자 상호 작용 없이 클라우드에 원활하게 백업됩니다.
- 동일한 게임을 하기 위해 새 장치로 이동할 때 사용자는 이전 장치에서 플레이했던 곳에서 쉽게 진행 상황을 재개할 수 있습니다.
- 게임을 재설치하면 이전 진행 상황도 복원됩니다.
- 게임이 오프라인 플레이를 지원하는 경우 오프라인 상태에서 진행 상황을 저장할 수 있으며 나중에 연결되면 업로드됩니다.
- 일반적으로 해당 장치 중 하나가 이전에 오프라인 상태였을 수 있기 때문에 다른 장치에서 시작된 저장에서 충돌을 해결하는 쉬운 방법이 있습니다.
GDK는 게임 개발자가 선택할 수 있는 다양한 옵션을 제공합니다.
항상 온라인 - 서버 기반 저장
게임에 지속적인 온라인 존재가 필요한 경우 MMO 게임이 그러한 예입니다. 가장 간단한 선택은 이미 연결된 게임 서버에 게임 진행 상황을 저장하는 것입니다.
이는 게이머가 게임 저장을 동기화할 필요가 없고 장치 간에 이동할 때 충돌 가능성이 없으며 여러 플랫폼으로 쉽게 확장할 수 있다는 이점이 있습니다.
오프라인 플레이 지원, 가장 강력한 솔루션 - XGameSave
많은 게임이 오프라인 플레이를 지원해야 합니다. 롤 플레잉 및 액션 게임은 이 범주에 속하는 게임의 작은 샘플에 불과합니다. 온라인 및 오프라인 플레이 모두에서 잘 작동하는 강력한 솔루션이 필요한 게임의 경우 최고의 솔루션은 XGameSave입니다. XGameSave는 원자적 작업으로 데이터의 일괄 쓰기를 지원합니다.
XGameSave와 XGameSaveFiles 간의 자세한 비교는 게임 저장이 포함된 Win32 파일 IO를 참조하세요.
오프라인 플레이 지원, 간단한 API, 최대 유연성 - XGameSaveFiles
많은 게임이 오프라인 플레이를 지원해야 할 수 있습니다. 그러나 게임 저장 시스템을 구현하는 방법에 있어 더 많은 유연성을 원할 수도 있습니다. XGameSaveFiles에는 XGameSave와 함께 제공되는 견고성이 없습니다. 그러나 게임에서 CreateFile 및 WriteFile과 같은 표준 Win32 파일 IO API를 활용하여 자체 저장 시스템을 만들 수 있습니다. 이 솔루션은 이미 PC에 이러한 시스템이 있고 PC Game Pass에서 작동하는 솔루션으로 이식 비용을 최소화하려는 개발자에게 최적입니다.
XGameSave와 XGameSaveFiles 간의 자세한 비교는 게임 저장이 포함된 Win32 파일 IO를 참조하세요.
XGameSaveFiles를 사용하는 동안 견고성을 원하는 게임 개발자는 다음과 유사한 솔루션을 구현해야 합니다.
- 게임은 저장 시스템 "다이제스트" 파일을 확인하여 마지막으로 성공한 저장 위치를 찾아야 합니다. 이 예에서 file1.dat를 가리키는 것으로 가정합니다.
- 게임의 다음 쓰기는 file2.dat입니다. 게임은 완전히 쓰여졌다는 것을 알지 못하는 한 오래된 저장을 덮어쓰지 않아야 합니다.
- file2.dat에 대한 업데이트를 성공적으로 작성한 후 게임은 이제 file2.dat를 가리키도록 "다이제스트" 파일을 업데이트할 수 있습니다.
- 그런 다음 게임은 file1.dat와 file2.dat 사이를 계속 전환하여 게임이 항상 마지막으로 잘 저장한 내용을 알고 문제가 발생할 경우 대체할 수 있도록 합니다.
게임에 코드 없는 솔루션이 필요함 - PC 전용
PC Game Pass에 제공되는 일부 게임에는 코드 저장 없는 게임 시스템이 필요할 수 있습니다. 이에 대한 좋은 예는 다음과 같습니다.
- 게임은 x86이며 패키징 외부에서 GDK를 직접 사용할 수 없습니다.
- Unreal이 포함된 Blueprint 또는 Unity가 포함된 Bolt와 유사한 것을 사용하여 개발자 없이 게임이 생성되었을 수 있습니다.
이 카테고리에 속하는 게임의 경우 GDK는 코드 없는 게임 저장 솔루션을 제공합니다. 코드 없는 클라우드 저장을 사용하면 게임이 표준 Win32 파일 IO API를 사용하여 원하는 저장 디렉토리에서 읽고 쓰기만 하면 동기화가 자동으로 처리됩니다. 게임은 동기화 및 업로드를 처리하기 위해 특별한 코드를 작성할 필요가 없습니다. 동기화는 게임 실행 전에 발생합니다.