XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Желтая пресса: обучающие статьи
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
Asgard

offline
Опыт: 4,474
Активность:
Конвертирование моделей Morrowind в Warcraft III
Конвертирование моделей Morrowind в Warcraft III


Автор: Кулинич "Asgard" Александр

Итак, сегодня мы поговорим, о том, как модельку из игры Morrowind (Tribunal/Bloodmoon) перенести в наш вселюбимейший WarCraft III. Сразу оговорюсь, что я не буду здесь касаться вопросов анимаций, так как это совершенно другая тема, здесь я расскажу именно о конвертировании. Для этого нам понадобится:

1. Собственно игра The Elder Scrolls III: Morrowind - из неё мы будем брать модельки
2. 3DMax версий 4 или 5 - главный инструмент модельщика
3. WarCraft Art Tools - для сохранения моделек в .mdx-формат
4. Photoshop, наверное любой версии - для перегона текстур в .tga-формат

А вот далее идут нестандартные программки и плагины.

1. BSAPack - программа с недружественным интерфейсом для разархивации bsa-архивов игры
2. NifScope - программка для просмотра моделек в .nif-формате
3. NifImport - плагин для 3DMax, для импорта .nif-моделей в 3DMax
4. DDS - плагин для Photoshop, чтобы он "понимал" .dds-формат текстур

ВотЪ! Как с кем обращаться опишу ниже.

Шаг 1. Выдираем модельки из Morrowind


Для этого потребуется архив игры, это файлы morrowind.bsa, tribunal.bsa и bloodmoon.bsa, для примера возьмём morrowind.bsa - основной архив игры. Копируем его в папку с программой BSAPack и в Run.bat прописываем параметры командной строки,
Код:
C:
cd \Temp
bsapack unpack Morrowind.bsa

Здесь С: - это диск на котором расположена программа BSAPack
Теперь запускаем bat-файл и вуаля, весь архив распаковался в нашу папку с программой. Кроме моделей там ещё много чего для любителей покопаться в ресурсах игр, но сегодня нас интересуют только две папки - \meshes - модели и \textures - текстуры, соответственно. С помощью программы NifScope можно отыскать необходимую для конвертирования модель. Для примера я возьму модельку дома Хлаалу - ex_hlaalu_b_01.nif, которая расположена в папке x/. NifScope наверняка выругается о том, что ему не хватает текстур, но всё равно выведет нетекстурированную модель домика в окошке, а так же покажет список отсутствующих текстур. Отыщите эти текстуры и скопируйте их в отдельную папку, туда же скопируйте сам файл модельки. Тут надо заметить, что программа выдаёт список недостающих текстур, причём пишет, что они в .tga-формате, хотя на самом деле - они в .dds-формате, так что ищите именно .dds-ки с такими именами и их копируйте.
DEAD URL

Шаг 2. Конвертируем текстуры


Берёте плагин DDS и копируете его в папку <Папка_фотошопа>/Plugns, где <Папка_фотошопа> - это папка, куда установлен Photoshop. Запускаете Photoshop и преспокойно просто открываете любую .dds-ку, с этим плагином фотожаба их понимает. При открытии программа спросит, какой уровень mip-карты открывать - открывайте самый большой.
DEAD URL
Дело в том, что формат .dds - это специальный форматик для текстур в Direct3D и он может хранить внутри себя несколько mip-карт сразу (те, кто знают, что это, меня поймут, остальные - не забивайте голову чушью). Короче говоря, что... Открыли? Теперь сохраняйте в .tga с 32-мя битами, чтоб не потерять альфа-канал. Переконвертируйте все текстуры в .tga и пойдём дальше.

Шаг 3. Собственно, конвертируем


Берём плаг NifImport и копируем его в папку /plugins - в папке 3DMax-а. Всё, запускаем 3DMax и лёгким нажатием кнопки Import (File->Import) импортируйте наш ex_hlaalu_b_01.nif в 3DMax. Модель открылась? Хорошо! Ну во первых невооружённым взглядом видно, что модель нетекстурированная, во-вторых - там, обычно, есть совершенно нам не нужный mesh, который отвечает за расчет collision - то бишь столкновений. В списке объектов - он безымянный. Без угрызений совести его можно удалить.

