Maya. Создание HUD модели оружия с использованием авторских скриптов. — S.T.A.L.K.E.R. Inside Wiki

Maya. Создание HUD модели оружия с использованием авторских скриптов.

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск

Начало

Введение

Итак, я снова с вами и теперь я хочу рассказать об авторских скриптах скриптах и их пользе. И всё же, чем эта статья вам поможет:

  • Откроет вам глаза на использование скриптов.
  • Покажет вам скрипты, которые очень необходимы.
  • Научит или напомнит о пользовании этими скриптами.

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


Итак, почему же я решил написать эту статью?

  • Я не знал о том, что я нуб и не знаю, как всё это сделать всё это с помощью обычных средств.
  • Я нуб, но есть такие же нубы, которые также мало знают о всём, что было перечислено в списке, именуемым "чем поможет эта статья".
  • Я не нуб и действительно нужно объяснить многим людям, как всё это сделать.

В любом случае, понимайте так, как захотите.


Рекомендую прочитать другую мою статью по работе с объектами и костями.

Теперь приступим к инструментарию!

Инструменты


Сразу скажу, что эти скрипты я нашёл в Google почти случайным образом. Вот ссылка на страницу, где эти скрипты и находятся
(скрипты были обновлены! скачивайте по ссылке, указанной в инструментах (старую версию), т.к. из новой вырезали нужную функцию)
Скрипты стали платные, но нам же не нужна новая версия? Рабочая ссылка на скрипты ведёт через яндекс.диск

Основное содержание статьи

Работа со скриптами


Настоятельно рекомендую прочитать документацию к скриптам (Инструкция.doc) т.к. там находится куча полезной информации о скачанных скриптах

Для начала установим эти скрипты. Это как раз и описано в документации, но я ещё раз это напишу:

  • В вашем файловом браузере зайдите в папку Мои документы/maya/scripts.
  • Если в папке пусто, нет файлов - залейте в эту папку все скрипты из архива и перезагрузите Maya, ВСЁ!

Сами скрипты довольно просто найти в главной панели Maya: Запустите Maya. В строке меню “File, Edit…” в конце будет меню Scripts.

Итак, в скриптах много чего интересного для создания объектов. Начну разбирать некоторые скрипты, о которых просто стоит сделать отдельное описание:

  • Соединение мешей или Combine + ...

Не знаю, как у вас, но лично у меня (может, проблема в плагинах?) просто объединить меши нельзя. Для этого можно использовать Mesh\Combine, но сразу после экспорта в любой формат *.object, у меня случается вылет с предложением отправить отсчёт об ошибке. Но не соединят же Autodesk нам геометрию! Вот и тема остаётся нетронутой. Вот я сразу, после того как установил плагин, попробовал использовать этот скрипт (он находит по адресу Scripts\Objects\Combine + weld + soft border edges). После него всё заработало! Выделяем объекты и запускаем скрипт. После этого Maya подумает (зависит от размера объекта) и сделает сливание объектов. Экспорт проходит на ура.

  • Сохранение/загрузка костей (аналог сохранения у Physique в Max) или Save/load weights to file-cache'

К сожалению, этот скрипт не понадобится в создании худа, но, скорее всего, пригодится в других ситуациях, потому что в отличии от привычного некоторым людям сохранения/загрузки Physique в максе, он почему-то исключает любую добавленную геометрию. Но тем не менее все кости после загрузки взаимодействуют с мешом отлично. Вообще, я на него сразу обратил внимание, но только потратил время, достигая нужной цели. Эти функции находится в Scripts\Skelet/Skin под соответствующими названиями.


Возможно, существует для присоединения костей или их изменения...


  • Изменение геометрии или Edit skinned geometry

