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

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

 
senatus
тихий и скромный...
offline
Опыт: 7,023
Активность:
Как использовать в игре разные скины для одной модели.
Небольшая статейка по этому вопросу. Долго думал, как помочь МапМену - в его карте cs нужны были две модели контера и террора (модель одна - марин, а скины разные). Так вот, проблема в том, что во время игры изменить скин юниту нельзя - уже ясно, что придется импортировать две модели. Но модель марина использует текстуру из архива mpq. Заменив эту текстуру, мы можем обеспечить скин одному юниту. Но в задаче, которую я приводил нужны две модели (а бывают и другие случаи, когда моделей нужно больше). Незадача... Сейчас попробуем устранить эту проблему.

Что нам нужно?

- любой текстовый редактор (я использовал блокнот)
- Программа для конвертирования файлов mdx в файлы mdl (Я использовал Yobgulz Mdx to mdl converter )
- Нужная модель.
- Конвертер из blp в любой, более приятный формат и обратно (я использовал wc3Viewer)
- граф редактор.
- очень сильное желание сделать что-либо полезное.

Приступим.

Берем текстуру в которой находится скин модели (достаем её из mpq, если она стандартная.)
Конвертируем её из blp, скажем, в tga. Открываем в графическом редакторе и изменяем скин по своему усмотрению. Переименовываем при сохранении в любое другое название, которое не совпадает с начальным. После этого снова конвертируем в формат blp (это не обязательно. Модели работают и с tga форматом, но советую использовать blp, ибо весит меньше).
Создаем копию модели и переименовываем её (на ваше усмотрение). Помещаем их(саму модель (mdx) и только что созданный новый скин) в рабочую директорию проги "Yobgulz mdx <-> mdl конвертер".
Открываем программу и конвертируем файл mdx в mdl. Открываем файл mdl с помощью блокнота и находим область, которая отвечает за текстуры данной модели. Она выглядит так:

Код:
Textures [число - отвечает за количество текстур данной модели] {
Bitmap {
...
}
Bitmap {
        ...
}
...
}

в примере с марином это выглядит так:
Код:
Textures 6 {
Bitmap {
Image "units\Critters\Marine\SpaceMarine.blp",
}
Bitmap {
Image "",
ReplaceableId 1,
}
Bitmap {
Image "Textures\GenericGlowX.blp",
}
Bitmap {
Image "Textures\lensflare1Ax.blp",
}
Bitmap {
Image "ReplaceableTextures\TeamColor\TeamColor08.blp",
}
Bitmap {
Image "Textures\star2.blp",
}
}


Нас интересует строчка Image "units\Critters\Marine\SpaceMarine.blp", т.к. именно она указывает на текстуру, которая является скином для данной модели.
Можно интуитивно догадаться, что в кавычках указан путь к текстуре. Именно его нам нужно и заменить. Вместо него нужно прописать путь к вашему новому скину. Можно прописывать путь (к той самой текстуре), используя папки. Например:
"Textures\MyNewSkin.blp".
*MyNewSkin - название файла текстуры.
Сохраняем и закрываем файл mdl.

Если вы прописали путь таким образом, то в директории программы создаете папку с именем "Textures" и закидываете в него файл MyNewSkin.blp. А после, в программе "Yobgulz mdx <-> mdl конвертер" нажимаем на "mdl->mdx" и выбираем наш отредактированный mdl файл. Почему-то прога выдает ошибки, но я проверил - все работает – файл конвертируется удачно. У нас есть полноценная модель с новым скином!

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

Возможно вам будет необходимо изменить модель, которая использует несколько текстур для формирования скина. Тогда вам необходимо будет перерисовать все (по желанию) текстуры, отвечающие за скин и проделать с ними в файле mdl все вышеописанные изменения.

Отредактировано senatus, 20.07.2006 в 15:44.
Старый 20.07.2006, 15:33
senatus
тихий и скромный...
offline
Опыт: 7,023
Активность:
Цитата:
Сообщение от Gotik
Это всё можно сделать намного легче с помошью MDLVis'а

возможно. я ей не пользовался есчо...
Старый 20.07.2006, 16:19
GadenbIsh
Просто Гад
offline
Опыт: 70,430
Активность:
я тоже сначала на это надеялся=))

senatus
в мдлвисе это делается за 5 секунд, переход на вкладку текстуру, изменение путя=) и сохранение
Старый 20.07.2006, 22:28
senatus
тихий и скромный...
offline
Опыт: 7,023
Активность:
Цитата:
Сообщение от GadenbIsh
я тоже сначала на это надеялся=))

senatus
в мдлвисе это делается за 5 секунд, переход на вкладку текстуру, изменение путя=) и сохранение

Я не думаю, что приведенный мною пример намного сложнее) можт чуточку дольше... на 10 секунд...

senatus добавил:
Цитата:
Сообщение от AnD
думал ты тут учишь, как триггерами менять во время игры текстуру =).

такое не возможно;) хотя, подумаю...
Старый 21.07.2006, 11:52
Sargeras
Лидер "Двух Королевств"
offline
Опыт: 21,363
Активность:
ВЫВОД: статья не может быть размещена на сайте.
Комментарии: мало кто "за" и не одобрено ещё администрацией.
Старый 03.09.2006, 04:32
senatus
тихий и скромный...
offline
Опыт: 7,023
Активность:
Хы. не думал, что нужно много людей "за"... Хотя, решать админам
Старый 05.09.2006, 17:37
B100D E1F
Scarecrow
offline
Опыт: 4,869
Активность:
Фтоопку. Вот я надеялся, что в этой статье описано как взять ОДНУ модель мдикс, и походу gb'cs? on-game менять ей скин. Можно было б замутить смену доспехов а-ля Диабло.
Старый 16.09.2006, 21:25
MapMan
Corey 8 Taylor
offline
Опыт: 21,154
Активность:
Цитата:
Долго думал, как помочь МапМену - в его карте cs нужны были две модели контера и террора (модель одна - марин, а скины разные)

ок;)
А как насчёт текстурок? (ты мне только террора сделал(!))
Старый 21.09.2006, 13:19
KO3bMA

offline
Опыт: 45,624
Активность:
в принципе можно создать модель, в которой триггерно можно "переключать" техстуры, нужно только дублировать те поверхности, вид которых нужно изменить, прописать им разные техстуры и создать несколько комплектов анимаций, в которых одни текстуры видимы, другие нет (second итд),
из варовских так можно трансформировать, напр Келя
Старый 21.09.2006, 14:32

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

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

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

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



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