Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: X-Ray Maya tools (bardak's xray-re_tools)
GAMEINATOR forums > S.T.A.L.K.E.R. > Мастерская: создание модов для S.T.A.L.K.E.R.
Страницы: 1, 2
Trollz0r
X-Ray Maya Tools - это плагин для Майи, реализующий поддержку сталкерских форматов. Написан bardak'ом, модернизирован участниками комьюнити.

Что умеем на данный момент:
  • импорт игровых объектов (*.ogf)
  • импорт скелетной анимации внутриигрового формата (*.omf)
  • импорт детейл мешей (*.dm)
  • импорт/экспорт моделей формата редактора (*.object)
  • импорт/экспорт скелетной анимации формата редактора (.skls;*.skl)
  • экспорт анимации камеры (*.anm)
  • поддержка сглаживания в ЧН-формате

Чего пока не умеем:
  • сохранять трансформации объектов (перед экспортом геометрии сейчас нужно делать Freeze Transformations)

Где скачать
Последняя протестированная сборка от 18 марта 2018г: https://bitbucket.org/stalker/xray_re-tools...s_2018-03-18.7z
Инструкция по установке (в вики-формате)

Исходники
Репозиторий на bitbucket

Полезная информация
Вопросы и ответы
Руководство по настройке Майи для самых маленьких

Родственные темы
Вопросы касательно работы в Майе можно задать здесь.
Плагины к Blender можно найти тут.
Alex Ros
Цитата
Недостатки:
- не реализован новый алгоритм сглаживания для мешей формата ЧН/ЗП (частично это обходится ключом -nosmg в xrLC для статических и использованием ActorEditor от ЧН (или правленых .dll для АЕ ЗП) для динамических мешей)
Не совсем врубился. То есть именно экспортер тулзов некорректно сохраняет софт-хард нормали? Просто я то думал это АЕ ЗП такое вытворяет.

Цитата
...или правленых .dll для АЕ ЗП...
Речь об этом? http://www.gameru.net/forum/index.php?showtopic=46774
Или нужно что то другое? Или более новая версия? Или как?
Trollz0r
Цитата(Alex Ros @ 11.08.2014, 16:31) *
именно экспортер тулзов некорректно сохраняет софт-хард нормали?
да.
Цитата(Alex Ros @ 11.08.2014, 16:31) *
Речь об этом?
да.
Alex Ros
Цитата(RedPython @ 11.08.2014, 17:35) *
Цитата(Alex Ros @ 11.08.2014, 16:31) *
именно экспортер тулзов некорректно сохраняет софт-хард нормали?
да.
Ууух. А как же экспорт родными ПЫСплагинами будет работать в 2015? Никак?
Видимо надо установить .dll-ки с фиксом на группы сглаживания АЕ ЗП. Интересно как только это работает. Если модель из софта экспортнулас с УЖЕ сбитыми настройками софт-хард нормалей. То как фикс их восстановит? Все-таки видимо в экспортнутой из майки модели где то там сохраняется инфа где софт где хард... гхекхм... мдамс...
Trollz0r
конечно, не будут работать, они же несовместимы по версиям, плюс разрядность не та для 2014 и 2015 (они только х64).
Цитата(Alex Ros @ 11.08.2014, 16:42) *
То как фикс их восстановит?
интересно, как? насколько я помню, суть фикса в том, что сглаживание обрабатывалось как в тч, т.е. для ае с костылем экспортированные бардаком меши были корректны и эффекта граненого стакана не проявлялось. впрочем, подробности уже забыл shuffle.gif

Цитата(Alex Ros @ 11.08.2014, 16:42) *
Все-таки видимо в экспортнутой из майки модели где то там сохраняется инфа где софт где хард... гхекхм... мдамс...

ну дык ептыть. а как иначе?
drvoodoo-guru
Цитата(RedPython @ 11.08.2014, 16:18) *
Постольку поскольку исходники официальных плагинов появились, а пейсать код уже некому, считаю необходимым обозначить текущую ситуацию с плагином бардака для будущих поколений, хехе

Думаю по мах плагинам, подобное надо бы сделать.
Jesh
Есть что из нового?
Ронин
Кто бы оригинальный пысовский плагин (для ЗП, но можно и ТЧ тоже) портировал под новые версии Майи (13-15), вот было бы здорово.. happy.gif
Asterix
Выставляю на показ и пользование свою очередную разработку UI для конвертера. https://yadi.sk/d/yk87tB0SfiWFw

Сейчас это уже не просто оболочка для converter.exe, а полноценный конвертер.

На данный момент, реализовано следующее:

Наброски немного измененного интерфейса по сравнению с предыдущей UI.

Drag`n`Drop на екзешник и на само окно приложения.

Конвертирование моделек/анимаций движка в формат SDK(а так же *.dm файлов).

Отображение списка анимаций файла omf и возможность выбора анимации для одиночного вытаскивания.

Автор: Viнt@rь

Тестеры: Scarabay, Trapper023

Ссылка на репу с исходниками: https://bitbucket.org/ViHtarb/xray_re-tools

Для работы приложения необходимо .NET Framework не ниже версии 3.5.

Если нашли ошибку или есть предложение, огромная просьба писать сюда:
http://www.amk-team.ru/forum/index.php?showuser=17146
-StalkMen-
По просьбе трудящихся,
Перевёл xray-re на 2013 студию.
Р.М.А.
А может кто-нибудь добавить поддержку Maya 2017, если это не сложно, либо как это самому сделать?

Устанавливал Maya 2017 по этому посту: Сообщение #58. На третьем шаге, после установки флажка "Loaded", Maya выдаёт ошибку: "Error: line 1: Plug-in, "xrayMayaTools" was compiled against too old a version of the Maya API and is thus incompatible with the current Maya version".
autistic
Цитата(Р.М.А. @ 11.08.2016, 18:56) *
А может кто-нибудь добавить поддержку Maya 2017, если это не сложно, либо как это самому сделать?

Не столько сложно, сколько хлопотно, ведь для этого понадобится Maya 2017 и devkit к ней.
RayTwitty
Немного не по теме - нашел у себя файл xray_anm_io_v4.ms, вроде как нужен для экспорта anm из Макса. Его выкладывали вообще?
Р.М.А.
Попробовал сам переделать, вроде работает: xrayMayaTools.mll для Maya 2017
-StalkMen-
RayTwitty,
Видимо нет.
Asterix
Цитата(Alex Ros @ 11.08.2014, 16:29) *
Недостатки:
- не реализован новый алгоритм сглаживания для мешей формата ЧН/ЗП (частично это обходится ключом -nosmg в xrLC для статических и использованием ActorEditor от ЧН (или правленых .dll для АЕ ЗП) для динамических мешей)


По-моему это исправил Den Stash только для 3d max'a
Ронин
Цитата(RayTwitty @ 11.08.2016, 23:23) *
Немного не по теме - нашел у себя файл xray_anm_io_v4.ms, вроде как нужен для экспорта anm из Макса. Его выкладывали вообще?

Уже давно есть в сборке скриптов от Дэна.

Цитата(Ray @ 12.08.2016, 17:51) *
По-моему это исправил Den Stash только для 3d max'a

Да
Trollz0r
Р.М.А., очень не советую использовать 2017 версию, в ней Qt обновили, со всеми вытекающими. И ничего нового для моделера не добавили, даже баги не исправили. В жутко тормозящем интерфейсе работать очень неприятно или вообще невозможно. Лучше уж 2016 SP6.
Цитата(refuse @ 11.08.2016, 19:18) *
Не столько сложно, сколько хлопотно, ведь для этого понадобится Maya 2017 и devkit к ней.
А ещё нужно перетащить проект на 2012 студию или выше, т.к. сдк 2017 требует инклюды, отсутствующие в предыдущих версиях.
Цитата(-StalkMen- @ 14.04.2015, 14:23) *
По просьбе трудящихся,
Перевёл xray-re на 2013 студию.
Это, конечно, круто, но чому бы не закоммитить апгрейд в репо?
Ронин
Цитата(RedPython @ 14.08.2016, 06:39) *
SP6

Это что, с каждой версией все больше сервис паков, а ошибок так и остается полный вагон? huh.gif
Р.М.А.
RedPython, я на новую систему решил всё самое новое поставить, а уже потом решать, что делать с проблемами. Мне показалось, что переделать плагин под новую Maya будет быстрее, чем устанавливать другую версию Maya. Пришлось повозиться, так как студия у меня тоже 2015, но, вроде, получилось.

Цитата(RedPython @ 14.08.2016, 04:39) *
тормозящем интерфейсе

Да, заметил + изменения свойств объекта не всегда применяются, до этого была Maya 2011, работала нормально.
Р.М.А.
Я в своё время отсюда качал: maya plugins stress testing.
Asterix
Предлагаю обновить шапку и убрать голосование

https://bitbucket.org/stalker/xray_re-tools

Последние изменения converter'a от Charsi и abramcumner:
- исправлено сохранение свойств точек перехода при декомпиляции локации

- исправлено сохранение свойства game_type для статических партиклов

- исправлена смена пределов смещения\вращения костей, приводившая к "выворачиванию" /*upd 02092016*/

- добавлено раскидывание костей по bones parts /*upd 03092016*/

- добавлены поиск и удаление дубликатов glow

- исправлено некорректное вычисление вращения зон объемного звука

Ссылка на актуальную версию: https://yadi.sk/d/nivUmGybuCXSC
Trollz0r
Ray, передавай Charsi респект и что вот такие красивые графы рисовать совершенно не нужно:

У него сейчас прямой доступ к репо, и логичнее было бы скачать его через tortoisehg и заливать правки из него. Вся работа велась бы в одной ветке, без лишних коммитов и узоров.

И ещё — теперь проект под vs2008 не собирается :/
sgs-sd
Можно ли этим инструментарием корректно декомпилировать спавн ла?
Pavel_Blend
Цитата(RedPython @ 11.08.2014, 17:16) *
Не реализовано:
...
мудреный пысовский алгоритм сглаживания геометрии

А почему не удалось реализовать импорт сглаживания ЧН/ЗП? Некому это реализовать или никто не знает как реализовать.
Если никто не знает, то могу сказать как в плагине для blender'а это сделали:
Спойлер

Сами группы находятся в чанке:
0x7777 -> 0x0910 -> 0xNNNN -> 0x1013
Размер чанка: количество полигонов * 4
Группы сглаживания для одного полигона хранятся в 4 байтах.
На самом деле используются только 4 младших бита:

Первый бит:
Флаг, который указывает сглаживание ребра с индексом 0.

Второй бит:
Флаг, который указывает сглаживание ребра с индексом 1.

Третий бит:
Флаг, который указывает сглаживание ребра с индексом 2.

Четвёртый бит:
Флаг backface. Если 0, то порядок рёбер будет 0, 1, 2 (как описано выше). Если 1, то порядок рёбер будет 1, 0, 2.
То есть первые три флага будут указывать уже на другие рёбра (их порядок будет уже другим).
Trollz0r
Pavel_Blend, а в игре сглаживание такое же, какое задано в блендере? Весной была сделана попытка для майа-плагина бардака, но после компиляции карты статическая геометрия в игре выглядит сглаженной не так, как была сглажена в майе.
Pavel_Blend
RedPython, только что проверил. Да. Сглаживание статичной геометрии в игре выгядит так же как в блендере.
Вот сделал скриншот:
https://img-fotki.yandex.ru/get/197213/9401...d_4b4a88b2_orig
Trollz0r
Pavel_Blend, а тебя не смущает выделенное красным?
Shoкer
Насколько мне известно в плагинах Den-Stash-а под Макс со сглаживанием всё в порядке. (по крайнем мере никто ещё не жаловался, все косяки мы также им правили, возможно там таже проблема что и с блендером) Только я не знаю открыт ли там исходный код или нет.
Pavel_Blend
Цитата(RedPython @ 24.02.2017, 17:33) *
Pavel_Blend, а тебя не смущает выделенное красным?

это не сглаживание. Это вертексное освещение. Я ставил вертексный шейдер, чтобы быстрее компиляция прошла.
Недавно компилировал здание. Там такое же освещение. Думал сглаживание глючное, но подошёл ближе и посветил фонариком и понял, что сглаживание нормальное. И в сдк всё идентично тому, что настроено в блендере. Под этой фигурой на "террейне" тоже вертексное освещение.

Цитата(Shoкer @ 24.02.2017, 21:45) *
Только я не знаю открыт ли там исходный код или нет.

Да. Код открыт. Вот репозиторий на гитхабе: https://github.com/igelbox/blender-xray

Этот плагин к блендеру работает не хуже максовских скриптов. Поддерживается импорт моделей из слива исходников (а max-импортёр большинство отказывается импортировать, приходится пересохранять через сдк).
Trollz0r
Цитата(Pavel_Blend @ 24.02.2017, 20:42) *
это не сглаживание. Это вертексное освещение. Я ставил вертексный шейдер, чтобы быстрее компиляция прошла.
Недавно компилировал здание. Там такое же освещение. Думал сглаживание глючное, но подошёл ближе и посветил фонариком и понял, что сглаживание нормальное. И в сдк всё идентично тому, что настроено в блендере. Под этой фигурой на "террейне" тоже вертексное освещение.
Сильное заявление. Но где доказательства?

Вот тестовая моделька в OBJ: http://rgho.st/78DkjCstT

Вот так она выглядит в игре

Вот так она выглядит в редакторе

Ты можешь добиться того, чтобы в игре она выглядела максимально близко к тому, как выглядит в редакторе? Неважно, в виде статичной геометрии или скелетного меша.
Ронин
RedPython, поскольку это ЧН, то для правильного сглаживания нужно экспортировать модели ПЫС-овским экспортером под ЧН(ЗП), а в СДК не должно быть никаких фиксов. Для статики еще не ставить ключ -nosmg. Бардаковский же плагин никто не допиливал на ЧН-овский формат групп сглаживания или в случае Майи - жестких\мягких ребер?
Trollz0r
Цитата(Scarabay @ 25.02.2017, 19:18) *
поскольку это ЧН, то для правильного сглаживания нужно экспортировать модели ПЫС-овским экспортером под ЧН(ЗП), а в СДК не должно быть никаких фиксов. Для статики еще не ставить ключ -nosmg
Это мы ещё в 2011 году выяснили, и с тех пор топчемся на месте.

Есть мнение, что плагин не при чём, а сглаживание не воспринимает или ломает сам СДК.
У Pavel_Blend вроде и OGF из блендера экспортируется, так что можно проверить.

Другое предположение — СДК нужен максовский формат сглаживания.
Pavel_Blend
Цитата(RedPython @ 25.02.2017, 22:08) *
Сильное заявление. Но где доказательства?

на скриншоте есть вид этой модели в сдк 0.7. И там сдк не отображает мягкие рёбра. Там отчётливая граница.

Чтобы не было той тени, нужно было в конфиге погоды убрать ambient, но в зп погода динамическая и я не знаю как быстро это сделать для всех секций или как установить статичную погоду. Там вертексное освещение, так как компилил на драфте. И естественно оно глючно выглядит, так как там по всему ребру растянулся градиент от одного цвета к другому.
Trollz0r
Это вовсе не говорит о том, что в игре оно выглядит точно так же.

Разговаривать можно долго, но дело решит только эксперимент. Модельку я скинул, если докажешь свою правоту — станешь героем местечкового масштаба smile.gif ну а нет так нет.
Pavel_Blend
Цитата(RedPython @ 26.02.2017, 01:54) *
Это вовсе не говорит о том, что в игре оно выглядит точно так же.

ну тогда это ошибка компилятора, а не блендера.

Я вот нашёл тот уровень:
https://yadi.sk/d/3VBvf0TO3EbaNg

Фонарём светил и черноты не было. Компилировать твою модель пока не могу. Завтра как минимум.

Цитата(RedPython @ 25.02.2017, 23:18) *
Есть мнение, что плагин не при чём, а сглаживание не воспринимает или ломает сам СДК.

а можешь скинуть результат экспорта твоего детектора из майи в формате object. Я попробую его импортировать в блендер и посмотреть как майкин плагин сохранил сглаживание.

Цитата(RedPython @ 25.02.2017, 23:18) *
Другое предположение — СДК нужен максовский формат сглаживания.

В object от ЧН/ЗП нет разделения на MAX и MAYA типы сглаживания, используется единый формат. Это в ТЧ есть разделение на типы. В MAX типе есть ограничение на количество групп (32 шт.), так как использует 32 битные маски, а MAYA тип использует 32 битные индексы.
Ронин
Цитата(RedPython @ 25.02.2017, 23:08) *
Вот тестовая моделька

У тебя что-то не так со сглаживанием.
Провел тесты на Максе + скрипты Дэна, 2-й тип сглаживания. СДК 0.7 без фиксов. На скринах слева HQ Geometry выключен, на правых - включен.
1. Твоя модель как есть. В Максе выглядит отлично, а вот в игре все ужасно.


2. Группы сглаживания переделаны


Как говорится, результат на лицо. А без HQ Geometry модель покоцаная.

Проверил бы после блендера, но я с ним практически не работал и не знаю как цеплять модель к костям.
А 2010 Майя, для которой есть офф. плагин, не установлена.
Trollz0r
Pavel_Blend, два обжекта, экспортированы пысовским плагином и бардаковским: http://rgho.st/8lHgBxgYh (моделька со скелетом, если это имеет значение)
Сглаживание будет побито, конечно же.

А на основе чего ты получил данные о методах сглаживания?

Scarabay, во, это уже результат. Если дашь ссылку на скрипты Дена, то будет вообще хорошо.

Ронин
Цитата(Scarabay @ 25.02.2017, 23:18) *
Бардаковский же плагин никто не допиливал на ЧН-овский формат групп сглаживания

Ну так что, никто не может этого сделать?

Цитата(RedPython @ 26.02.2017, 11:25) *
два обжекта, экспортированы пысовским плагином и бардаковским: http://rgho.st/8lHgBxgYh (моделька со скелетом, если это имеет значение)

Можно спросить, что ты хотел с этим сделать, какой результат получить?

Цитата(RedPython @ 26.02.2017, 11:25) *
Если дашь ссылку на скрипты Дена, то будет вообще хорошо.

Например, вот - https://yadi.sk/d/Mp6jVkV25LrXI (качай ноябрьские), или эти - https://yadi.sk/d/Ulk28mqauFJrm (обновлены\добавлены некоторые скрипты, официально не публиковались)
Trollz0r
Цитата(Scarabay @ 26.02.2017, 07:53) *
Можно спросить, что ты хотел с этим сделать, какой результат получить?
Эээ... ну, хотел дать Павлу модельки, чтобы он у себя в блендере посмотрел сглаживание.
Pavel_Blend
RedPython, вот скомпилировал для ЗП твою OBJ модель. Сглаживание не менял вообще. Только изменил поворот, масштаб модели и две вершины сдвинул из-за которых были invalid faces:
Я.Диск

Сделал в виде статичной геометрии.

И смотрел твои object файлы. У них сглаживание идентичное. Похоже maya правильно экспортирует сглаживание. А ты пробовал статичную геометрию компилировать? Такие же глюки со сглаживанием как и у динамических мешей?

Цитата(RedPython @ 26.02.2017, 10:25) *
А на основе чего ты получил данные о методах сглаживания?

автор плагина для блендера смотрел исходники сдк 0.7, когда реализовывал поддержку сглаживания для ЗП. И сделал аналогичный алгоритм на питоне. А я ради интереса смотрел питоновские скрипты, чтобы понять как это работает.
Trollz0r
Цитата(Pavel_Blend @ 26.02.2017, 11:49) *
А ты пробовал статичную геометрию компилировать? Такие же глюки со сглаживанием как и у динамических мешей?
Похожие, но не такие же. От compiler shader зависимости не вижу, в 99% случаем использую дефолтный лайтмап шейдер.
Глюки статики выглядят примерно так (команда xrLC -f имякарты): https://pp.vk.me/c638618/v638618603/287554/c48zDpXDW9I.jpg

Если взять, например, деревню новичков (ЧН) из слива и закомпилить её, то в игре она будет выглядеть точно как в ЛЕ.
А если импортировать в майку, потом экспортировать, то почему-то появляются такие глюки.


А ты не мог бы проверить, как будут выглядеть эти модели в виде динамических объектов?
Нужно сделать скелет из одной кости с любым именем, привязать его к мешу, экспортнуть в OGF и подменить худ-модель детектора, например:
X:\gamedata\meshes\dynamics\devices\dev_detector_3\dev_detector_3_hud.ogf

Ронин
Цитата(RedPython @ 27.02.2017, 00:58) *
Если взять, например, деревню новичков (ЧН) из слива и закомпилить её, то в игре она будет выглядеть точно как в ЛЕ.
А если импортировать в майку, потом экспортировать, то почему-то появляются такие глюки.

В какой версии Майи и с какими плагинами? Знаю, что при импорте пысовских моделей (которые сделаны для ЗП\ЧН) плагинами Бардака, сглаживание будет убито и его нужно полностью переделывать.
Trollz0r
В любой, с любыми.
Shoкer
Может кому пригодится:

Вот тут кусок кода из xrLC для работы со сглаживанием статичной геометрии. (без -nosmg)
http://pastebin.com/PJdPvde5

Также стоит заметить что флаг flSGMask (это я так понял те самые маски сглаживания) по сути полноценно не используется в СДК более.
Во всём коде движка и редакторов есть только 2 .cpp-файла (не считая плагинов макса), которые его юзают:

1) Вот здесь код из СДК ЗП для загрузки исходной модели в СДК (LoadMesh)

Код
    m_SmoothGroups = xr_alloc<u32>(m_FaceCount);
    MemFill32(m_SmoothGroups, m_Flags.is(flSGMask) ? 0 : u32(-1), m_FaceCount);
    u32 sg_chunk_size = F.find_chunk(EMESH_CHUNK_SG);
    if (sg_chunk_size)
    {
        VERIFY(m_FaceCount*sizeof(u32)==sg_chunk_size);
        F.r(m_SmoothGroups, m_FaceCount*sizeof(u32));
    }


2) Код для генерации V-нормалей:
http://pastebin.com/jdHLAk1M (функция GenerateVNormals), так вот он также не использует флаг flSGMask, хотя ниже есть закоментированная старая версия функции где этот флаг ещё поддерживался.

Правда если я правильно всё понял, то flSGMask это как раз Максовское сглаживание.

В игре кода для считывания сглаживания пока не нашёл, или он называется как то по другому, или он там не нужен.
macron
Оказывается, для конвертера наконец вышел фикс выгибания костей. Такая бага была, что у моделей после конвертера суставы выворачивались "коленками назад". Только сам экзешник вроде надо из исходников там собирать, последний готовый за 2015 год, совсем старый. wink_old.gif

https://bitbucket.org/stalker/xray_re-tools/commits/all
Asterix
macron, вот тут последняя собранная сборка converter 01032017.7z
https://yadi.sk/d/nivUmGybuCXSC
macron
Цитата(Ray @ 30.03.2017, 11:26) *
вот тут последняя собранная сборка converter 01032017.7z

Крутотень! Сразу пара замечаний:

1. На XP не запускается, нужно сначала пропатчить экзешник через winpp20 отсюда. Тогда запускается.

2. Попробовал сконвертировать модель кровососа из ТЧ. ТЧ-Акторедитор модель сконвертированную 2015-ым конвертером открывает нормально. Модель сконвертированную этим (01032017) открывает с ошибкой "Motions has different version. Load failed." Сама модель есть, а свиток "Motions" пустой.
Asterix
macron, на xp не запускается, потому что собрано на mvs 2015
RayTwitty
Цитата(macron @ 30.03.2017, 16:25) *
2. Попробовал сконвертировать модель кровососа из ТЧ. ТЧ-Акторедитор модель сконвертированную 2015-ым конвертером открывает нормально. Модель сконвертированную этим (01032017) открывает с ошибкой "Motions has different version. Load failed." Сама модель есть, а свиток "Motions" пустой.

Тоже самое было с СДК от ЛА. Скорее всего формат поменяли или просто взяли от ЧН/ЗП.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.