Добавлен , не публикуется
Раздел:
Моделлинг
Статья будет пополнятся. Пока не в публикации.
Нам понадобится:
  • Собственно игра, Soulstorm или Dark Crusade, не важно.
  • 3ds max 7 (не 2007, а 7.0. Древний, ищите сами, и если каких левых ДЛЛ затребует их тоже ищите)
  • Corsix mod studio (прилагаю)
  • WHM Import из Santos Tools (прилагаю свой модифицированный, кидать содержимое папки 3dsmax - scripts - startup в папку с максом /scripts/startup)
  • Texture Tool (прилагаю)
  • Retera's Model Studio, найдется место и для любимых Mdl Vis, War3 Model Editor (Magos). Также нужно минимально владеть этими тулзами.
  • Blp Lab или любая другая прога для blp текстур
  • Neodex плагин для макса
Содержание

Часть 1. Извлечение модели из архивов игры.

Пока здесь будет ссылка на эту статью: xgm.guru/p/wh/convertingwarhammermodels

Извлечение файлов игры

Открываем Mod Studio корсикса. От имени администратора, чтобы он мог писать в папку с игрой.
Затем Load Dow/SS Mod и в нашей папке с Соулштормом находим DXP2.module.
Это откроет "стандартный мод". Затем правой кнопкой по сверху слева "Data" -> "Extract all files" и Go.
Теперь все файлы игры включая модели у нас извлечены в папку с игрой.

Импорт модели в макс

Далее импортируем нужную модель в макс через WHM Import.
Сперва создаем папку куда будет кидать максовские файлы от нашей модели. Например на рабочем столе. Не важно.
Теперь в максе идем на вкладку с молотком справа вверху -> Max Script -> в Utilities выбираем WHM Import -> Import WHM.
(При первом запуске емнип надо будет указать папку с игрой)
Находим наш файл в папке с игрой. Обычно это будет \DXP2\Data\Arts\Ebps\Races\(раса)\troops\(имя юнита)\
Откроется окно куда кидать файлы, выбираем папку которую создали до этого.
Нажав OK, запускается ВХМ Импорт. И скорее всего так как мы не конвертировали текстуры, дает нам окно запрашивающее текстур.
Находим соответствующие текстуры в папке \DXP2\Data\Arts\Ebps\Races\(раса)\texture_share\
Конвертим их через Texture tool который я приложил к этой статье. Сперва Extract RSH чтобы сделать DDS файл, затем идем Edit -> Advanced mode, и жмем DDS -> TGA. Так получаем TGA текстуру.
Переносим эти TGA текстуры в папку с игрой \ModTools\DataSrc\My_Mod\art\ebps\races\(имя расы)\texture_share
Если такой папки нету, создаем ее.
Далее в окне которое требовало текстур жмем Continue.
Теперь в нашей папке которую мы указали для максовских файлов есть две папки: Animations и Reference. В которых соответственно лежат, анимации, и просто меш в нейтральной т-позе. А в максе у нас открыт файл Reference\Ref.max, нейтральная тпоза.

Часть 2. Экспорт анимаций

Тпоза

Для начала сохраним тпозу как собственно тпозу. В нашем файле Ref делаем Ctrl-A чтобы выбрать все, далее идем Character - Set Skin Pose - Yes.
Сохраняем этот файл. Теперь когда у нас задана Skin Pose, мы можем через команду Character - Assume Skin Pose вернуть модель в эту позу из любой другой позиции. Пока нам это не нужно, пригодится потом.

Экспорт анимаций в FBX

Сперва отберем анимации которые хотим конвертировать. Некоторые анимации это толком не анимации, их пропускаем. (Например aim_ обычно тупо поворачивает модель на 360 градусов.)
Выбрав нужную анимацию, перетаскиваем файл из папки Animations в 3д макс, и Open.
Можем ее проиграть кнопкой справа внизу типа Play со стрелкой.
Теперь экспортируем ее в FBX. Идем File - Export - выбираем формат FBX (Kaydara) и экспортим в нашу папку (ОК). Щелкаем Yes если вылезет еще окно. Это все несущественно.
Делаем так для всех анимаций которые хотим конвертировать.

Экспорт анимации в MDX