Этот, скорее, один из самых важнейших в этом уроке скриптов, потому что он обеспечивает редактирование геометрии без необходимости детача скина (то есть удаления привязки костей - Detach Skin). Вот что пишет автор об этом скрипте: Выделите скиненый объект, запустите скрипт, теперь вы можете редактировать его геометрию как угодно без боязни потерять тщательно разложенные ранее веса, можно резать геометрию, свелдживать вершины, удалять полигоны, создавать новые, менять развертку, удалять историю, все что угодно. Это значит, что можно спокойно присоединять к мешу объекты, которые нам нужны (например, оружие или плюшевый мишка для создания худа :D). Сам скрипт лежит по адресу Scripts\Skelet/Skin\Edit skinned geometry. Чтобы прекратить режим изменения геометрии - заново активируйте этот же скрипт.

  • Редактирование привязки или Skin weights editor

Это второй скрипт, который немаловажен для последующего урока. Автор даже сделал отдельную сноску в документации для этого скрипта, но я ему уделю не так много. Просто скажу, что с помощью этого скрипта можно удалять привязку отдельной или наоборот - создавать её. Она работает довольно просто - выделяем сначала объект, потом активируем скрипт, потом выделяем некоторые вертексы и кость, которая вам нужна. Затем нажимаем Assign и дело в шляпе. Выделенные вертексы поменяют отношение к выделенной кости. Т.е. были привязаны - станут отвязанными и наоборот. Но только есть один момент - если я хочу вернуть действие назад (например, обратно отвязать объект), то окошко выдаёт текст того, что вертексы проассигнены. Об этом попробую написать потом. Этот скрипт лежит в Scripts\Skelet/Skin\Skin weights editor

Создание худ модели


Предупреждаю сразу - эта часть не предусматривает создание сложных объектов с костями, прикреплёнными к wpn_body и ниже (вроде wpn_scope).О таких случаях я напишу позже.

Итак, вот то, ради чего многие сюда пришли. Как помню, в статье, посвящённой похожему делу, но в MilkShape есть такой текст:

  • "Видим, что, вроде бы, перенести оружие из ЧН\ЗП в ТЧ достаточно просто – надо только объединить скелеты рук и оружия, и дело в шляпе. На практике это действительно несложно – при условии, что работаем мы в Maya. Но модмейкеры, как известно, в большинстве своем народ бедный, и Maya им не по карману :). Что же, придется действовать «народными средствами», т.е. при помощи Milkshape 3d, благо, необходимые плагины для него имеются."
  • "Ищем в меню пункт, позволяющий присоединить один джоинт к другому, и… нервно бьем кулаком по столу, так как такого пункта там, как ни странно, нет."

