Добавление аддонов на оружие без редактирования анимации — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Добавление аддонов на оружие без редактирования анимации — различия между версиями

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

Перейти к: навигация, поиск
м (Настройка в SDK)
 
(не показаны 14 промежуточные версии 11 участников)
Строка 3: Строка 3:
 
И ещё один нюанс — аддон на пушке можно будет сделать либо несъемным, либо отсутствующий (при попытке сделать обвес съемным, игра вылетает с банальным логом «stack trace»).
 
И ещё один нюанс — аддон на пушке можно будет сделать либо несъемным, либо отсутствующий (при попытке сделать обвес съемным, игра вылетает с банальным логом «stack trace»).
 
Делал с замахом на ЗП, ЧН, но подходит и к ТЧ - различия только из - за разделения мешей и анимаций - руки от оружия.
 
Делал с замахом на ЗП, ЧН, но подходит и к ТЧ - различия только из - за разделения мешей и анимаций - руки от оружия.
 +
 
Ну давайте собственно перейдем к делу.
 
Ну давайте собственно перейдем к делу.
  
Строка 18: Строка 19:
 
*Для начала импортируем нужную модель.
 
*Для начала импортируем нужную модель.
 
*Импортируете требуемые вам аддоны(если вместе с ними импортируются новые кости - удалите их), редактируете их по своему вкусу и ставите куда вам больше нравится.
 
*Импортируете требуемые вам аддоны(если вместе с ними импортируются новые кости - удалите их), редактируете их по своему вкусу и ставите куда вам больше нравится.
*Далее создаете новую кость под аддон (wpn_scope - для оптики и wpn_silenser для глушителя) на том джоинте который не должен двигаться относительно обвеса. К примеру оба аддона для ТОЗ-34 будут завязаны на переламывающемся стволе - кость с названием bend_reload.
+
*Далее создаете новую кость под аддон (wpn_scope - для оптики и wpn_silenser для глушителя) на том джоинте который не должен двигаться относительно обвеса. К примеру оба аддона для ТОЗ-34 будут завязаны на переламывающемся стволе - кость с названием bend_reload. Новая кость должна находиться на той же координате что и кость-основа. '''Оригинальные джоинты не двигать!!!'''
Новая кость должна находиться на той же координате что и кость-основа. '''Оригинальные джоинты не двигать!!!'''
+
*Осталось прибиндидь аддоны к соответствующим костям и экспортировать в .object.
Осталось прибиндидь аддоны к соответствующим костям и экспортировать в .object.
+
*А для World модели просто создаете дополнительные джоинты не суть важно где.
Для World модели просто создаете дополнительные джоинты неважно где.
+
 
*Этап редактирования закончен.
 
*Этап редактирования закончен.
  
Строка 34: Строка 34:
  
 
Теперь я расскажу о создании .bat файла требуемого для работы с конвертером Бардака, так как здесь погорело не мало народу.
 
Теперь я расскажу о создании .bat файла требуемого для работы с конвертером Бардака, так как здесь погорело не мало народу.
Технология довольна проста - создаёте .txt файл, набиваете требуемую команду (например: converter [-omf] -skls wpn_svd_hud_animation.omf) и "сохранить как".
+
Технология довольна проста - создаёте .txt файл, набиваете требуемую команду (например: converter <!-- закомментировано![-omf] --> -skls wpn_svd_hud_animation.omf) и "сохранить как".
  
 
Ставите вот это в соответствующих строках:
 
Ставите вот это в соответствующих строках:
Строка 56: Строка 56:
 
Экспортируете на замену оригинальному wpn_(название).ogf
 
Экспортируете на замену оригинальному wpn_(название).ogf
  
Более подробно о настройке в SDK можно узнать в [http://stalkerin.gameru.net/wiki/index.php/3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_HUD-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F/ этой статье].
+
Более подробно о настройке в SDK можно узнать в [[3dsmax._Создание_HUD-модели_оружия|этой статье]].
А о настройке конфигов в [http://stalkerin.gameru.net/wiki/index.php/%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F/ этой] и [http://stalkerin.gameru.net/wiki/index.php/%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F/ этой] статье.
+
А о настройке конфигов в [[Редактирование_оружия|этой]] и [[Создание_нового_оружия|этой]] статьях.
  
 +
== От автора ==
 
Теперь если вы ни где не накосячили, всё должно работать.
 
Теперь если вы ни где не накосячили, всё должно работать.
 
Удачи вам в ваших творческих свершениях!
 
Удачи вам в ваших творческих свершениях!
И ещё, если кто найдет способ устранения вылета не дающего сделать новый аддон съемным, прошу дополните эту статью. Заранее спасибо!
+
И ещё, если кто найдет способ устранения вылета не дающего сделать новый аддон съемным, прошу - дополните эту статью.
 +
 
 +
Заранее спасибо!
 +
 
 +
== Дополнение: редактирование моделей ТЧ ==
 +
К сожалению, описанный выше способ не сработает при редактировании моделей '''ТЧ''' – по двум причинам:
 +
*в '''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]]
+
 
 +
'''Автор:''' [[Участник:Ya.D|Ya.D]]<br>
 +
'''Дополнил:''' [[Участник:Geoset|Geoset]]
  
  
 
[[Категория:Wireframe]]
 
[[Категория: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. В копии добавляем нужные кости.
Adding bones 001.jpg
3. Добавленные кости поварачиваем на -90 градусов по оси Х относительно родительской кости (далее станет видно для чего). К сожалению поворот костей в Milkshape работает как-то странно – поэтому придется вручную разместить кости так, как будто всю совокупность костей повернули.
Adding bones 002.jpg
4. С помощью Hierarchy Editor’а в копии отсоединяем старшую из созданных костей от ее родителя.
Adding bones 003.jpg
5. Всю изначальную геометрию и весь изначальный скелет в копии удаляем (таким образом должны остаться только созданные кости).
6. Открываем оригинал и подгружаем (Merge) копию.
7. В оригинале модели с помощью Hierarchy Editor’а привязываем созданные кости к нужным родителям.
Adding bones 001.jpg
Как видим, совокупность созданных костей повернулась на +90 градусов и оказалась расположена там, где требовалось. Сохраняем (+ экспортируем в .object).
8. Поочередно импортируем и пересохраняем с измененным скелетом все анимации.

После этого из полученных .object и .skl файлов в SDK как обычно собираем модель. Теперь к созданным костям спокойно можно присоединять аддоны – анимации будут корректны, аддоны будут одеваться/сниматься.

Пояснение: процесс «создание костей – отсоединение – удаление исходной геометрии и скелета – объединение моделей – присоединение костей» необходим для решения первой из указанных проблем – завязывания модели в узел. Вторая проблема решается пересохранением всех анимаций.

Важное замечание: для того, чтобы съемные аддоны работали корректно, созданным костям нужно дать стандартные имена:

  • wpn_silencer – для глушителя;
  • wpn_scope – для оптического прицела;
  • wpn_grenade_launcher и wpn_grenade – для подствольного гранатомета (возможно понадобятся еще кости – для прицела и спускового крючка).

Авторы

Автор: Ya.D
Дополнил: Geoset

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