Мы будем каждую анимацию отдельно экспортировать в мдх, а затем склеивать ретерой.

Наложение FBX на Ref

После того как мы сделали FBX файлы, мы можем наложить их на наш Ref файл для дальнейшего экспорта.
Открываем Reference\Ref файл в котором мы сделали Set Skin Pose.
Перетаскиваем на него один FBX файл. Теперь наша анимация налезла на ТПозу.

Тпоза

Чтобы после коверта в мдх у нас анимации не были на разные меши, нам надо в самом первом кадре сделать общую тпозу. Но в самой анимации места для этого нет. Так что придется в анимацию добавить кадров.
Открываем Time Configuration (справа внизу кнопка с часами), добавляем 10 кадров в длительность анимации (Endtime). Жмем ОК.
Далее нам надо сдвинуть всю нашу анимацию на эти 10 кадров вперед. Делаем Ctrl-A чтобы выбрать все кости, затем идем Graph Editors - Track View - Curve Editor. Это откроет редактор кривых где мы увидим всевозможные точки ключевых кадров анимации. Выделяем их все (прямоугольным выделением мышью, Ctrl+A здесь не работает).
Теперь просто жмем на клаве стрелку Вправо 10 раз чтобы сдвинуть все это дело на 10 кадров вправо.
Далее курв эдитор закрываем. Теперь наша анимация сдвинута на 10 кадров вперед, и у нас есть место добавть тпозу в начале.
Но перед этим добавим контрольный кадр. Передвигаем ползунок времени на 9ый кадр и жмем на Ключ.
Это создает ключевой кадр, запоминая текущую позицию модели.
Затем передвигам ползунок в самое начало шкалы. Включаем Auto Key, полоска загорится красным. Это важно. Затем идем Character - Assume Skin Pose. Autokey затем можно выключить чтобы не мозолил глаза.
Теперь у нас есть анимация с добавленной тпозой в самом начале.

Note track

Перед экспортом через Neodex, нам нужно обозначить границы анимации.
Заходим в Graph Editor - Dope Sheet.
Далее слева выбираем Objects. Tracks - Note track - Add.
Это добавит "записку" под "Objects".Нажмем на плюс рядом с Objects чтобы показать ее. Далее выбираем эти наши Notes.
Добавляем в начале и конце подсвеченной полосы по узлу, выбрав инструмент Add Notes слева вверху. Появятся две белые точки на траке.
Переходим обратно на инструмент Move Keys, выделяем эти две точки которые мы создали (прямоугольным выделением мышью).
Щелкаем по одной из них правой кнопкой мыши, в появившемся окне вводим имя нашей анимации. Далее закрываем это окошко, и сам доп шит тоже.
Так мы добавили для неодекса подсказку какую область кадров экспортировать (всю). Без этого он экспортирует что попало.

Экспорт неодексом

Теперь экспортируем нашу анимацю через Неодекс.
Neodex -> Export Wc3 model.
Ставим Debug mode чтобы у нас не оборвался эскпорт изза какой то ерунды.
Убираем Merge similar meshes и Export smoothgroups, ставим Global Extents.
И жмем Export. Указываем путь для нашего файла анимации и его имя.
Теперь если все пошло так как надо, у нас есть одна анимация. (В этот раз с моделью фарсирки у меня кончилась память лол. Убрал еще Fix normals, вроде сработало).
Этот файл анимации получается с ошибками которые нужно потом исправлять:
  • корявыми анимациями переноса (нужно исправлять оси, скрипт приложу позже)
  • без текстуры (просто надо указать путь к текстуре. в редакторе моделей для мдх, например war3 model editor или в ретере)
  • с лишними кадрами (отрежем в мдл визе)
  • супер маленький масштаб (можно увеличить в ретере)
  • без каких либо спецэффектов и аттачментов (можно сделать в магосе например)
Обычно я все это делаю уже после того как добавляю все анимации вместе в одну модель.
Так что пока достаете все свои анимации вот таким образом, в отдельные мдх файлы.

Часть 3. Допиливание MDX файлов

Склеивание анимаций

Достав все нужные анимации, склеиваем их все через Anim Transfer, который есть в ретере.
Сперва переименуем один из наших файлов в имя модели, туда складываем все остальные анимации через Add - Animation - Single - From File.