Почему-то я тут увидел намёк на то, что в майе такая кнопка быть должна... Тем не менее такой кнопки нет (впоследствии узнаётся то, что она легко появляется после установки скриптов и, при правильном использовании, даёт нужный результат. Вообще-то можно просто в Outliner'е перетащить потомка на родителя. --RedPython 05:05, 26 марта 2011 (UTC)

Как же пользоваться этими скриптами, я сейчас и расскажу.

Запускаем Maya. В ней настраиваем нужные параметры (если хотим): ед. измерения и отображение камеры. Потом импортируем нужные руки. Я работал с руками из ЧН, но можно взять и руки ТЧ (только там пока нет кости wpn_body и её придётся создать и присоединить к основному скелету).

  • Если вы импортируете руки из ЧН (или ЗП), то вам придётся задать им путь к текстуре этих рук, которая была прежде скопирована из ЧН/ЗП и навана, к примеру, act_arm_perchatka_cs

Руки-Rek0.png

Теперь производим импорт любого объекта (как статики, как и динамики. лучше - статики из СДК, но будет также рассмотрен случай с динамикой). Если вы импортировали динамический объект, то нажимаем на сам объект и в режиме редактирования анимации нажимаем на Skin\Detach Skin. Потом убираемся - удаляем кости, которые остались после этого объекта. У нас получился статичный объект.

Теперь надо подвинуть объект на нужное место (лучше, чтобы его можно было легко выделять без рук и анимировать). Удаляем изменяем нужные вертексы объекта и получается что-то вроде:

Руки и объект - Rek0.png


Теперь, имея динамические руки и статичный объект, можно двигаться дальше. Нажимаем на руки и активируем скрипт Scripts\Skelet/Skin\Edit skinned geometry

Теперь выделяем руки и объект и активируем Scripts\Objects\Combine + weld + soft border edges

Пауза...

Нажимаем ещё раз Scripts\Skelet/Skin\Edit skinned geometry

Всё. Модель объекта присоединена к худу, но если подвигать некоторыми костями, то будет видно, как объект двигается вместе с костями и причём очень криво. Примерно так:

Кривое движение - Rek0.png

Нам это не нужно. Если двигали кости, то возвращаемся назад или нажимаем с выбором главной кости Skin\Go to bind pose

Теперь настало время привязки объекта к костям. Для этого выделяем худ и активируем Scripts\Skelet/Skin\Skin weights editor

У меня появляется окошко, но немного неправильной формы. Чтобы посмотреть содержимое, я просто расширяю его. Видим содержимое: Select some joints and skinned verticies... Я бы сначала выделил skinned verticies т.е. вертексы объекта. Выделяем объект (у меня это сейф) без рук.


Если вы не послушали совета, что объект надо передвигать туда, где легко не задеть рук, то выделяем несколько вертексов и нажимаем Shift + Ю (на англ. раскладке)

Я выделил свой объект и получилось что-то вроде этого:

Аттач объекта - Rek0.png

Если у вас получилось что-то аналогичное, то всё, должно быть, правильно.

Теперь окошко просит выделить кости. Для начала выделим главную кость - ту, что скрепляет все кости. У меня она называется bip01 (напомню, что руки ЧН). Когда вы выделите эту кость, то все остальные кости выделятся вместе с ней. Теперь нажимаем на кнопку внутри окошка: Assign. Это исключит объект из всего скелета и, сколько не двигай костями (кроме основной, т.к. она определяет позицию самого объекта), ничего мы не добьёмся. Теперь намечается новый случай - многокостие. Я его так назвал, потому что в некоторых случаях бывает, что объекту нужны кости вроде wpn_scope и т.п. Пока я их не трогаю и создание больших пушек я опишу в отдельной части и потом.

Если у вас один объект без наворотов, то можно продолжать. Выделяем заново все вертексы объекта и кликаем по косточке wpn_body. Нажимаем Assign. В этом случае скрипт наоборот - сделает вертексы привязвнными к кости.

Закрываем окно скрипта. Всё с объектом... Экспортируем объект в X-Ray Skeletal Object (выделив меш худа)

Худ Готов. Теперь осталось его только анимировать. Анимки экспортируем также, как и объект, но только X-Ray Skeletal Motion.


На заметку: главное в анимации - правильный поворот худа. Он итак по идее правильный. Просто если вы ошиблись в положении худа, то не стоит переделывать положение худа через анимку. Пользуйтесь параметром position в конфиге худа оружия.

Настройки в актор эдиторе можно посмотреть в аналогичной статье по 3ds максу

Удачи!

В игре.jpg

На заметку: попробуйте себя проверить, добавив какой-нибудь простенький объект.

Немного о руках ТЧ

Если вы хотите историю создания рук, то вы не по адресу, потому что этот раздел посвящён тому, чем может отличаться работа с руками из ТЧ. Итак, распишу по пунктам.

  • Импортируем модель рук формата .object
  • Импортируем оружие, не забываем отсоединить скин и удалить кости, если оружие было динамическим.
  • Включаем Edit skinned geometry
  • Подсоединяем оружие (или погремушку) через Combine + weld + soft border edges
  • Вырубаем Edit skinned geometry
  • Открываем Skin weights editor
  • Выделяем (только) вертексы оружия (или погремушки)
    • Если не видим вертексов оружия, то удерживаем правой кнопкой на худе и выбираем Vertex
  • C зажатым Shift, выделяем кость root
  • Нажимем Assign
  • Опять выделяем вертексы оружия
  • C зажатым Shift, выделяем кость wpn_body
  • Нажимем Assign и закрываем окно
    • Можно немного полюбоваться, подвигать кости. Не забудьте вернуть всё в порядок через Go to bind pose

Авторы

Ссылки на руки

Другие места
LANGUAGE