Добавление и переопределение ресурсов
В RGL вы можете легко переопределить существующие ресурсы или создать новые в редакторе для вашего мода. Механизм переопределения работает путем замены существующих ресурсов на те, которые вы указали в каталоге ресурсов вашего модуля. Модуль сопоставляет ваши пользовательские ресурсы с теми, которые ранее были зарегистрированы другими модулями по их именам. Это происходит по порядку загрузки модулей.
Если Модуль A и Модуль B загружаются в дополнении к модулю Native, соответственно, список конечных ресурсов и их источников, будет следующим:
![[IMG]](/uploads/posts/2020-11/1604767986_unknown-1.png)
В настоящее время модифицируемые типы ресурсов это:
- Материал
- Меш
- Текстура
- Физическая форма
Иерархия папок
Система ресурсов обрабатывает некоторые папки в каталоге модуля специально в соответствии с их именами. Вот список этих папок и их значений:
- Assets: Включает редактируемые файлы *.tpac, в которых хранятся метаданные каждого ресурса.
- AssetSources: включает исходные файлы импортированных ресурсов (.psd, .fbx).
- AssetPackages: включает файлы *.tpac только для чтения. Он генерируется, когда модуль упаковывается для клиентских сборок.
- EmAssetPackages: включает файлы *.tpac только для чтения. Он генерируется, когда модуль упаковывается для сборки редактора.
- DsAssetPackages: включает файлы *.tpac только для чтения. Генерируется, когда модуль упаковывается для сборки сервера.
- RuntimeDataCache: включает автоматически сгенерированные данные, необходимые движку для каждого ресурса. Может быть удален, но при запуске может потребоваться время для создания с нуля.
Разрешения на модифицирование
Система ресурсов ищет разные папки в зависимости от версии исполняемого файла игры (game’s running executable). В зависимости от наличия этих папок система решает, можно ли изменить модуль или его можно использовать только в режиме чтения. Если вы хотите поделиться своим модулем, вы можете упаковать свои ресурсы и поделиться упакованными папками, не распространяя тысячи файлов и их источников. У вас есть три варианта упаковки ваших ресурсов:
- Клиент: другие могут активировать ваш модуль для игры. Вы должны распространять папку AssetPackages.
- Редактор: другие могут использовать ваш модуль в редакторе, но не могут его изменять. Используется, если вы хотите, чтобы другие извлекали модули из вашего модуля. Вы должны распространить папку EmAssetPackages.
- Сервер: используется для сборки сервера. Все данные, не относящиеся к серверу, удаляются. Вы должны распространить папку DsAssetPackages.
Переопределение материалов
Переопределение материалов может быть выполнено путем создания нового материала с тем же именем, что и материал, который вы хотите переопределить. Перейдите в каталог ресурсов вашего модуля и щелкните правой кнопкой мыши на empty place (пустое место) на панели браузера. Создайте новый материал и назовите его так же, как материал, который вы хотите переопределить.
![[IMG]](/uploads/posts/2020-11/1604767993_material_override.png)
Материал существующего меша, замещенный Модулем А
На этом этапе все ссылки на материалы в системе будут перенаправлены на ваш пользовательский материал.
Переопределение мешей
Модели можно импортировать из файлов нескольких форматов (например, Trf, Fbx). Ресурсы, импортированные из одного файла, группируются по их именам в соответствии с правилами именования ресурсов (asset naming convetions). Представьте себе файл fbx следующим образом:
- Model.fbx
- wall(Меш)
- wall.lod1(Меш)
- wall.lod3(Меш)
- bo_wall(Физическая форма)
Следуя этим правилам, вы можете экспортировать новый файл геометрии (например, fbx), который содержит группу мешей, имена которых начинаются на wall. В этом случае новый меш стены будет создан из этих субмешей, а существующий меш будет полностью заменен тем, который вы предоставили. Имя файла геометрии не учитывается. Стоит отметить, что переопределение меша происходит на уровне меша. Невозможно переопределить одиночный субмеш через переопределение модуля.
![[IMG]](/uploads/posts/2020-11/1604767976_metamesh_override.png)
Существующий кубический меш с именем testbox переопределен Модулем А с помощью чайника.
Переопределение текстур
Переопределение текстур очень похоже на материалы. Вам необходимо импортировать новую текстуру с тем же именем, что и текстура, которую вы хотите переопределить. Вы также можете переименовать любую уже импортированную текстуру во что-то, что соответствует имени текстуры, которую нужно переопределить.
![[IMG]](/uploads/posts/2020-11/1604767970_texture_override.png)
Существующая текстура альбедо с именем roman_ground_d переопределена Модулем А с белой текстурой
Переопределение физических форм
Для переопределения физических фигур необходимо импортировать физическую форму с тем же именем ресурса, который вы хотите заменить. Установите флажок Asset naming conventions (Правила наименования ресурсов), чтобы увидеть возможность импорта физических фигур.
![[IMG]](/uploads/posts/2020-11/1604767965_physics_shape_override.png)
Существующая форма тора заменена Модулем A с помощью специальной формы аквилы
Комментариев 0
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.