setAttr L.translateX 5;
3л Поставим два ключа на перемещение по оси Y: первый ключ - со значением 0 в первом кадре и второй - со значением 8 в 125 кадре.
setKeyframe -time l -value 0 L.translateY; setKeyframe -time 125 -value В L.translateY;
4. Зададим нашим ключам тип интерполяции flat (Tangents -> Flat) и поведение анимационной кривой на бесконечности - oscillate (Curves -> Post Infinity -> Oscillate)
5. Сгруппируем локатор сам с собой (Edit -> Group) и переименуем полученную группу в LRotate. При использовании команды group с опциями по умолчанию, опорная точка (pivot) вновь созданной группы окажется в начале координат.
group -name LRotate L; xform -os -piv 0 0 0;
6. Поставим пару ключей на атрибут поворота группы LRotate вокруг оси Y: первый со значением 0 в первом кадре, второй - со значением 360 в 33 кадре.
setKeyframe -time 1 -value 0 LRotate.rotateY; setKeyframe -time 36 -value 360 LRotate.rotateY;
7. Зададим новым ключам тип интерполяции linear (Tangents -> Linear) и поведение анимационной кривой на бесконечности так же linear (Curves -> Post Infinity -> Linear)
Итак, основа для наших дальнейших экспериментов создана. Если мы проиграем созданную анимацию, задав приличное время анимации (кадров в 1000), то увидим, как локатор «наматывает» спирали вокруг невидимого цилиндра. (Сцена emit01.mb)
Теперь подцепим локатору «хвост» - след, который он будет оставлять по пути своего движения. Самый простой путь - прикрепить к локатору источник частиц (emiter) и быстренько получить самый примитивный результат.
Поработав с параметрами источника, атрибутами частиц и добавив воздействие полей (турбулентность, гравитация и тому подобное), можно добиться очень натурального огненного или дымного следа. Но как быть, если нас интересует не хаос, а упорядоченность? Не натуральность, а искусственность?
8. Создадим пустое множество частиц, которое назовем trackParticl.es. Это можно сделать командой.
particle -name trackParticles; В окне Outliner появится объект trackParticles, но он пока не содержит ни единое частицы.
9. Теперь мы будем порождать в каждом кадре по одной частице точно в текущем положении локатора L. Для этого откроем Expression Editor и создадим следующее выражение, назвав его track-Expression
//Находим текущее положение локатора L в мировой системе координат
float $LPos[] ;
$LPos='pointPosition -w L';
// Добавляем одну частицу к множеству частиц trackParticles // в текущем положении локатора L
emit -object trackParticles
-position ($LPos[0]) ($LPos[l]) ($LPos[2]); Проиграем анимацию. Локатор оставляет четкий спиральный след из точек. Чтобы лучше видеть результат, в разделе Render Attributes редактора атрибутов множества частиц изменим тип отображения (Particle Render Type) с Points на Spheres и уменьшим радиус возникших сфер до 0.25
У нас должна получиться примерно такая картинка
Самое время скептически настроенному читателю задать законный вопрос: «А разве с помощью источника частиц нельзя получить точно такой же результат?». Конечно можно, но наберемся терпения - все лучшее еще впереди.