• » Jeux Vidéo
  • » Toi aussi deviens indéveloppeur [Unity/UE4 pour platformers 2D osef]
hichlibedis
hichanbis

.O. - 28 Dec 2017

... a écrit :

hichanbis - 28 Dec 2017
Ou même l'avoir déjà en fichier dans ton projet, de cette façon tout ce que tu lui fais est persistant...


Euh attends, un scriptable object c'est un asset de jeu. Il est soit en mémoire, soit dans ton dossier Assets.
Donc dans le cas où c'est un fichier asset tu peux pas le modifier de manière persistante au runtime, tout simplement parce que Unity utilise une instance de cet asset au runtime et pas l'asset lui-même.
Faut pas se laisser feinter par le mode éditeur, où Unity fait persister les changements dans l'asset quand tu sors du play mode. Une fois buildé ça se comporte pas pareil.
Tu peux faire des modifs de ton instance au runtime mais à la fin de ta session ça sera jamais persisté dans le fichier asset (ton OS le permettra pas de toute manière).

Voir: https://answers.unity.com/questions/344 … tom-a.html
ou https://forum.unity.com/threads/questio … me.477091/

Pour persister faut forcément que tu foutes ton fichier de sauvegarde dans le persistent path (eventuellement faire une copy direct du fichier SO sans passer par un json ça j'ai pas encore essayé mais je doute qu'il contienne les bonnes valeurs au runtime encore une fois...)

...ou alors y a un truc basique que j'ai pas compris

hichanbis (29 Dec 2017)