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

Скрипт для вращения полигонов

Тема в разделе "MAXScript", создана пользователем -, 27 сен 2004.

Модераторы: Savin Denis
  1. Guest

    Есть сцена. На ней в плоскости по оси Х лежат 400, расположенных на одинаковом растоянии, пластинки.
    Необходимо чтобы допустим на 100-ом кадре все пластинки поднялись по оси Z, причем каждая с разной скоростью и интервалом. На 100-ом кадре все пластинки находятся по двум осям - Х и Z, т.е. все пластинки по отношению к своему началу находятся на разной высоте. Допустим что все можно анимировать вручную. Но вот дальше...
    Все пластинки должны закружиться в хаотичном порядке в воронку, напоминая торнадо, т.е. повторить Daemon-ы партиклов. Как можно преобразовать пластинки в партиклы для вихревой анимации с охранением первоначальной анимации. Причем после вихря пластинки должны составить некую надпись, что тоже можно сделать вручную. Но как заставить этих гадов в промежуточной анимации (при условии когда камера кружит вокруг всего этого хозяйства) имитировать вихрь (хаотичный). Прошу все, кто знает решение моей проблемы откликнуться.
    Заранее благодарен.
     
  2. Guest

    Спешу! Поэтому помогу немногим. Скажу, что для начала все твои пластинки нужно загнать в массив. Допустим, что все твои пластины имеют имя Plane01, plane02 и т.д. Тогда просто:

    select $plane* ---выделить все пластины
    a = selection as array ---выделенные объекты загнать в массив

    Далее обращаться можно к ним через цикл:

    set animate on
    sliderTime = 100f
    for i=1 to 400 do
    (
    a.pos.z = 100 --, где 100 высота подъема, если ввести "random 100 200", то значение будет случайным от 100 до 200
    )
    -----

    Получится анимация каждого из полигонов на случайную высоту.
    Про вращение допешу потом, если будет время.
     
  3. Guest

    Спешу! Поэтому помогу немногим. Скажу, что для начала все твои пластинки нужно загнать в массив. Допустим, что все твои пластины имеют имя Plane01, plane02 и т.д. Тогда просто:

    select $plane* ---выделить все пластины
    a = selection as array ---выделенные объекты загнать в массив

    Далее обращаться можно к ним через цикл:

    set animate on
    sliderTime = 100f
    for i=1 to 400 do
    (
    a.pos.z = 100 --, где 100 высота подъема, если ввести "random 100 200", то значение будет случайным от 100 до 200
    )
    -----

    Получится анимация каждого из полигонов на случайную высоту.
    Про вращение допешу потом, если будет время.
     
Модераторы: Savin Denis

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