• Страница 1 из 1
  • 1
Руководство: Перенос оружия из Обливиона в Скайрим

ТемныйКот 

Почётный житель
Сообщений795
Награды25
Репутация70
ПолМужчина
21 Января 2012 в 4:05. Сообщение # 1
Перенос оружия из Обливиона в Скайрим
Скачать архив с руководством в вордовском формате
Нам понадобится:
Плагин 3D Max с установленным плагин для работы с моделями Скайрима
NifSkope поддерживающий формат *.nif-файлов Скайрима.

Итак, начнем.
Выбираем оружие, которое будем переносить.
Я выбрал «Nicos Daes Rakan Swords» автора Nicoroshi

Дальше находим в файлах Скайрима (предполагается, что BSA-архивы игры у вас уже распакованы) меш меча, который будем заменять этим клинком.
Я решил заменить Соловьиный клинок находящийся в папке …Data\meshes\Weapons\nightingale\
Берем два файла: Nightingalesword.nif и 1stpersonnightingalesword.nif (один отвечает за отображение в ножнах, второй в руках)
Переносим их в игру
ВНИМАНИЕ! При переносе соблюдайте иерархию папок. То есть в данном случае файлы должны попасть в папку Steam\steamapps\common\skyrim\Data\meshes\Weapons\nightingale (если у вас лицензия)
Запускаем 3D Max и импортируем выбранный нами Dreadweave Daes Rakan.nif с настройками


Кликаем на кнопку «Менеджер слоев» (1), и развернув список (для этого кликнем на плюсик рядом с 0(default)) посмотрим из чего собственно состоит файл (2)


Итак, видим следующее:
Scb:0 – модель ножен
Daes' Rakan:0 – модель самого меча

Далее немного облегчим себе работу, а именно: кликнув последовательно на 0(default) (3), стрелочку(4), и кнопку «создать новый слой»(5) создадим новый слой Layer01 с нашим мечом.


Теперь сделаем активным слой 0(default) поставив напротив него галочку(6),

и импортируем файл 1stpersonnightingalesword.nif (настройки такие же как и при импорте Dreadweave Daes Rakan.nif)

Итак, теперь у нас импортированы оба меча. Сравним их

Как видим тут четыре модели
1stPersonNightingaleSword:1 – модель меча
Scb – модель ножен
EdgeBlood
EdgeBloodSpec


Эти две EdgeBlood и EdgeBloodSpec – отвечают за отображение крови на лезвии меча.
Обратите внимание, что EdgeBlood и EdgeBloodSpec являются скрытыми (3)

Вот их нам и надо добавить в Dreadweave Daes Rakan

Сняв с EdgeBlood и EdgeBloodSpec флажок «скрыть» (Hide) обнаруживаем, что эти модели в точности повторяют лезвие модели меча

Следовательно, и в Dreadweave Daes Rakan нам надо добавить такие же.

Скрываем слой 0(default) чтобы не мешался.
ВНИМАНИЕ! Тут есть один нюанс. У меня после первой пробы вышло, что меч в игре оказался загнут не в ту сторону, поэтому перед тем как продолжать советую перевернуть его по оси Y на 180 градусов. Для этого выбираем модель меча Daes' Rakan:0, переходим в режим Modify, добавляем модификатор FFD 2х2х2 и с его помощью переворачиваем модель.

Следите, чтобы модель не сдвинулась с осевых линий (на рисунке выделены желтым)!
Правда я не проверял, со всеми ли моделями из Обливиона так. Поэтому возможно, что перевернув модель, в игре вы обнаружите, что переворачивали зря, и все придется переделывать заново. Просьба не кидать тапками в автора туториала.


Теперь приступаем к изготовлению моделей для отображении крови на лезвии.
Клонируем модель Daes' Rakan:0, (копию назовем Blood, чтобы потом не путаться), переходим в режим Modify, и обрезаем с копии рукоять, оставив лишь само лезвие.


Клонируем теперь уже модель Blood, назвав копию BloodSpec.


Ставим флажок «скрыть» (Hide) напротив Blood и BloodSpec.
Модели Соловьиного меча: 1stPersonNightingaleSword:1, Scb, EdgeBlood и EdgeBloodSpec удаляем.
Готово.
Вот что у нас должно получиться в итоге


Теперь экспортируем наш меч в файл.
Назовем его zagotovka (потому что существующий на данный момент экспортер nif для Скайрим очень далек от совершенства, и экспортированный меч придется дорабатывать NifSkope)
ВНИМАНИЕ! Убедитесь ещё раз перед экспортом, что модели Blood и BloodSpec отмечены флажком "скрыть".

Настройки экспорта


Вот теперь начинаются те самые танцы с бубном
Открываем в NifSkope два файла 1stpersonnightingalesword.nif и только что созданный нами zagotovka.nif

Как видим в нашей zagotovka.nif все модели меча находятся в блоках NiTriStrips, а в оригинальном в блоках NiTriShape.