DEAD URL
В принципе геометрия модельки целостная и хорошая, править там ничего не надо, а вот с текстурами вопрос сложный. Ну во первых, это надо создать правильные материалы в 3DMax - для Art Tools, но это я описывать не стану, это всё есть в статье о моделировании с Art Tools. А вот второй вопросик будет поинтереснее. Так как Warcraft не поддерживает такую приятную вещь как tiling - тайлинг текстур. Это когда на одной поверхности одна и та же текстура встречается много много раз, хороший пример - текстура ландшафта. Там одним маленьким кусочком текстуры замощён весь ландшафт. С помощью такой штуки можно получать хорошее качество текстурирования, при относительно низком размере текстуры. Вот Близзы как-то обделили нас такой функцией, и теперь нам придётся либо "натягивать" текстурки на объекты, либо создавать специальную текстуры высокого разрешения, в которой можно раскопировать одну и ту же текстуру на всю поверхность. Я взял первый вариант, так как в принципе, качество текстур в Morrowind неплохое и в WarCraft сильно страшно выглядеть это не будет. Так что нам потребуется разметить текстурные координаты на mesh-ах, я в этом случае пользовался - UVW Map - Box. Всё, текстурки разметили, ненужные mesh-и удалили, теперь осталось выровнять модель по центру и изменить её позицию по высоте. В случае домика ex_hlaalu_b_01 его нужно поднять, чтобы на уровне поверхности земли как раз оказался вход в дом и небольшой порог. Да, кстати, чуть не забыл, я ещё добавлял к домику дверку, там где входы, а то они там не предусмотрены, ну я думаю, это будет не сложно, в папке с текстурами есть текстурки дверей, сделаете plane и на него натянете текстурку, правильно выровняйте и всё хорошо. Вот в общем и всё, модель готова. Можно экспортировать модель в .mdx - Art Tools сам создаст нужные .blp - текстуры и теперь модельку можно использовать в WarCraft III.
DEAD URL

Некоторые замечания


1. Так как весь софт уровня конвертирования моделек не очень качественный, то иногда случаются вылеты 3DMax-а, будьте аккуратнее, чаще делайте backup'ы. В принципе я думаю, что в сети есть другие программы и плагины, которые могут делать конвертирование более успешно, если я что-то найду, то обязательно дополню.

2. .nif-формат моделек, на самом деле применяется и в Oblivion, а так же, я его, по-моему, видел в Civilisation IV. Так что с тем же успехом можно и их модельки конвертировать в WarCraft, однако на счёт Oblivion-а меня терзают смутные сомнения по поводу текстур - очень уж много шейдерных наворотов в игре.

3. Что касается анимации персонажей в Morrowind, то тут совершенно иная тема, все люди и нелюди в игре собираются как бы по частям - по бодипартам (bodyparts - части тела). То есть на скелет с анимацией сажается отельно голова, туловище, руки, ноги и пр. Это было сделано для упрощённой смены всевозможных броников, перчаток, поножей, шлемов и пр. То есть когда вы в игре надеваете глухой закрытый шлем, то меняется вся модель башки - вместо неё ставится модель шлема. Так что я считаю правильным тут будет - выхватить отдельно модельки "ручек" и "ножек" и по отдельности их насажать на скелет какого-нибудь футмэна (footman) и не запариваться, ибо достать скелетик с анимацией из Morrowind, думаю будет сложно.

Дополнено позже: в принципе, я нашёл сами "скелеты" с анимациями - они хранятся в файлах base_anim.1st.nif, base_anim_female.1st.nif (женская анимка), ну и есть ещё некоторые, однако 3DMax напрочь отказался их грузить и постоянно вылетал. Я их смотрел в NifScope. Так что либо другой плагин надо, либо что-то ещё. Забавы ради - откройте файл anim_dancinggirl.nif - в игре в одном месте есть танцующие девушки, это их анимки.

Ещё чуть позже: так же во время конвертирования модели статуи дракончика (в Эбенгарде помните?), импорт дал непонятные результаты - сами mesh'и были правильные, а вот размещены чёрти как, пришлось их равнять!

Вот в общем и всё, о чём я хотел вам поведать. Ничего вобщем-то серьёзно нового тут нет, просто набор софта и прямые руки, и будет вам счастье.

(C) Asgard. 16.10.2006
Прикрепленные файлы
Тип файла: rar bsapack.rar (24.3 Кбайт, 147 просмотров )
Тип файла: rar dds.rar (186.9 Кбайт, 102 просмотров )
Тип файла: rar NifImport.rar (5.5 Кбайт, 132 просмотров )
Старый 17.10.2006, 15:16
Smile008
Улыбочку....
offline
Опыт: 1,086
Активность:
Только 1 вопрос-а не будет ли это добро тормозить? Ведь и текстуры и модели в Морровинде гораздо качественнее.... Потянет ли движок Вара?
Старый 17.10.2006, 15:22
Asgard

offline
Опыт: 4,474
Активность:
Smile008, у мя всё тянет без вопросов, реально, в Морре не такие мощне модели. В данной модельке дома, что-то порядка 1000 фэйсов и 1600 с лишним вершин, текстуры там 256х256, ничего сверхъестественного в этом давно нет. В принципе текстуры мона с лёгкостью пожать, а с геометрией моделек посерьёзней поработать и будет вам счастье!
Старый 17.10.2006, 15:26
Инквизитор

offline
Опыт: 7,037
Активность:
Asgard можеш войнов отуда выташить и конвертировать?

Incvizitor добавил:
в самых дутший доспехах
Старый 17.10.2006, 15:40
Asgard

offline
Опыт: 4,474
Активность:
Incvizitor, как я писал в самой статейке, тама всё по частям. Грубо говоря, я могу вытащить рожу дреморы и даэдрические доспехи, только их придётся сажать на другой скелет (читай дополнение к статье)!
Старый 17.10.2006, 15:43
Инквизитор

offline
Опыт: 7,037
Активность:
Цитата:
даэдрические доспехи

можеш доспехи а то у меня такой игры нет
Старый 17.10.2006, 15:48
Asgard

offline
Опыт: 4,474
Активность:
Incvizitor, не, Incvizitor, сорри, я доставать не буду, сейчас времени нет, попроси кого-угодно, весь необходимый инструментарий и хэлп - в статье!
Старый 17.10.2006, 15:54
ScorpioT1000
Работаем
online
Опыт: отключен
Неплохя статья, зачет!!!
Старый 17.10.2006, 15:58
Smile008
Улыбочку....
offline
Опыт: 1,086
Активность:
Цитата:
Сообщение от Asgard
Smile008, у мя всё тянет без вопросов, реально, в Морре не такие мощне модели. В данной модельке дома, что-то порядка 1000 фэйсов и 1600 с лишним вершин, текстуры там 256х256, ничего сверхъестественного в этом давно нет. В принципе текстуры мона с лёгкостью пожать, а с геометрией моделек посерьёзней поработать и будет вам счастье!


Как я полагаю, народ будет конвертировать не 1 домик, а сразу городами..... И ещё юниты.... Это конечно это не модельки Обливиона, но всё же....
Старый 17.10.2006, 16:01
Кет

offline
Опыт: 111,109
Активность:
маладетс.
пять баллов, 1000 опыта и мой личный респект тебе:)
з.ы. правда лично вручить я могу только первое и третье...
Старый 17.10.2006, 16:02
Asgard

offline
Опыт: 4,474
Активность:
Smile008, нынешние мощности всё позволят! Тем, кому не позволят, я искренне сочувствую!

Asgard добавил:
Да, к модерам или админам, нельзя ли перенести весь указанный софт в базу, а то мало ли...
Старый 17.10.2006, 16:20
Smile008
Улыбочку....
offline
Опыт: 1,086
Активность:
Цитата:
Сообщение от Asgard
Smile008, нынешние мощности всё позволят! Тем, кому не позволят, я искренне сочувствую!


Я имею ввиду не мощность компов, а силу движка Вара....Он-то не меняется....
Старый 17.10.2006, 16:33
Ukr_Man
Дедушко Тралл-Мороз
offline
Опыт: 6,995
Активность:
Всё! Давайте Asgard 1000опыта! Статья супер!
Старый 17.10.2006, 16:38
Asgard

offline
Опыт: 4,474
Активность:
Ukr_Man, спс, один вечер разбирался, около часа писал.
Smile008, двиг вара всё протащит, может конечно нагрузить видяху, но это уже зависит именно от мощи компа, у мя ничё не тормозило - факт!
Старый 17.10.2006, 17:06
GadenbIsh
Просто Гад
offline
Опыт: 71,030
Активность:
Статья очень полезная. + море моделек для разных проектов=)
Старый 17.10.2006, 21:18
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Цитата:
4. DDS - плагин для Photoshop, чтобы он "понимал" .dds-формат текстур

Плагин к фотошопу имхо нупство. Есть специальный пакет консольных утилит от nVidia, для работы с DDS текстурами различного типа сжатия, работает в обе стороны кстати. Дай ссылку и на него.

exploder добавил:
Цитата:
Так как Warcraft не поддерживает такую приятную вещь как tiling - тайлинг текстур. Это когда на одной поверхности одна и та же текстура встречается много много раз, хороший пример - текстура ландшафта. Там одним маленьким кусочком текстуры замощён весь ландшафт.

Насколько я помню, тайлинг можно реализовать в MdlVis... Так что Warcaft вполне поддерживает тайлинг, просто поленился программер, который писал плагины к максу...
Старый 17.10.2006, 21:42
N.Sy.Prophet
Йа Байан
offline
Опыт: 13,122
Активность:
Asgard
Однозначно респект тебе!
Старый 17.10.2006, 23:18
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Цитата:
очень уж много шейдерных наворотов в игре

Шейдеры и текстуры, вообще никак не связаны (на уровне файла модели. На уровне рендеринга связь безусловно есть)... Шейдеры - програмки работающие с GPU на уровне ассемблера для создания различных эффектов при рендеринге сцены.
Старый 17.10.2006, 23:50
Toadcop

offline
Опыт: 54,313
Активность:
Цитата:
консольных утилит от nVidia
это чё только для G-Forceов тогда параша...

статья
нормальная. но вот там модели паршивии... =)
Старый 18.10.2006, 01:36
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Цитата:
это чё только для G-Forceов тогда параша...

Для работы с dds текстурами! Эти форматы сжатия nVidia разрабатывала. Причем тут привязка к апаратуре?
Старый 18.10.2006, 09:49

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 18:46.