Войти
Unreal EngineФорумBlueprints

Ноды файловой системы.

#0
(Правка: 10:58) 10:19, 3 окт 2023

Сохраняю игру в папку Saved/SaveGames/SaveFiles.
Положение этой папки нахожу через нод Project Dir. Всё работает при старте из редактора. Но при старте в режиме Standalone Game или при старте выгруженного из UE проекта, этот нод ссылается не туда куда надо.

Я попробовал нод Launch Dir. Но при старте в режиме Standalone Game он не находит папку  Saved/SaveGames/SaveFiles.
Из доступных нодов c Dir существует штук 30. Ради каждого нода выгружать игру и пробовать сработает/не сработает - потребует очень много времени.
Может ли кто-нибудь подсказать каким нодом надо пользоваться, чтобы сохранение и загрузка срабатывали во всех режимах?

+ Показать
#1
10:29, 3 окт 2023

ivashko
Как я понял там разные пути в зависимости от запуска и от операционной системы.
RootDir не подходит?

FString UGlobal::getGameExeFolder()
{
#if WITH_EDITOR
  FString exeDir = FPaths::RootDir();
#else

#if PLATFORM_MAC
    FString exeDir = FPaths::RootDir() + "../../../";
#else
    FString exeDir = FPaths::RootDir();
#endif

#endif
  return exeDir;
}
#2
(Правка: 11:16) 10:56, 3 окт 2023

RootDir выдаёт папку движка при запуске из редактора в любом режиме.
Что он выдаст после выгрузки проекта, пока не проверял, но уже есть дурные предчуствия. Ведь папка проекта у меня не в папке движка, а значит во время запуска из редактора это не сработает.

Подозрение пало на нод Project Saved Dir. Пока проверю эту гипотезу.

В список подозреваемых так же попали:
- Get Project Saved Dir
- Game Agnostic Saved Dir
- Engine Saved Dir

#3
11:29, 3 окт 2023

В ходе следствия выяснилось, что это был нод именуемый Project Saved Dir. Считаю целесообразным следственные действия прекратить, а остальных подозреваемых отпустить под подписку о невыезде.

ЗЫ впрочем на выгруженном проекте пока не проверял.

Unreal EngineФорумBlueprints