Skip to content

Руководство по удалению шляпы Моны

В этом руководстве пошагово будет описано как удалить объект (в данном случае шляпку Моны) из модели персонажа от начало, до конца.

До появления 3Dmigoto не существовало методого прямого удаления шляпы - у нее нет уникального шейдера, поэтому ее нельзя удалить в Special K; она не является уникальным объектом в иерархии объектов unity, поэтому ее нельзя удалить с помощью Melon; а кости, которые к ней прикреплены, также связаны с волосами Моны, поэтому любая попытка изменить структуру костей приведет к повреждению и волос Моны.

Эти инструкции можно применить для удаления любой части сетки, хотя в некоторых случаях под ней останется дыра в модели (особенно для крупных объектов) - о том, как залатать дыры в сетке, мы рассмотрим позже.

  1. Убедитесь, что 3DMigoto и плагин 3DMigoto для Blender установлены.
  2. Загрузите файлы персонажа Моны из папки CharacterData на сайте https://github.com/SilentNightSound/GI-Model-Importer-Assets. Ваша папка должна выглядеть следующим образом:
  1. Теперь мы собираемся загрузить модель в Blender. В меню File -> Import есть опция импортировать "3DMigoto Frame Analysis Dumps". Если вы не видите этой опции, убедитесь, что плагин 3DMigoto установлен и включен.
  1. Перейдите в папку с персонажами и выберите все файлы .txt формата. Оставьте все настройки по умолчанию и нажмите импорт.
  1. Если все настроено правильно, вы должны увидеть модельку Моны, импортированную во viewport. Она состоит из двух объектов, головы и тела.
  1. Мы хотим удалить шапку, поэтому выберите сетку головы и войдите в режим редактирования. Выделите все вершины шапки и удалите их
  1. Теперь когда Мона лишилась своей шляпы, мы хотим экспортировать модель. Убедитесь, что есть один объект с именем «MonaHead» и один с именем «MonaBody» (и дополнительно один с именем «CharDress»/«CharExtra» для персонажей, у которых есть третья/четвертая часть - у Моны в данном случае их всего две). Опция экспорта находится в меню File->Export->Exports Genshin Mod Folder. Перейдите в папку с персонажами, из которой вы загрузили исходные данные, и экспортируйте модель под именем «Mona.vb».
  1. Теперь рядом с оригинальной папкой персонажа должна появиться папка MonaMod, которая будет выглядеть следующим образом (если папка мода не создается, проверьте есть ли в папке в которую вы экспортируете файл hash.json):
  • (Примечание: есть конечно и другой способ создания папки Mod - экспортировать каждый компонент отдельно как MonaHead и MonaBody с опцией 3DMigoto raw buffers, а затем использовать скрипт genshin_3dmigoto_generate.py с python .\genshin_3dmigoto_generate.py -n «Mona»)
  1. Скопируйте папку MonaMod в папку 3DMigoto Mods, созданную во время настройки:
  1. Нажмите «F10» в самой игре, чтобы перезагрузить все .ini файлы и применить мод. Если все прошло хорошо, ваша Мона теперь будет без шляпы!

Как вы могли заметить, в области где раньше была шляпа Моны, волосы обесцвечены и имеют тень, хотя так не должно быть. Дело в том что работу со светом и тенями отвечает особая текстура именуемая "LightMap", когда мы удалили шляпу, мы только удалили сетку, но никак не затрагивали данную текстуру. Для того чтобы поправить данное положение нам стоит перерисовать и саму текстуру "LightMap"

  1. Для редактирования dds-текстур мы используем Paint.net вместе с DDS расширением и любым расширением, позволяющим редактировать альфа-слой Alpha Mask Import или Modify Channels - я буду использовать первое в этом обзоре, а пример со вторым смотрите в GI_Assets.

  2. Открыв файл MonaHeadLightMap.dds, мы можем удалить альфа-слой, нажав Effects->Alpha Mask, убедившись, что все опции не выбраны, и нажав OK:

  1. Теперь мы видим, что некоторые участки текстуры волос Моны стали темнее. Мы можем сгладить их, чтобы убрать тени с волос Моны:
  1. Затем мы можем повторно применить альфа-слой, нажав «Эффекты->Альфа-маска» со всем выделенным изображением и отметив опцию «Инвертировать маску»:
  • Примечание: Небольшое количество данных, связанной с свечением и румянцем, было потеряно в сравнении с оригиналом, поскольку мы инвертируем альфа-канал ВСЕГО изображения - если вы хотите сохранить эффекты выделений при повторном инвертировании, смотрите https://www.youtube.com/watch?v=1y8oZ1TFZtg пример использования масок для выборочного применения инверсии только к части изображения (руководство предназначено для Special K, но 3dmigoto работает так же). В качестве альтернативы можно использовать плагин Modify Channels, чтобы избежать потери данных о выделениях и румянце.
  1. Экспортируйте изображение, сохранив его в формате .dds, обязательно используя опцию «BC7 (Linear, DX 11+)» и установив Generate Mip Maps (Примечание: карты освещения (LightMap) при экспорте используют BC7 Linear, а карты рассеивания (Diffuse - те что являются обычными цветными текстурами) - BC7 SRGB).
  1. Наконец, мы можем заменить файл MonaHeadLightMap.dds, который мод использует в данный момент, либо непосредственно перезаписав его в папке MonaMod, либо поместив его обратно в папку персонажа Mona и создав папку с модом заново (плагин будет извлекать текстуру .dds из папки персонажа при каждом экспорте).

У вас есть инструмент, руководство или перевод, которые вы хотите добавить на сайт? Перейдите в Как помочь проекту?