Войти
Unreal EngineФорумПрограммирование

Как загрузить ассет после сборки проекта?

#0
23:29, 16 мар 2023

Добрый день!

У меня в папке Content/DataFolder/Audio/Sound/Clicks/ лежат Cue звуки формата WAV.


В режиме PIE ассет загружается корректно по этому пути

Game/DataFolder/Audio/Sound/Clicks/

Тут нужно указать Game вместо Content почему то.


Но после упаковки проекта ассеты перестают загружаться.
Пробовал разные варианты, сам файл MainSoundClick.uasset есть и путь к нему правильный то есть его можно открыть через консоль скопировав путь к файлу.

Как правильно указывать путь и где правильно хранить собственно ассеты чтобы при сборке работала функция EngineUtils::FindOrLoadAssetsByPath?

#1
0:37, 17 мар 2023

Все грузится внутри проекта. Нельзя грузить то, что не находится вне его.

#2
12:58, 17 мар 2023

manking
Я не совсем понял задачу.Если она состоит в том что бы подгружать пользовательский контент, то надо смотреть в сторону модов.
На эту тему я могу вспомнить только один годный туториал https://www.tomlooman.com/unreal-engine-mod-support-exa

#3
13:42, 17 мар 2023

Цель загружать ассеты или файлы через С++.

Ну на данный момент как я понимаю структуру:

В настройках есть опции Additional Asset Directories to Cook и Additional Non-Asset Directories to Package.

То есть движок делит все на ассеты .uasset и на сторонние файлы.

Если ассет нигде не привязан в коде который попадает на уровень, то он не будет скопирован в папку content (которая после упаковки находится по адресу если мак MyGame.app/Contents/UE/MyGame/Content/Paks)

Чтобы загрузить ассет нужно использовать адрес /Game, и указать папку с ассетом в Additional Asset Directories to Cook.
Чтобы загрузить не ассет (например файл JSON) то  нужно указывать прямой путь к файлу используя FPaths::ProjectContentDir().

Но не понятно пока как hardware курсор загрузить.
Он лежит в Slate/CursorBaseHardware32 и в PIE доступен, а в собранной игре там какой разноцветный квадрат вместо него.
UWidgetBlueprintLibrary::SetHardwareCursor возвращает true, то есть должен корректно его загрузить вроде как.

#4
16:08, 17 мар 2023

manking
https://www.google.com/search?client=opera&q=SetHardwareCursor&so… TF-8&oe=UTF-8

#5
19:49, 17 мар 2023

std::cin
Так это же ссылки по UE4, где решением проблемы hardware курсора при упаковке проекта является нативизация блюпринтов, а в UE5 такой опции нет.

#6
(Правка: 20:26) 20:00, 17 мар 2023

manking
в UE4 была такая штука как Library
https://gist.github.com/yujuiting/780ecb9be599b1fd02dddb91c3668a75
наверное ты об этом.

А в остальном сказали. Если ты не будешь экспортировать в свой формат, то скорее всего подгрузить просто не сможешь. Но если встречу такое, то отпишусь.

Unreal EngineФорумПрограммирование