Полезное

Мы Вконтакте

Discord канал

#
Пред.
12
Аватара пользователя
Пользователь
Сообщения: 2319
и еще такой себе вопрос - ориентация костей в двигле, очень странная...

3д макс - анриал
Х = -Y (минус Y)
Y = Z
Z = X

в максе кости X-ориентированны по стандарту Denavit Hartenberg
https://en.wikipedia.org/wiki/Denavit%E ... parameters
в анриале кости -Y ориентированны - очень странный выбор разработчиков на мой взгляд, это должно быть с чем-то связанно...
может так ведут себя только максовские кости в движке?

какой стандарт в анриале??? почему выбран он?
если брать "форвард райгхт и ап" векторы то соответственно возвращает x y z в системе координат анриала. Что мягко говоря неудобно...
из-за этого постоянно у меня путаница с ориентацией костей.
https://docs.unrealengine.com/latest/IN ... index.html - слишком обобщенно...

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

чего хотелось бы - чтоб X форвард кости в движке это была ориентация на дочернюю кость... Z- главная ось вращения, Y- кросс этих осей... кароче как в DH стандарте... тогда будет удобно писать код манипулирования костями.
_________________
we need to go deeper
Последний раз редактировалось Snake 21 авг 2017, 13:42, всего редактировалось 1 раз.
Аватара пользователя
Пользователь
Сообщения: 2319
похоже когда разрабатывали скелетал мешь консультировались с майщиками. в итоге Z-ориентированные кости майки как раз импортятся в DH X-ориентированные... и это некомпетентный бред на самом деле... лучше б оригинальную FBX ориентацию сохраняли, без конвертации при импорте. Абсурд прям.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 1341
а чем важна эта ориентация?
_________________
прикрепленные картинки с radikal не смотрю.
Аватара пользователя
Пользователь
Сообщения: 2319
есть стандарт DH в робототенхнике...

когда X смотрит на следущую по иерархии кость, а Z-главная ось вращения... при таком раскладе всегда когда пишешь код знаешь какую ось брать и за что она отвечает. В итоге что имеем кости не по DH из майки импортся в DH, а в максе в котором уже этот стандарт наоброт ломается ориентация.
_________________
we need to go deeper
Последний раз редактировалось Snake 21 авг 2017, 13:45, всего редактировалось 1 раз.
Аватара пользователя
Пользователь
Сообщения: 2319
и самый простой выход это тупо смириться...
и запомнить вот эту х..ню
Х = -Y (минус Y)
Y = Z
Z = X
хотя можно было бы поковырять еще пару решений: это выставить кости в максе заранее искаженным образом (гемороина), второй тоже самое но написать скрипт который это делат... но проще смириться...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 12
///////////
Последний раз редактировалось zarKA 09 окт 2017, 16:08, всего редактировалось 1 раз.
Аватара пользователя
Пользователь
Сообщения: 2319
сам скелет создавать вмайке, в майке кости Z-ориентированный и Y-up коорды, при импорте в двигло получается вроде в DH стандарте.
Тоесть - если прям вот сильно нужно DH и кодом управлять костями, то скелет сам создавать в майке. Но не обязательно, можно и в максе но вместо максовских костей использовать пустышки... ну или просто учитывать другую ориентацию... в общем выходов много...
Это просто небольшое неудобство.
И если костями не нужно управлять или считывать их положение из кода, тогда вобще все равно на ориентацию.
например берешь 2-ую кость ноги, и точно знаешь что ее X смотрит на стопу а Z отвечает за сгиб ноги.
тоесть зная имя кости можно сразу сказать какие оси за что отвечают, в этом вся суть.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 2319
не без постороней помощи выяснилось что епики не при чем с чехардой осей координат.

по порядку:
опытным путем выяснилось что из майки оси костей експортятся так как нужно:
X остается иксом
Y и Z зависит от того как майка настроена
если Zup
то Z остается Z а Y стает -Y
тоесть просто меняется правостороняя система координат на левосторонюю

как и должно быть.

при експорте из макса этого не происходит...

и тут суперкостыль нашел:
експортим в ФБХ из макса
импортим назад в макс
експортим в анриал
ТА-ДАМ! ориентанция костей сохранилась только Y стал -Y что и нужно было.

почему это просиодит? хороший вопрос...
у меня есть предположение
в FBX в дефолте Yup левостороняя система координат FBX вьювер из FBX SDK:
Изображение


в общем при експорте из макса оси конвертируются в эту систему
но при импорте они конвертятся назад
и вот это положение почему-то сохраняется уже при следующем експорте

и теперь вопрос риторический: какой "нехороший человек" в аутодеске писал експортер ФБХ под макс? надеюсь он всю жизнь только этим експортером будет пользоваться.

если у кого-то есть свои соображения по ситуации пишите, может быть я где-то ошибаюсь.
_________________
we need to go deeper
Последний раз редактировалось Snake 24 авг 2017, 14:14, всего редактировалось 1 раз.
Аватара пользователя
Пользователь
Сообщения: 2319
такс и еще один момент есть (какой кошмар нужно больше стандартов для бога стандартов)
есть такая галочка при импорте в УЕ4
Изображение
но по какой-то причине она мне не помогала, но после тестовой модели все сработало нормально.
Изображение
Изображение
Изображение


видно что только Y флипнулся из разной правосторонней и левосторонней систем координат

и даже из моушен билдера с его Yup эта галка позволяет конвертить систвему коордо под максовский скелет
Изображение

собственно все оказалось банально

все проги експортят в FBX кординаты,
а вот настройки импорта разные как раз отвечают за преобразования ФБХ координат в те куда импортишь.

незнаю как я раньше проверял эту галку, но она работает!

в итоге ни епики ни автодески вроде как и не при делах... я уже не буду подчищать где я их х..сосил, читающим будет видно что с выводами лучше не спешить...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 2319
собственно, вопрос на этом закрыт...
_________________
we need to go deeper


Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница