March 28, 2024, 18:45
bigger smaller reset     1020px Wide width Full width Reset   * *

Gildor's Forums

  Homepage Facebook Read news on Twitter Youtube channel Github page
Welcome, Guest. Please login or register.
Did you miss your activation email?

« previous next »
Print
Author Topic: Фича реквест для ActorX Importer  (Read 13563 times)
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« on: September 08, 2010, 16:57 »

Уважаемый Gildor, добавьте, пожалуйста, в ActorX Importer фичу "reorient bones", которая присутствует в md5importer'е.
Буду премного благодарен. Smiley
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #1 on: September 08, 2010, 17:11 »

Кости ориентированы так, как внутри Unreal Engine. Если их переориентировать (повернуть), то сразу отвалится анимация.
Вы уверены, что это именно то, что нужно? Я посмотрел на код md5importer - эта опция не делает ничего особо полезного.
Logged
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #2 on: September 08, 2010, 18:40 »

Я знаю, что анимацию потом на такие кости не накинуть. К тому же, насколько я понял, кости моделей из любой игры на движке UE всегда имеют правильную ориентацию в пространстве, ввиду чего отпадает необходимость альтернативного алгоритма генерирования костей.

Просто лично я ваш скрипт и ActorX Exporter использую для приведения в надлежащий вид моделей, которые вообще к анреаловскому движку не имеют никакого отношения. А в других играх бывает так, что все кости имеют ориентацию 0 0 0. В итоге при импорте получаю плохо сгенерированный скелет. А вот только что глянул на m5meshimporter, и там вот эта фича, "reorient bones"  - с ней скелеты к таким моделям генерируются на ура.

Ради меня одного конечно не стоит заморачиваться, но мне показалось, что код, отвечающий за кости практически идентичен в этих двух скриптах и дополнить его для ActoxXImporter - минутное дело (как мне, балбесу, не разбирающемся в этом, показалось).

Пример полезного использования данной фичи.
Модель из игры на двигле MTFramework (Lost Planet, в данном случае). Все кости имеют ориентацию 0 0 0.
« Last Edit: September 08, 2010, 18:43 by firsak » Logged
Skykila
Global Moderator
Sr. Member
*****
Posts: 266



View Profile
« Reply #3 on: September 08, 2010, 21:46 »

Есть такая проблема, и конечно было бы не плохо её исправить в скрипте, но, в принципе, это не проблема. Достаточно перевести skined модель (без выбранного скелета) в NIF и вуаля. Сам делал не раз, и как раз в MD5.
Logged

I have the simplest tastes. I am always satisfied with the best.
Oscar Wilde
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #4 on: September 08, 2010, 23:21 »

Я более детально посмотрел код md5import. Вот что он делает: для любой кости он ищет любого её потомка и протягивает кость не в том направлении, которое задано в файле, а до этого любого потомка. Если потомков несколько - то результат непредсказуем. В общем, картинка скелета будет выглядеть лучше, но на 100% этого не сделать.
Как Вы это делаете с md5meshimporter? Почему Вы хотите эту фичу именно в ActorXImporter? Как Вы планируете с ней работать, если я реализую? (пайплайн)
Logged
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #5 on: September 09, 2010, 04:25 »

Skykila
Достаточно перевести skined модель (без выбранного скелета) в NIF и вуаля.
Можно поподробнее?


gildor
Вот что он делает: для любой кости он ищет любого её потомка и протягивает кость не в том направлении, которое задано в файле, а до этого любого потомка.
Обратите внимание на втором скрине в моем предыдущем посте на вторую позвоночную кость. Ничего страшного, ИМХО. Все одно - ручной работы в разы меньше стало.

но на 100% этого не сделать
Да пусть так, как есть.

Как Вы планируете с ней работать, если я реализую? (пайплайн)
Зачем я вообще использую ActorX для других моделей? По двум причинам.
1. Генерирование нормальных костей.
2. Объединение разрозненных заскиненных мешев.



Пример на моделях из игры Tekken 6.
В этой игре творится такое вот непотребство:



Куча частей для каждой модели. Как их объединить в одну? Лично мне неизвестно как это сделать в максе стандартными средствами. На выручку здесь приходит ActorX. Экспортирую в PSK каждую часть модели, потом импортирую обратно. При импорте первого PSK генерируется хороший скелет который выглядит вот так:



Остальные части импортируются в эту же сцену. Скелет, есс-но не дублируется по 10 раз. Каждый меш, в случае совпадения имен, начинает юзать уже присутствующие в сцене кости. Это круто. После того, как я импортировал все нужные меши, можно еще раз провести процедуру экспорта/импорта, чтобы получить один цельный меш. Это все. Дальше можно приводить модель в порядок - спаивать вертексы, настраивать группы сглаживания и т.д. Ну и скелет прихорашивать, конечно.


Путем заюзывания параметров $.length, $.width, $.height, $.taper, а также поворота определенных костей в режиме Object Only (чтобы оригинальную ориентацию пивотов не затронуть), получаю следующее (работы на 15-25 минут, в зависимости от сложности скелета):


Вот сама готовая модель в формате Max8.

Вот таков мой workflow.

Ну а фича "reorient bones" необходима, когда у костей нет нормальной ориентации. Весь пайплайн будет отличаться тем, что при импорте я нажну на галочку возле этой опции.  Smiley


