Риггинг поезда штатными средствами 3ds Max

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

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



А теперь подробно расскажу, как заригил, все делается через простейшие wire формулы и Animation Constraints, самое главное - грамотная компоновка вспомогательных объектов.

На картинках ниже показано, как должны располагаться пивоты вспомогательных объектов.

а теперь сама схема иерархии вспомогательных объектов

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

-Синие - дамми цепляются друг к другу по цепочке через wire parameters по формуле percent+число, это число находится на глаз, и оно одинаково, это расстояние между осями на пути, сначала находится значение для осей между колесными парами в тележке, потом расстояние между второй и третьей осью вагона, и находится расстояние между последней осью первого вагона и первой осью второго, все это копируется для удобства в блокнот, а потом независимо от числа вогонов копипастой для соответствующих отрезков в wire.

-Зеленые - дамми тележки привязывается через position Constraints к одной из осей, его пивот должен быть на конце, этим концом собственно и будет привязка а ко второй оси он привязывается через Look-at constraints и в настройках надо снять галку с world в select upnode и выбрать тут дамии на который look-at, иначе на уклоне дамми тележки будет по Z флипаться

-Белыми - дамии на которые опирается кузов привязываются к осям через position constraints, их ориентация не имеет значения, т.к. от них нужен только пивот по центру тележек для привязки кузова.

-Черными - дамми кузова привязывается к дамми одного из центров тележек через Position Constraints, у дамми кузова пивот должен быть на одном из концов, ко второму дамми привязывается через Look-at constraints, там с local upnode все тоже самое снимается галка world, но выбрать надо в качестве upnode дамми тележки, а не центра.

Ну а сама геометрия тележек и вагонов просто линкуется к соответствующим дамми, за исключением того, что саму геометрию колесных пар надо линковать к геометрии тележек, а не к даммикам осей колесных пар, поскольку они не должны поворачиваться, они жестко фиксируются на тележках.

ПС: если что-то непонятно, то задавайте вопросы

ППС: дополнениям к методу буду только рад

ПППС: Теоретически возможно сделать риг универсальным под любую длину пути, если понять, как в wire parameters осей колесных пар перевести проценты в абсолютную величину юнитов сцены, т.е. анимируемая ось должна привязываться к процентам пути, а зависимые от нее вайриться через более сложную формулу уже по абсолютным величинам, если у кого есть идеи - поделитесь.
541 0 850 2
2
2014-07-14
нужно добавить хаотичное пошатывание вагонов:)
2014-07-14
это тоже добавлю в следующей редакции рига, следующий риг будет уже универсальным для любой длины пути, нашел более хитрый метод, т.е. после назначения рига на сплайн, его можно будет редактировать и риг не разорвет, ну и колесики закручу и покачивание будет, а также зариглю автосцепку и отработку буферов вагона
RENDER.RU