March 28, 2024, 15:02
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: «Дружба» Biped и скелета из md5  (Read 22299 times)
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« on: May 05, 2009, 18:06 »

Недавно задался вопросом: если скрипт md5import может при импорте в макс присоединять импортируемую модель на уже имеющийся в сцене скелет, то почему нельзя перенастроить такой «многогранный» biped для моделей?

Я покапался в линках костей. Попробывал перенастроить кости и линки biped так же как это сделано в скелете моделей mirror's edge (плюс переименование всех костей скелета), но при импорте происходит ошибка кости Spine, иногда Hips.

Чисто теоретически это возможно? И что нужно соблюсти для корректного объединения?

Спасибо.
Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #1 on: May 05, 2009, 23:20 »

Если этот вопрос ко мне - то я ничего не понял Smiley
Что за перенастройка скелета?
Вы модифицируете md5mesh, или все модификации делаете в 3ds max?
И что сделано в Mirror's Edge?

Для корректного объединения нужны одинаковые имена костей. И нужна одинаковая иерархия скелета (не обязательно должны присутствовать все кости во всех моделях, но если кость есть в нескольких моделях, то её parent-ы должны быть одинаковыми)
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #2 on: May 06, 2009, 05:58 »

Да, вопрос к вам Gildor!

В максе есть стандартный скелет Biped. Модификации я делаю в максе (переименовываю кости, меняю линки)! Я хочу привязать к Biped bvgjhnbhetve.модель. Для этого я переименовал все его кости так же как и у импортируемой модели, а так же переделал основную иерархию (до пальцев не дошёл).

При импорте возникает вот такая ошибка скрипта:
-- Unknown Property: "width" in $Biped_Object:Spine @ [-0.306038,0.011864,105339149]
Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #3 on: May 06, 2009, 11:08 »

У меня складывается ощущение (более детально по вашему сообщению я не могу провести диагностику), что у вас в сцене до импорта модельки уже есть узел сцены Spine, и это не кость. Это если ошибка в строке 196 скрипта импорта.
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #4 on: May 06, 2009, 11:35 »

Да ошибка в строке 196!

Добавка:

Но в сцене у меня действительно кости!
« Last Edit: May 06, 2009, 11:58 by Tosyk » Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #5 on: May 06, 2009, 14:45 »

Эти кости создавались этим же скриптом или как-то по-другому?
(конкретно интересует та же Spine)
Есть ли в этой сцене ещё объекты, или импорт идёт на пустую сцену?
Возможна ситуация, что в сцене есть несколько объектов с именем Spine.
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #6 on: May 06, 2009, 14:59 »

Нет, кости не создавались этим скриптом. Это встроенный в макс Biped скелет!

На скрине справа скелет Biped встроенный в макс, слева скелет импортированный с помощью скрипта!



Я удаляю скелет слева, остаётся только biped, и импортирую модель, по идее при импорте скрипт должен подцепить кости из созданного мною biped-скелета. Но этого не происходит. Ошибка на Spine как я и писал выше.

Наличие нескольких объектов с одинаковым именем в сцене исключено!

В сцене присутствует только скелет biped с переименованными костями и исправленной иерархией. Больше объектов нет.

Встроенный в макс скелет Biped имеет кость Spine.
Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #7 on: May 06, 2009, 15:08 »

Попробуйте закомментировать в скрипте строки 196 и 197 (поставьте в начале строки "--")
Code:
--    newbone.width  = bonewidth
--    newbone.height = boneheight
Они отвечают только за визуальное представление скелета. Может прокатит.
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #8 on: May 06, 2009, 17:26 »

Действительно прокатило! Спасибо. Ошибки больше не возникало.

Модель экспортируется корректно и даже привязывается модификатором скин, правда я «изучаю» данный момент на игре mirror's edge, а там модель повернута на -90 градусов по оси X, поэтому возникают трудности.

