Die Einstellung beim Speichern und Laden von Funktionen für dein Spiel hängt von der Komplexität deines Spiels ab. Die Unreal Engine bietet Serialisierungsunterstützung, um das Speichern und Laden zu handhaben. Unreal Engine hat eine Objekt-Klasse SaveGame, die in Blueprint und/oder C++ abgeleitet werden kann und zum Speichern einfacher Variablen dient. Wenn dein Spiel kompliziertes Verhalten beim Speichern und Laden erfordert, siehst du dir am besten diesen Vortrag über Best Practices und Techniken der Serialisierung an. Wenn du vom Benutzer konfigurierbare Einstellungen schreiben möchtest, verwendest du die Hilfsklasse UGameUserSettings.
UParrotGameUserSettings in „Parrot“ ist von UGameUserSettings abgeleitet. Damit speicherst und lädst du die vom Spieler konfigurierbaren Einstellungen, die „Parrot“ benötigt.
Audio-Einstellungen Beispiel
In „Parrot“ kann der Spieler die Audioeinstellungen konfigurieren. „Parrot“ speichert die folgenden Float-Werte:
Hauptvolumen
Musiklautstärke
SFX-Lautstärke
Stell sicher, dass das Projekt die richtige Klasse von Benutzer-Einstellungen für das Spiel verwendet. Dies kannst du unter Bearbeiten > Projekt-Einstellungen > Engine – Allgemeine Einstellungen konfigurieren, indem du das Feld Klasse für Spiel-Benutzer-Einstellungen so änderst, dass es auf ParrotGameUserSettings zeigt.
Übertrage dann die Benutzereinstellungen auf den Typ UParrotGameSettings und rufe die Funktion zum Speichern auf. Dies ist in UParrotAudioSubsystem zu sehen, das in Implementierung der Audio Engine in „Parrot“ behandelt wird.
Eine weitere nützliche Funktion der Verwendung einer von UGameUserSettings abgeleiteten Klasse ist, dass die Deserialisierung kein Problem darstellt. Die Einstellungen des Benutzers werden gelesen und automatisch angewendet, wenn das Spiel gestartet wird.