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