Масштабирование

В ретере же, переходим на вкладку Edit. Ставим галку Nodes (чтобы не забыть и кости отмасштабировать, а не только меш).
Выделяем все. Правой кнопкой мыши, Scale Type In.
Ставим там увеличение раз этак в 60, и координаты центра 0. Далее ок. Теперь наша модель в нормальном масштабе.

Наложение текстуры

Ставим нашу текстуру заместо "white.blp". В ретере или в магосе. Предварительно ее стоит сконвертировать в .blp.
Если у модели несколько текстур то все немного сложнее, нужно добавить материалов, а возможно вам придется склеивать и перенатягивать текстуры.

Убирание лишних кадров

Ранее мы добавили эти дополнительные кадры с тпозой. Их нужно теперь убрать.
Открываем модель в великом и ужасном Mdl Vis.
Идем в каждую анимацию и видим в начале огромный белый отрезок, между первым КК и вторым КК. Первый это тпоза которую мы сделали через Assume Skin Pose, а второй это контрольный кадр который мы добавили когда нажали на кнопку Ключ.
Копируем третий ключевой кадр (начало собственно анимации) в первый.
Почему
Чтобы ничего важное не пропало когда мы будем что то отрезать. Когда мы копируем кадры в Mdl Vis, копируется вся информация во всех костях.
Если просто взять и удалить этот отрезок то анимация может выглядеть неправильно.
Затем выделяем область кадров после первого (не включительно) и до третьего включительно, и делаем Cut чтобы убрать их.
Так делаем с каждой анимацией.

Линеаризация анимации

После конверта неодексом все анимации у нас на None контроллере, со ступенчатым движением вместо плавного. Надо их поменять на Linear. Быстрый способ это сделать это в Mdl Vis'e же сделать Optimisation с включенной галкой Linearise Animations.

Исправление косяков Translation осей

Проиграв анимации в нашем мдх файле, можно заметить что модель все время улетает куда то нетуда.
Чтобы это исправить надо поменять оси местами. Как это сделать добавлю потом.

Прочие проблемы

Лишние куски меша

У некоторых моделей есть разные варианты голов, оружия, и т.д. Их можно убрать например в мдл визе, либо переключать видимость в магосе для например гранаты, оружия ближнего/дальнего. Как это сделать я тут объяснять не буду, это базовые навыки работы с мдх файлами. К счастью все эти штуки извлекаются отдельными геосетами так что сложностей тут возникнуть не должно. Главное не забыть про это, чтобы персонаж не был с торчащими одновременно десятью головами и оружиями.

Неправильно привязанные вершины

Иногда после конвертации вершины в меше могут быть привязаны не к тем костям. Их надо пересвязать, например в мдл визе или в ретере.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
21
6 месяцев назад
Отредактирован biridius
0
Скорее всего можно сделать лучше, как то склеить fbxы и мб оси можно тоже как то подкрутить перед экспортом,возможно есть еще какие трюки с неодексом, написал как знаю.
0
35
6 месяцев назад
0
biridius, пробуй blender. Фбх модель туда грузить, потом исправлять косяки скелетом и экспортировать
0
1
5 месяцев назад
0
Всем доброго времени суток. Ребят у меня проблема . Я не совсем понял эту строку.Сперва Extract RSH чтобы сделать DDS файл, затем идем Edit -> Advanced mode, и жмем DDS -> TG. Когда я в texture tool иду по пути:\DXP2\Data\Arts\Ebps\Races\(раса)\texture_share, Я захожу в папку dow soulstorm и дохожу только до папки дата потом проводник программы texture tool пишет что нет элементов поиска т.е. после паки дата ничего нет. Подскажите ПОЖАЛУЙСТА.
2
21
5 месяцев назад
Отредактирован biridius
2
beboy, нужно сперва корсиксом (Mod Studio) извлечь файлы игры. Корсикс надо запускать от имени администратора, иначе система ему не даст писать в папку с игрой.
0
1
5 месяцев назад
0
(Затем Load Dow/SS Mod и в нашей папке с Соулштормом находим DXP2.module.) При открытии модуля выдает ошибку. Подскажите пожалуйста
Загруженные файлы
0
35
3 месяца назад
0
Жду, когда статью доделаешь
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.