Руководство по удалению шляпы Моны
В этом руководстве пошагово будет описано как удалить объект (в данном случае шляпку Моны) из модели персонажа от начало, до конца.
До появления 3Dmigoto не существовало методого прямого удаления шляпы - у нее нет уникального шейдера, поэтому ее нельзя удалить в Special K; она не является уникальным объектом в иерархии объектов unity, поэтому ее нельзя удалить с помощью Melon; а кости, которые к ней прикреплены, также связаны с волосами Моны, поэтому любая попытка изменить структуру костей приведет к повреждению и волос Моны.
Эти инструкции можно применить для удаления любой части сетки, хотя в некоторых случаях под ней останется дыра в модели (особенно для крупных объектов) - о том, как залатать дыры в сетке, мы рассмотрим позже.
- Убедитесь, что 3DMigoto и плагин 3DMigoto для Blender установлены.
- Загрузите файлы персонажа Моны из папки CharacterData на сайте https://github.com/SilentNightSound/GI-Model-Importer-Assets. Ваша папка должна выглядеть следующим образом:

- Теперь мы собираемся загрузить модель в Blender. В меню File -> Import есть опция импортировать "3DMigoto Frame Analysis Dumps". Если вы не видите этой опции, убедитесь, что плагин 3DMigoto установлен и включен.

- Перейдите в папку с персонажами и выберите все файлы .txt формата. Оставьте все настройки по умолчанию и нажмите импорт.

- Если все настроено правильно, вы должны увидеть модельку Моны, импортированную во viewport. Она состоит из двух объектов, головы и тела.

- Мы хотим удалить шапку, поэтому выберите сетку головы и войдите в режим редактирования. Выделите все вершины шапки и удалите их


- Теперь когда Мона лишилась своей шляпы, мы хотим экспортировать модель. Убедитесь, что есть один объект с именем «MonaHead» и один с именем «MonaBody» (и дополнительно один с именем «CharDress»/«CharExtra» для персонажей, у которых есть третья/четвертая часть - у Моны в данном случае их всего две). Опция экспорта находится в меню File->Export->Exports Genshin Mod Folder. Перейдите в папку с персонажами, из которой вы загрузили исходные данные, и экспортируйте модель под именем «Mona.vb».


- Теперь рядом с оригинальной папкой персонажа должна появиться папка MonaMod, которая будет выглядеть следующим образом (если папка мода не создается, проверьте есть ли в папке в которую вы экспортируете файл hash.json):

- (Примечание: есть конечно и другой способ создания папки Mod - экспортировать каждый компонент отдельно как MonaHead и MonaBody с опцией 3DMigoto raw buffers, а затем использовать скрипт genshin_3dmigoto_generate.py с
python .\genshin_3dmigoto_generate.py -n «Mona»
)
- Скопируйте папку MonaMod в папку 3DMigoto Mods, созданную во время настройки:


- Нажмите «F10» в самой игре, чтобы перезагрузить все .ini файлы и применить мод. Если все прошло хорошо, ваша Мона теперь будет без шляпы!

Как вы могли заметить, в области где раньше была шляпа Моны, волосы обесцвечены и имеют тень, хотя так не должно быть. Дело в том что работу со светом и тенями отвечает особая текстура именуемая "LightMap", когда мы удалили шляпу, мы только удалили сетку, но никак не затрагивали данную текстуру. Для того чтобы поправить данное положение нам стоит перерисовать и саму текстуру "LightMap"
Для редактирования dds-текстур мы используем Paint.net вместе с DDS расширением и любым расширением, позволяющим редактировать альфа-слой Alpha Mask Import или Modify Channels - я буду использовать первое в этом обзоре, а пример со вторым смотрите в GI_Assets.
Открыв файл MonaHeadLightMap.dds, мы можем удалить альфа-слой, нажав Effects->Alpha Mask, убедившись, что все опции не выбраны, и нажав OK:


- Теперь мы видим, что некоторые участки текстуры волос Моны стали темнее. Мы можем сгладить их, чтобы убрать тени с волос Моны:


- Затем мы можем повторно применить альфа-слой, нажав «Эффекты->Альфа-маска» со всем выделенным изображением и отметив опцию «Инвертировать маску»:

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

- Наконец, мы можем заменить файл MonaHeadLightMap.dds, который мод использует в данный момент, либо непосредственно перезаписав его в папке MonaMod, либо поместив его обратно в папку персонажа Mona и создав папку с модом заново (плагин будет извлекать текстуру .dds из папки персонажа при каждом экспорте).