Конвертируем NiTriStrips в NiTriShape. Делается это так:
ПКМ на NiTriStrips, в контекстном меню выбираем Mesh и команду Triangulate

Конвертируем подобным образом все блоки

Теперь нам надо заменить во всех блока zagotovka.nif строки BSLightingShaderProperty на те же BSLightingShaderProperty но из оригинального файла.
Это приходится делать из-за того, что экспортер 3D Max их обрабатывает некорректно, и в игре они… В общем просто замените, иначе работать не будет, поверьте на слово.
Делаем это так:
1.Удаляем BSLightingShaderProperty из NiTriShape с именем Daes' Rakan:0 в файле zagotovka.nif
(ПКМ на строку BSLightingShaderProperty и в контекстном меню выбираем Block команда Remove Branch)

2.Переходим к файлу 1stpersonnightingalesword.nif и копируем там строку BSLightingShaderProperty из блока NiTriShape с именем 1stPersonNightingaleSword:1
(ПКМ на строку BSLightingShaderProperty и в контекстном меню выбираем Block команда Copy Branch)

3.Теперь скопированную строку BSLightingShaderProperty вставляем в блок NiTriShape с именем Daes' Rakan:0 в файле zagotovka.nif
(ПКМ на блок NiTriShape и в контекстном меню выбираем Block команда Paste Branch)

Вот что у нас получилось, - строка вставилась не в блок NiTriShape с именем Daes' Rakan:0 а куда то явно не туда (сравним zagotovka.nif и оригинальный файл)

Исправляем таким образом:
Щелкаем левой кнопкой на блоке NiTriShape с именем Daes' Rakan:0, в окне Block Details прокручиваем список до самого конца, выбираем строку Properties, разворачиваем нажав на крестик, снова выбираем Properties, и в графе Value ставим тот же номер что и у нашей «заблудившейся» строки BSLightingShaderProperty (в данном случае это 15), жмем энтер.


Готово. Вот, у нас даже текстура появилась на модели.


Дальше по такой же схеме заменяем строки BSLightingShaderProperty в других блоках
В NiTriShape с именем Scb:0 вставляем из NiTriShape с именем Scb
В NiTriShape с именем BloodSpec вставляем из NiTriShape с именем EdgeBloodSpec

ВНИМАНИЕ! В блоке NiTriShape с именем Blood файла zagotovka.nif мы заменяем строку BSLightingShaderProperty на строку BSEffectShaderProperty (не перепутайте именно BSEffectShaderProperty!) из блока NiTriShape с именем EdgeBlood оригинального файла.

Перенесли, теперь сравним получившееся. Видим, что в блоках NiTriShape с именем BloodSpec и NiTriShape с именем Blood нашего файла строк явно меньше чем в подобных блоках оригинального 1stpersonnightingalesword.nif


Значит, нам надо добавить недостающие строки.
Сначала скопируем в блоки нашего файла строку NiAlphaProperty. Делается это так же как и копирование BSLightingShaderProperty. То есть:
1. ПКМ на строку NiAlphaProperty в файле 1stpersonnightingalesword.nif
В контекстном меню выбираем Block команда Copy Branch
2. Переходим к нашему zagotovka.nif ПКМ на блок NiTriShape и в контекстном меню выбираем Block команда Paste Branch
Так как и в случае с BSLightingShaderProperty строка NiAlphaProperty у нас «потерялась»

Поэтому прописываем её в блок вручную, так же как и BSLightingShaderProperty
(ПКМ на NiTriShape, в окне Block Details прокручиваем список до самого конца, выбираем строку Properties, разворачиваем нажав на крестик, снова выбираем Properties, только уже вторую, так как в первой у нас записана строка BSLightingShaderProperty, и в графе Value ставим тот же номер что и у нашей «заблудившейся» строки NiAlphaProperty (в данном случае это 16), жмем энтер.)


Итак, в блоки BloodSpec и Blood мы добавили строки NiAlphaProperty, осталось добавить NiStringExtraData.
Эту строку мы копируем точно так же как и в предыдущих случаях
1.ПКМ на строку NiStringExtraData в файле 1stpersonnightingalesword.nif
В контекстном меню выбираем Block команда Copy Branch
2.Переходим к нашему zagotovka.nif ПКМ на блок NiTriShape и в контекстном меню выбираем Block команда Paste Branch

Ну вот, блоки NiTriShape в заготовке у нас соответствуют блокам оригинального файла. Проверим ещё раз.

И ещё раз проверим. Потому что запутаться во всех этих блоках очень легко, а вот найти потом ошибку гораздо труднее.

СОВЕТ: Если где то, что то неправильно – закройте НЕ сохраняя файл zagotovka.nif, откройте его заново, и начните все сначала по этому тутору со слов "Вот теперь начинаются те самые танцы с бубном". Поверьте мне, Так. Будет. Быстрее. чем пытаться исправить/заменить/перенести и т.п.