Teoma
Кости и так в норме  Grin, главное экспортировать их в нормальный формат и импортировать обратно, к примеру в FBX.
FBX говно. И кости, сгенерированные им, говно.
Извините.
« Last Edit: September 09, 2010, 04:32 by firsak » Logged
Teoma
Full Member
***
Posts: 220


View Profile
« Reply #6 on: September 09, 2010, 08:31 »

Teoma
Кости и так в норме  Grin, главное экспортировать их в нормальный формат и импортировать обратно, к примеру в FBX.
FBX говно. И кости, сгенерированные им, говно.
Извините.
[/quote]
Huh  Grin Тебя заботит их вид, или ты используещ эти кости o_O  Huh? Мне вот тупо интересно зачем Huh? Через кости управлять очень не удобно, нудно и долго, ввиду этого создают Rig!

Главное что делает FBX, это правильно направляет кости, ну короче то что тебе и нужно было.
« Last Edit: September 09, 2010, 08:34 by Teoma » Logged
Skykila
Global Moderator
Sr. Member
*****
Posts: 266



View Profile
« Reply #7 on: September 09, 2010, 10:35 »

Гилдору.
Вопрос такой, кости-то сориентированы кое-как, но скининг то сориентирован правильно, так что нельзя ли взять кости из него и не мучаться?

firsakу.
С NIF всё просто берёшь готовую модель со скинингом и сохраняешь её при помощи NIF по-моему в Oblivion, но выбираешь только модель без скелета. в настойках NIF экспортёра устанавливаешь NIF с анимацией, если ничего не забыл Wink то вуаля всё готово. Потом импортируешь её за нового уже из NIF'а.
В принципе, ничего сложного, но если не будет получаться поиграй с настройками экспортёра, и всё получится Wink (а то в разных версиях экспортёра настройки разные Wink)
Logged

I have the simplest tastes. I am always satisfied with the best.
Oscar Wilde
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #8 on: September 09, 2010, 13:38 »

Teoma
Тебя заботит их вид, или ты используещ эти кости
Меня заботит их вид, я использую эти кости.

Мне вот тупо интересно зачем Huh?
Зачем используют кости? В Максе нажимаешь F1, далее в поиск вбиваешь "bones"  - там подробно описывается для чего и как используются кости.
Почему меня заботит их внешний вид? Потому что я использую эти кости. Я их даже разукрашиваю, и придаю определенным костям определенную форму, чтобы было понятно какие кости для чего.
Или я должен работать с нагромождением непонятных форм и загогулин?

Через кости управлять очень не удобно, нудно и долго, ввиду этого создают Rig!
А риги в связке с чем работают? Куда попало накидываешь хелперы - и готово?

Главное что делает FBX, это правильно направляет кости, ну короче то что тебе и нужно было.
Вот что мне выдал FBX 2011:

Спасибо, не надо. В предыдущем моём посте можно посмотреть что выдает ActorX Importer, для сравнения: там на исправление скелета минут 10 нужно, для доведения до идеального состояния еще 10. Здесь - проще новый скелет вручную создать.

Skykila
Спасибо, поищу в и-нете что это за Ниф-Ниф такой.  Smiley Моддингом Обливиона не увлекался.

Вопрос такой, кости-то сориентированы кое-как, но скининг то сориентирован правильно, так что нельзя ли взять кости из него и не мучаться?
Да в скиннинге нет ориентаций никаких. Там только данные о том, насколько конкретные деформеры влияют на конкретные вертексы - и все.
« Last Edit: September 09, 2010, 13:44 by firsak » Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #9 on: September 09, 2010, 13:48 »

Короче, добавить опцию не сложно, на обсуждение ушло намного больше времени.
Сделал. Опция в Settings/Advanced. Проверяйте, то ли это.
Logged
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #10 on: September 09, 2010, 14:24 »

Короче, добавить опцию не сложно, на обсуждение ушло намного больше времени.
Сделал. Опция в Settings/Advanced. Проверяйте, то ли это.
К сожалению, опция не работает.  Sad
"Кривые" кости, как создавались в одном направлении, так и создаются.
Вот пример модели: http://www.mediafire.com/download.php?c4l8jobe3l48p1i
В архиве одна и та же модель в двух форматах - в PSK и в MD5.
У модели все кости имеют ориентацию 0 0 0.
Md5importer с включенной опцией "reorient bones" создает хороший скелет. ActorX Importer вообще никак не реагирует на эту опцию.  Sad
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #11 on: September 09, 2010, 14:28 »

Моя ошибка. Выложил неправильный файл. Пробуйте снова.
Logged
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #12 on: September 09, 2010, 14:42 »

Моя ошибка. Выложил неправильный файл. Пробуйте снова.
Sad Результат:

Все кости смотрят куда-то в сторону root.

Импортированные через MD5 выбирают одну из следующих костей в иерархии (видно на примере позвоночной кости).
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #13 on: September 09, 2010, 15:07 »

А сейчас?
Logged
firsak
Sponsor
Newbie
*
Posts: 27



View Profile
« Reply #14 on: September 09, 2010, 15:30 »

А сейчас?
Ура!
Теперь работает в точности как и в md5importer'е.
Спасибо огромное!
« Last Edit: September 09, 2010, 15:41 by firsak » Logged
Print 
« previous next »
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Leviathan design by Bloc | XHTML | CSS