1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Флип вращения при path constraint

Тема в разделе "Анимация", создана пользователем maiden666, 19 янв 2015.

Модераторы: Артер
  1. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    Представьте себе танковую гусеницу, анимированную так - движется кривая, её позиция Х через экспрешн управляет процентажем констрейнта, и траки крутятся по ней как положено, по напрвлению движения, НО! только пока вы не повернёте в сторону, как только локальная ось повернётся в направлении отрицательного значения глобальной, вращение пойдёт в обратную сторону...если кто понял, о чём я веду речь
     
  2. INCUS

    INCUS Знаток

    С нами с:
    03.08.2010
    Сообщения:
    857
    Симпатии:
    30
    Баллы:
    29
    Если это дело не скриптовать, думаю, спасёт только движение танка( движение кривой) по пути.
    И в экспрешене, или, там, вайрить, уже процент прохождения танка по пути и вращение траков по кривой.
    Или посоображать как в экспрешн прилепить коэффициент, который компенсирует потерю скорости траков в зависимости от угла, на который повёрнут танк(кривая гусеницы)
    Синус косинус, тангенс катангенс , шашлык машлык.
     
  3. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    я обдумывал, как это сделать выражениями - надо взять локальный Х и глобальный, сделать им Дот Продакт, и если число больше нуля, значит, мы движемся в одном направлении, и берём в качестве аргумента Х, если меньше нуля - то минус Х. Представляю, как это сделать в XSI ICE, но не в Максе
     
  4. INCUS

    INCUS Знаток

    С нами с:
    03.08.2010
    Сообщения:
    857
    Симпатии:
    30
    Баллы:
    29
    Попробуй хэлпер ExposeTransform. Он может вытянуть из объекта, указанного как Expose Node в настройках этого хэлпера, локальные и глобальные показатели. Может чего соберёшь.
     
  5. igorznag

    igorznag Знаток

    С нами с:
    23.04.2010
    Сообщения:
    1.256
    Симпатии:
    173
    Баллы:
    65
    В Максе будет так:
    Код:
    xaxis=obj_tm.row1; xworld=[1,0,0]
    if dot xaxis xworld>0 then xp else -xp
    xp это дорожка-track: $Circle01.pos.controller.'X Position'
    obj_tm это дорожка-track: $Circle01.Transform
    "Circle01" это название кривой.
     
  6. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    да, работает, как и вариант с ExposeTM, но толку мало - при смене ориентации происходит скачёк
     
Модераторы: Артер

Поделиться этой страницей