Попробую поставить скелет так же как и оригинальный (кости на свои места в модели). Плюс добавлю недостающих костей (типа оружия).

Пожже отпишусь.

Добавка:

Могу констатировать, что эксперимент прошёл успешно!

Получилось привязать Biped-скелет к импортируемой модели, и все кости ведут себя корректно. Те кости, которых не было в сцене импортер добавляет сам и встраивает в иерархию.

Вот скрин того, что получилось:



Замеченные баги:

1. Кость Root импортер почему-то игнорит и создаёт свою, заменяя эту кость в скелете biped. Я просто удалял эту новую созданную кость root и переопределял линк на старую. Иначе модель с помощью скелета никак не передвинуть/повернуть.

2. Как и было со старым скелетом почему-то странно ведут себя второстепенные кости - линкуются не к тем костям и т.д.

3. Как я уже и говорил модель изначально вместе со скелетом развёрнута на -90 градусов по оси X (хотя это всё же сказывается на времени «вытаскивания» нежели на качестве).

4. Даже не баг, а больше неприятность: практически для каждой модели нужно будет перед импортом настраивать свой собственный biped-скелет.

Пока, чего бы я не захотел в направлении моделей из игр на двигле Unreal - всё получается!

Добавка:

Вот собственно результат: маленькое тестовое видео.

И цель моя была оптимизировать подготовку конвертированных моделей для анимации.

Спасибо.
« Last Edit: May 06, 2009, 23:08 by Tosyk » Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #9 on: May 09, 2009, 07:51 »

А можно как то масштабировать модель и кости при иморте из md5 в макс?

Спасибо.
Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #10 on: May 09, 2009, 11:27 »

Нет, нельзя. Насколько я понимаю, масштабировать достаточно легко в самом максе?
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #11 on: May 09, 2009, 13:49 »

Да, то, что по-умолчанию импортирует скрипт в макс масштабировать можно, но я совмещаю импортированную модель с biped-скелетом, а вот его масштабировать нельзя.

А так как для анимации используется стандартная система координат размерность моделей должна соответствовать сцене, в ином случае возникают проблемы с уже упомянутой анимацией, а также со взаимодействием несоразмерных моделей с привязанным biped-скелетом и объектами в сцене.

Может есть какой-то способ изменять масштабирование импортируемых моделей в самом скрипте?

Добавка:

Вот еще: у меня есть скрипт импортирования моделей формата dff из GTA. Вот. Там есть такая кнопка: Import Scale, которая позволяет выбрать масштаб относительно сцены до импорта. Однако этот скрипт не позволяет при импорте совмещать модель с уже имеющимися в сцене костями.

Спасибо.
« Last Edit: May 09, 2009, 15:00 by Tosyk » Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #12 on: May 09, 2009, 15:45 »

Скрипт раработан не мной, я его только дорабатывал, чтобы все модельки нормально открывались. По идее, можно в нём сделать всё что угодно - и масштабирование, и вращение ... Другое дело - нужно ли?
При большом желании масштабирование можно сделать прямо на уровне md5 - загрузить текстовый файл, изменить всё что душе угодно и пересохранить.
Logged
Tosyk
Sr. Member
****
Posts: 366



View Profile WWW
« Reply #13 on: May 09, 2009, 16:10 »

 Shocked

Я посмотрел файл md5mesh!

К сожалению я в этих цифрах ничего не понимаю, но могу предположить, что там нужно не просто написать пару цифр, а вычислить координаты каждого объекта, вершины, полигона и кости и заменить все цифры Undecided

А функция масштабирования, как (и почему) я и написал выше была бы очень полезна!

Спасибо.
Logged

Коллекционирую игровые модели.
my blog - http://cgig.ru
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #14 on: May 09, 2009, 18:01 »

Просто я не хочу заниматься поддержкой чужого продукта. Я на этот импортёр и так потратил 2 недели Sad
Logged
Print 
« previous next »
Jump to:  

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