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

Particle Flow Scripting

Тема в разделе "MAXScript", создана пользователем IrakliSpain, 22 дек 2009.

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

    IrakliSpain Активный участник

    С нами с:
    17.07.2009
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    5
    Всем привет.
    У меня не легкая задача на работе: Должен создать скрипт, которое даже не знаю если можно сделать.

    Макроскрипт должен прочитать из "*тхт" файла координаты (X,Y) и направления (Z), а потом создать партиклы в этих местах и направить в указанное направления. Для каждого партикла будут разные координаты и разные направления, а количество партиклов заранее неизвестно. Но это не все, макроскрипт должен повторить все для второго кадра, для третьего и т.д...
    Количество кадров тоже неизвестно. И этот "*тхт" файл должен контролировать всю анимацию.

    Можно это написать?
    Спасибо
     
  2. IrakliSpain

    IrakliSpain Активный участник

    С нами с:
    17.07.2009
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    5
    А текст приблизительно будет такой:


    FRAME1:
    Particle1.position[X:0.0 Y:0.0] Particle1.rotation[Z:90]
    Particle2.position[X:2.5 Y:0.0] Particle2.rotation[Z:90]
    Particle3.position[X:5.0 Y:0.0] Particle3.rotation[Z:90]
    Particle4.position....

    FRAME2:
    Particle1.position[X:0.0 Y:2.0] Particle1.rotation[Z:95]
    Particle2.position[X:2.5 Y:2.0] Particle2.rotation[Z:95]
    Particle3.position[X:5.0 Y:2.0] Particle3.rotation[Z:95]
    Particle4.position....

    FRAME3:
    Particle1.position[X:0.0 Y:4.0] Particle1.rotation[Z:100]
    Particle2.position[X:2.5 Y:4.0] Particle2.rotation[Z:100]
    Particle3.position[X:5.0 Y:4.0] Particle3.rotation[Z:100]
    Particle4.position....

    FRAME4:
    Particle1.position[X:0.0 Y:6.0] Particle1.rotation[Z:105]
    Particle2.position[X:2.5 Y:6.0] Particle2.rotation[Z:105]
    Particle3.position[X:5.0 Y:6.0] Particle3.rotation[Z:105]
    Particle4.position....

    FRAME5:
    Particle1.position.....
     
  3. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Можно использовать оператор Cache Disk который входит в PF Tool BOX #3 и посути он это и делает,
    но нужно будет разобраться с его форматом и загонять данные в нем.

    Также стоит глянуть KRAKATOA судя по описанию у него тоже есть очень хорошие средства совместимые с PF для работы с внешними файлами большого объема,
    есть поддержка .CSV - это значит можно будет легко загнать данные в текстовом виде.

    Можно и на скрипте сделать все для этого есть
    Просто делаеш в PF Script Operator (BirthScript если число партиклов меняется) и читаешь на каждом кадре файл.
    Задаешь для каждой частицы позицию и ориентацию.
    Да делаем проверку на локальное время и читаем файл только для текущего кадра иначе будет каждый раз обрабатывать все кадры до текущего фрейма.
    Там все просто, если что смотри примеры в хелпе.

    Формат файла: позиция-xyz и ориентация(вектор)-xyz в каждой строке, 6 цифр разделенных пробелами без буквенных префиксов.
    но при больших объемах частиц, будет не быстро.
     
  4. IrakliSpain

    IrakliSpain Активный участник

    С нами с:
    17.07.2009
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    5
    Savin Denis

    Агромное вам спасибо!
     
Модераторы: Savin Denis

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