Добавление аддонов на оружие без редактирования анимации — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
OlegatoR (обсуждение | вклад) м (Откат правок 5.228.2.71 (обсуждение) к версии 5.228.5.183) |
OlegatoR (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| − | + | Данная статья посвящена возможности прикрепления обвесов на оружие просто не имеющих их в модели HUD. | |
| − | + | То есть при выполнении всего ниже сказанного можно будет повесить глушитель на СВД, прицел на ТОЗ-34 и т.д (Подствольник на данный момент установить не получится — как не крути понадобится новая анимация). | |
| − | + | И ещё один нюанс — аддон на пушке можно будет сделать либо несъемным, либо отсутствующий (при попытке сделать обвес съемным, игра вылетает с банальным логом «stack trace»). | |
| − | + | Делал с замахом на ЗП, ЧН, но подходит и к ТЧ - различия только из - за разделения мешей и анимаций - руки от оружия. | |
| − | + | ||
| − | + | Ну давайте собственно перейдем к делу. | |
| − | + | ||
| − | + | === Необходимый минимум === | |
| − | + | ||
| + | *'''Самое главное — прямые руки растущие из плеч и умеющая мыслить голова.''' | ||
| + | *'''Умение работать с 3D редакторами и конфигами оружия''' или желание научиться там работать и хотя бы немного времени. | ||
| + | *'''Milkshape 3D''' или любой другой редактор с нужными '''плагинами импорта\экспорта'''. | ||
| + | *'''Сталкер SDK''' не суть важно какой. | ||
| + | *'''Конвертер Бардака''' (понадобится для вытаскивания анимаций и файла .bones) и умение с ним работать. | ||
| + | *'''Распакованные архивы Сталкера.''' | ||
| + | |||
| + | == Этап I — редактирование модели == | ||
| + | |||
| + | *Для начала импортируем нужную модель. | ||
| + | *Импортируете требуемые вам аддоны(если вместе с ними импортируются новые кости - удалите их), редактируете их по своему вкусу и ставите куда вам больше нравится. | ||
| + | *Далее создаете новую кость под аддон (wpn_scope - для оптики и wpn_silenser для глушителя) на том джоинте который не должен двигаться относительно обвеса. К примеру оба аддона для ТОЗ-34 будут завязаны на переламывающемся стволе - кость с названием bend_reload. Новая кость должна находиться на той же координате что и кость-основа. '''Оригинальные джоинты не двигать!!!''' | ||
| + | *Осталось прибиндидь аддоны к соответствующим костям и экспортировать в .object. | ||
| + | *А для World модели просто создаете дополнительные джоинты не суть важно где. | ||
| + | *Этап редактирования закончен. | ||
| + | |||
| + | == Этап II — настройка модели в SDK == | ||
| + | === Импортирование файла .bones и анимаций === | ||
| + | |||
| + | Начнём с форматов. | ||
| + | .bones - это формат зон соприкосновения мешей с окружающим миром. | ||
| + | Содержится в мировой модели. | ||
| + | .skls - это формат множественной анимаций (1 файл - несколько анимаций). | ||
| + | Содержится либо в HUD'е модели (в основном ТЧ), либо в .omf файла имеющего вид wpn_(название оружия)_hud_animation.omf | ||
| + | |||
| + | Теперь я расскажу о создании .bat файла требуемого для работы с конвертером Бардака, так как здесь погорело не мало народу. | ||
| + | Технология довольна проста - создаёте .txt файл, набиваете требуемую команду (например: converter <!-- закомментировано![-omf] --> -skls wpn_svd_hud_animation.omf) и "сохранить как". | ||
| + | |||
| + | Ставите вот это в соответствующих строках: | ||
| + | |||
| + | '''Имя файла: (любое).bat''' | ||
| + | |||
| + | '''Тип файла: все файлы''' | ||
| + | |||
| + | И сохраняете. Готово. | ||
| + | |||
| + | === Настройка в SDK === | ||
| + | Загружаете ранее созданный .object | ||
| + | Настраиваете вкладки surfaces и object по своему вкусу. | ||
| + | |||
| + | Настройка для HUD модели - вкладка motions. | ||
| + | Импортируете вытащенный skls через edit\append (через motion reference получите вылет в игре). | ||
| + | Экспортируете на замену оригинальному wpn_(название)_hud.ogf | ||
| + | |||
| + | Настройка для World модели - вкладка bones. | ||
| + | Загружаете .bones через file\load и настраиваете. | ||
| + | Экспортируете на замену оригинальному wpn_(название).ogf | ||
| + | |||
| + | Более подробно о настройке в SDK можно узнать в [[3dsmax._Создание_HUD-модели_оружия|этой статье]]. | ||
| + | А о настройке конфигов в [[Редактирование_оружия|этой]] и [[Создание_нового_оружия|этой]] статьях. | ||
| + | |||
| + | == От автора == | ||
| + | Теперь если вы ни где не накосячили, всё должно работать. | ||
| + | Удачи вам в ваших творческих свершениях! | ||
| + | И ещё, если кто найдет способ устранения вылета не дающего сделать новый аддон съемным, прошу - дополните эту статью. | ||
| + | |||
| + | Заранее спасибо! | ||
| + | |||
| + | == Дополнение: редактирование моделей ТЧ == | ||
| + | К сожалению, описанный выше способ не сработает при редактировании моделей '''ТЧ''' – по двум причинам: | ||
| + | *в '''Milkshape''' если просто добавить кости с помощью инструмента '''Joint''' – при просмотре анимаций модель завяжется в узел; | ||
| + | *при импорте анимаций '''SDK''' выдаст нечто наподобие «''не могу найти кость <bone_name> в анимации <animation_name>''» и, соответственно, откажется импортировать. | ||
| + | Придется действовать по-другому. Из инструментов, кроме выше перечисленного, понадобится [http://stalkerin.gameru.net/downloads/other/for_wiki_articles/ms3dhe.7z '''Ms3d Hierarchy Editor''']. | ||
| + | === Порядок действий: === | ||
| + | '''1.''' Создаем копию исходной модели.<br> | ||
| + | '''2.''' В копии добавляем нужные кости.<br> | ||
| + | [[Файл:Adding_bones_001.jpg]]<br> | ||
| + | '''3.''' Добавленные кости поварачиваем на '''-90''' градусов по оси Х относительно родительской кости (далее станет видно для чего). К сожалению поворот костей в '''Milkshape''' работает как-то странно – поэтому придется вручную разместить кости так, как будто всю совокупность костей повернули.<br> | ||
| + | [[Файл:Adding bones 002.jpg]]<br> | ||
| + | '''4.''' С помощью '''Hierarchy Editor'''’а в копии отсоединяем старшую из созданных костей от ее родителя.<br> | ||
| + | [[Файл:Adding bones 003.jpg]]<br> | ||
| + | '''5.''' Всю изначальную геометрию и весь изначальный скелет в копии удаляем (таким образом должны остаться только созданные кости).<br> | ||
| + | '''6.''' Открываем оригинал и подгружаем ('''Merge''') копию.<br> | ||
| + | '''7.''' В оригинале модели с помощью '''Hierarchy Editor'''’а привязываем созданные кости к нужным родителям.<br> | ||
| + | [[Файл:Adding_bones_001.jpg]]<br> | ||
| + | Как видим, совокупность созданных костей повернулась на '''+90''' градусов и оказалась расположена там, где требовалось. Сохраняем (+ экспортируем в '''.object''').<br> | ||
| + | '''8.''' Поочередно импортируем и пересохраняем с измененным скелетом все анимации. | ||
| + | |||
| + | После этого из полученных '''.object''' и '''.skl''' файлов в '''SDK''' как обычно собираем модель. Теперь к созданным костям спокойно можно присоединять аддоны – анимации будут корректны, аддоны будут одеваться/сниматься.<br> | ||
| + | |||
| + | ''Пояснение:'' процесс «создание костей – отсоединение – удаление исходной геометрии и скелета – объединение моделей – присоединение костей» необходим для решения первой из указанных проблем – завязывания модели в узел. Вторая проблема решается пересохранением всех анимаций.<br> | ||
| + | |||
| + | ''Важное замечание:'' для того, чтобы съемные аддоны работали корректно, созданным костям нужно дать стандартные имена: | ||
| + | *'''wpn_silencer''' – для глушителя;<br> | ||
| + | *'''wpn_scope''' – для оптического прицела;<br> | ||
| + | *'''wpn_grenade_launcher''' и '''wpn_grenade''' – для подствольного гранатомета (возможно понадобятся еще кости – для прицела и спускового крючка). | ||
| + | |||
| + | == Авторы == | ||
| + | |||
| + | |||
| + | '''Автор:''' [[Участник:Ya.D|Ya.D]]<br> | ||
| + | '''Дополнил:''' [[Участник:Geoset|Geoset]] | ||
| + | |||
| + | |||
| + | [[Категория:Wireframe]] | ||
Текущая версия на 11:15, 12 марта 2017
Данная статья посвящена возможности прикрепления обвесов на оружие просто не имеющих их в модели HUD. То есть при выполнении всего ниже сказанного можно будет повесить глушитель на СВД, прицел на ТОЗ-34 и т.д (Подствольник на данный момент установить не получится — как не крути понадобится новая анимация). И ещё один нюанс — аддон на пушке можно будет сделать либо несъемным, либо отсутствующий (при попытке сделать обвес съемным, игра вылетает с банальным логом «stack trace»). Делал с замахом на ЗП, ЧН, но подходит и к ТЧ - различия только из - за разделения мешей и анимаций - руки от оружия.
Ну давайте собственно перейдем к делу.
Содержание
Необходимый минимум
- Самое главное — прямые руки растущие из плеч и умеющая мыслить голова.
- Умение работать с 3D редакторами и конфигами оружия или желание научиться там работать и хотя бы немного времени.
- Milkshape 3D или любой другой редактор с нужными плагинами импорта\экспорта.
- Сталкер SDK не суть важно какой.
- Конвертер Бардака (понадобится для вытаскивания анимаций и файла .bones) и умение с ним работать.
- Распакованные архивы Сталкера.
Этап I — редактирование модели
- Для начала импортируем нужную модель.
- Импортируете требуемые вам аддоны(если вместе с ними импортируются новые кости - удалите их), редактируете их по своему вкусу и ставите куда вам больше нравится.
- Далее создаете новую кость под аддон (wpn_scope - для оптики и wpn_silenser для глушителя) на том джоинте который не должен двигаться относительно обвеса. К примеру оба аддона для ТОЗ-34 будут завязаны на переламывающемся стволе - кость с названием bend_reload. Новая кость должна находиться на той же координате что и кость-основа. Оригинальные джоинты не двигать!!!
- Осталось прибиндидь аддоны к соответствующим костям и экспортировать в .object.
- А для World модели просто создаете дополнительные джоинты не суть важно где.
- Этап редактирования закончен.
Этап II — настройка модели в SDK
Импортирование файла .bones и анимаций
Начнём с форматов. .bones - это формат зон соприкосновения мешей с окружающим миром. Содержится в мировой модели. .skls - это формат множественной анимаций (1 файл - несколько анимаций). Содержится либо в HUD'е модели (в основном ТЧ), либо в .omf файла имеющего вид wpn_(название оружия)_hud_animation.omf
Теперь я расскажу о создании .bat файла требуемого для работы с конвертером Бардака, так как здесь погорело не мало народу. Технология довольна проста - создаёте .txt файл, набиваете требуемую команду (например: converter -skls wpn_svd_hud_animation.omf) и "сохранить как".
Ставите вот это в соответствующих строках:
Имя файла: (любое).bat
Тип файла: все файлы
И сохраняете. Готово.
Настройка в SDK
Загружаете ранее созданный .object Настраиваете вкладки surfaces и object по своему вкусу.
Настройка для HUD модели - вкладка motions. Импортируете вытащенный skls через edit\append (через motion reference получите вылет в игре). Экспортируете на замену оригинальному wpn_(название)_hud.ogf
Настройка для World модели - вкладка bones. Загружаете .bones через file\load и настраиваете. Экспортируете на замену оригинальному wpn_(название).ogf
Более подробно о настройке в SDK можно узнать в этой статье. А о настройке конфигов в этой и этой статьях.
От автора
Теперь если вы ни где не накосячили, всё должно работать. Удачи вам в ваших творческих свершениях! И ещё, если кто найдет способ устранения вылета не дающего сделать новый аддон съемным, прошу - дополните эту статью.
Заранее спасибо!
Дополнение: редактирование моделей ТЧ
К сожалению, описанный выше способ не сработает при редактировании моделей ТЧ – по двум причинам:
- в Milkshape если просто добавить кости с помощью инструмента Joint – при просмотре анимаций модель завяжется в узел;
- при импорте анимаций SDK выдаст нечто наподобие «не могу найти кость <bone_name> в анимации <animation_name>» и, соответственно, откажется импортировать.
Придется действовать по-другому. Из инструментов, кроме выше перечисленного, понадобится Ms3d Hierarchy Editor.
Порядок действий:
1. Создаем копию исходной модели.
2. В копии добавляем нужные кости.

3. Добавленные кости поварачиваем на -90 градусов по оси Х относительно родительской кости (далее станет видно для чего). К сожалению поворот костей в Milkshape работает как-то странно – поэтому придется вручную разместить кости так, как будто всю совокупность костей повернули.

4. С помощью Hierarchy Editor’а в копии отсоединяем старшую из созданных костей от ее родителя.

5. Всю изначальную геометрию и весь изначальный скелет в копии удаляем (таким образом должны остаться только созданные кости).
6. Открываем оригинал и подгружаем (Merge) копию.
7. В оригинале модели с помощью Hierarchy Editor’а привязываем созданные кости к нужным родителям.

Как видим, совокупность созданных костей повернулась на +90 градусов и оказалась расположена там, где требовалось. Сохраняем (+ экспортируем в .object).
8. Поочередно импортируем и пересохраняем с измененным скелетом все анимации.
После этого из полученных .object и .skl файлов в SDK как обычно собираем модель. Теперь к созданным костям спокойно можно присоединять аддоны – анимации будут корректны, аддоны будут одеваться/сниматься.
Пояснение: процесс «создание костей – отсоединение – удаление исходной геометрии и скелета – объединение моделей – присоединение костей» необходим для решения первой из указанных проблем – завязывания модели в узел. Вторая проблема решается пересохранением всех анимаций.
Важное замечание: для того, чтобы съемные аддоны работали корректно, созданным костям нужно дать стандартные имена:
- wpn_silencer – для глушителя;
- wpn_scope – для оптического прицела;
- wpn_grenade_launcher и wpn_grenade – для подствольного гранатомета (возможно понадобятся еще кости – для прицела и спускового крючка).