Dans cet épisode, nous abordons une étape cruciale pour tout jeu : la persistance des données. Contrairement à la GameInstance qui est réinitialisée à chaque fermeture du jeu, l’objet SaveGame permet d’écrire des informations directement sur le disque dur de l’utilisateur.
Résumé des étapes clés#
- Création de la classe SaveGame : Création d’un Blueprint de type
SaveGame(nomméMySaveGame) pour stocker les variables persistantes. - Définition des variables : Ajout de
S_score(Integer) etS_niveau(Name) avec une nomenclature spécifique pour les distinguer des variables temporaires. - Logique de sauvegarde :
- Utilisation du node
Create Save Game Objectpour instancier la classe. - Récupération des données actuelles depuis le
ThirdPersonCharacter(pour éviter les décalages de laGameInstance). - Utilisation du node
Save Game to Slotpour écrire les données sur le disque dans un emplacement nommé (“save”).
- Utilisation du node
- Organisation : Utilisation des Reroute Nodes pour maintenir la lisibilité du graphe Blueprint.
Ce qui reste d’actualité aujourd’hui#
Bien que cet épisode se concentre sur Unreal Engine 4, les principes fondamentaux de la persistance des données restent identiques dans Unreal Engine 5 :
- La distinction entre mémoire vive et disque : La
GameInstancereste l’outil idéal pour le transfert de données entre niveaux, tandis que leSaveGameest indispensable pour la pérennité après fermeture de l’application. - Le système de Slots : Le concept de “Slot” (nom de fichier de sauvegarde) est toujours la méthode standard pour gérer plusieurs profils de sauvegarde.
- La structure des données : La pratique consistant à préfixer ses variables de sauvegarde (ex:
S_) est une excellente habitude de développement pour éviter les erreurs de logique dans des projets complexes. - Conversion de types : La conversion automatique entre
StringetNamelors de la récupération du nom du niveau est une fonctionnalité native qui facilite grandement le workflow.
© 2026 - Créé avec ❤️ sous Hugo & Relearn.