Файлы, ресурсы и сохранения
Как выбрать формат, загрузчик и место для данных игры.
Выберите задачу
| Задача | Решение |
|---|---|
Найти папку сохранений и понять asset:// / user:// | Пути |
| Прочитать текст, обработать ошибку открытия, загрузить внешний PNG | Файлы во время игры |
| Сохранить позицию одного персонажа с резервной копией | Слот прогресса |
| Восстановить несколько объектов и ссылки по постоянным ID | Снимок уровня |
Сохранить типизированные Variant, включая Vector3 | Бинарный формат |
| Загрузить префаб в фоне, затем добавить его в дерево | Фоновая загрузка |
Формат и загрузчик
| Данные | Подход | Что учитывать |
|---|---|---|
| Небольшие настройки | ConfigFile | Секции и ключи; SetValue() меняет память, Save() пишет файл |
| Обмен с другими программами | JSON и явная схема | Координаты храните массивом чисел; проверяйте обязательные поля и версию |
| Локальный типизированный слот | FileAccess.StoreVar() / GetVar() | Не формат обмена с произвольной программой; не восстанавливает живые ссылки |
| Импортированные ресурсы проекта | ResourceLoader | Учитывает импорт и кэш ресурсов; исходный PNG в экспорте может отсутствовать |
| Внешний PNG или WAV игрока | Image.Load() / AudioStreamWav.LoadFromFile() | Загружает исходный файл напрямую, без редакторского импорта |
| Уровень или префаб как ресурс | PackedEntity + ResourceSaver | Сохраняет упакованную иерархию и сохраняемые свойства; не весь прогресс игры автоматически |
Минимальный контракт сохранения
Укажите версию схемы, идентификатор уровня, постоянные ID объектов и соглашение о координатах. Сначала проверьте весь снимок, затем меняйте игру. Если чтение не удалось, сохраните текущий прогресс и покажите ошибку; не записывайте начальные значения поверх старого слота.
Файлы прогресса находятся в user://. Ресурсы проекта — в asset://. Доступное место и права могут закончиться в любой папке, поэтому результат записи проверяют всегда. Запись маленьких примеров синхронная; большой снимок требует отдельного измерения времени сериализации и ввода-вывода.
Документация Reckfell EngineНаверх ↑