И вот, финишная прямая!
Теперь мы берем и копируем все блоки NiTriShape из файла zagotovka.nif в оригинальный 1stpersonnightingalesword.nif
1.ПКМ на NiTriShape в файле zagotovka.nif, в контекстном меню выбираем Block команда Copy Branch
2.Переходим к 1stpersonnightingalesword.nif ПКМ на самый первый в списке блок (это важно! Именно на самый первый) BSFadeNode, в контекстном меню выбираем Block команда Paste Branch.


Скопировав NiTriShape сразу переименовываем его, чтобы потом не путаться.
То есть после копирования NiTriShape с именем BloodSpec у нас стал NiTriShape INV [1]

А нам надо чтобы этот блок имел такое же имя, как и находящийся выше NiTriShape с именем EdgeBloodSpec.
Переименовываем так:
Двойной щелчок на INV [1], поле становится редактируемым, и мы пишем в него тот же номер, что имеет блок NiTriShape с именем EdgeBloodSpec в квадратных скобках.
(В данном случае это [5])


ВНИМАНИЕ! Никаких букв писать НЕ надо, только цифру!
Жмем энтер, и наш скопированный блок сам переименуется в EdgeBloodSpec [5]

Точно таким же способом копируем и переименовываем остальные блоки из нашей заготовки
Blood (после копирования становится BSX) в EdgeBlood [8]
Scb:0 (после копирования становится Prn) в Scb [9]
Daes' Rakan:0 (после копирования становится WeaponSword) в 1stPersonNightingaleSword:1[10]

Вот что должно получиться в итоге

Два комплекта одинаковых комплекта блоков NiTriShape.

Теперь просто удаляем оригинальные NiTriShape из файла
ПКМ на блок NiTriShape, в контекстном меню выбираем Block команда Remove Branch


После чего жмем Save As

И сохраняем его под тем же именем 1stpersonnightingalesword.nif

- ВСЕ? Урра!
- А вот не всё!

У нас есть ещё файл nightingalesword.nif
Открываем его

Как мы видим, тут те же блоки NiTriShape, разве что отсутствует блок с ножнами
EdgeBlood
EdgeBloodSpec

И блок
NightingaleSword:1

Снова переносим – переименовываем NiTriShape из заготовки в этот файл
Blood в EdgeBlood
BloodSpec в EdgeBloodSpec
Daes' Rakan:0 в NightingaleSword:1

Удаляем оригинальные EdgeBlood, EdgeBloodSpec, NightingaleSword:1
Сохраняем как nightingalesword.nif

Осталось заменить текстуры на нашем мече.
Берем папку DaesRakanSword из мода откуда переносим меч, и помещаем в ...Steam\steamapps\common\skyrim\Data\Textures

В файле nightingalesword.nif раскрываем список блока NightingaleSword:1, раскрываем строку BSLightingShaderProperty и щелкаем по BSShaderTextureSet


В окне Block Details открывается список используемых в модели текстур. Заменяем установленные оригинальные на текстуры их мода.
Для этого в окне Block Details ПКМ по строчке Textures, в контекстном меню Texture команду Choose и в открывшемся окне проводника выбираем текстуру

***
Подробнее по текстурам, и не только, читаем тут
http://www.maikcg.com/skyrim3dmaker/skayrim-nachalo.html

***
Заменив пути к текстурам сохраняем файл.
Ту же операцию по замене текстур проделываем с 1stpersonnightingalesword.nif

Вот теперь все!


Запускаем игру, и если вы все правильно сделали видим свой меч


Удачи вам в модостроении!

ТемныйКот - Суббота, 21 Января 2012, 05:33

RJ 

Тёмная лошадка
Смотритель
Сообщений1187
Награды60
Репутация364
ПолМужчина
2 Февраля 2012 в 20:38. Сообщение # 2
ТемныйКот, такой вопрос - возможно ли размещение этой статьи на сайте в разделе "Модостроительство" над которой ведутся работы?

ТемныйКот 

Почётный житель
Сообщений795
Награды25
Репутация70
ПолМужчина
2 Февраля 2012 в 22:44. Сообщение # 3
RJ, конечно, какой вопрос.
Правда статья требует некоторой правки в связи с выходом нового NifSkope, где решили проблему корректного копирования шейдеров (BSLightingShaderProperty)
Если будет кому интересно, я перепишу статью.

infernus166 

Житель
Сообщений1
Награды0
Репутация0
ПолМужчина
17 Февраля 2012 в 21:40. Сообщение # 4
А как переносится броня из обливиона? И перепиши статью пожалуйста.

ТемныйКот 

Почётный житель
Сообщений795
Награды25
Репутация70
ПолМужчина
18 Февраля 2012 в 12:52. Сообщение # 5
infernus166, по броне сюда http://www.maikcg.com/skyrim3dmaker/skyrim-import-eksport-broni.html
  • Страница 1 из 1
  • 1
Поиск:

© 2008—2024 Bethplanet.ru