[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Эластичное соединение
Понедельник, 25.10.2010, 00:44 | Сообщение # 1
<<< Frist-Portal >>>
Сообщений:
93
Награды:
1
нам понадобится только стандартный эффект Beam, и сам экспрешн

создаем новую (Ctrl + N) композицию(любого размера). в ней создаем два небольших слоя (Ctrl + Y), например 100*100. Первый называем leader, второй как пожелаете. И еще 1 слой, который будет у нас вместо соединительной резинки)) к нему применяем BEAM.

далее привязываем начальную точку к позиции слоя Leader

а конечную к позиции второго слоя

вставляем в Position второго слоя наш экспрешн:

Code
restLength = 20;  
damp = .95;  
leader = thisComp.layer("leader");  

fDur = thisComp.frameDuration;  
currFrame = Math.round(time / fDur);  

p2 = position.valueAtTime(0);  
v2 = 0;  
for (f = 0; f <= currFrame; f++){  
   t  = f*fDur;  
   p1 = leader.transform.position.valueAtTime(t);  
   delta = p2 - p1;  
   nDelta = normalize(delta);  
   a = 2 * nDelta * (length(delta) - restLength) * fDur;  
   v2 = (v2 - a) * damp;  
   p2 += v2;  
}  
p2

анимируем первый слой, второй будет следовать за ним.

  • Страница 1 из 1
  • 1
Поиск: