Резиновый эффект в Adobe After Effects

Привет всем! Иногда, в процессе создания анимации с помощью Adobe After Effects нужно добавить объекту некоей «динамики»… Так почему бы не сделать так называемый «резиновый эффект»?

Попробуем разобраться чуть конкретнее. Например, на картинке ниже:
noGym

у нас имеется маркер, который можно использовать в проекте (например) анимационной карты (пусть вас не смущают перепады цветов — все рисовалось в Adobe After Effects, после чего конвертировалось в .gif — формат). Как видно — он увеличивается в размерах, после чего … ничего. Да, красиво, но — не очень стильно 🙂 Попробуем изменить это и добавить немного динамики.

Используя данное регулярное выражение:

  1. n = 0;
    
  2. if (numKeys > 0){
    
  3. 	n = nearestKey(time).index;
    
  4. 	if (key(n).time > time){
    
  5. 		n--;
    
  6. 	}
    
  7. }
    
  8. if (n == 0){
    
  9. 	t = 0;
    
  10. 	}
    
  11. else{
    
  12. 	t = time - key(n).time;
    
  13. 	}
    
  14.  
  15. if (n > 0){
    
  16. 	v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
    
  17. 	amp = .025;
    
  18. 	freq = 2.0;
    
  19. 	decay = 3.0;
    
  20. 	value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
    
  21. }
    
  22. else{
    
  23. 	value;
    
  24. }

в свойствах объекта, отвечающих за его размер (Scale) мы получим вот такой «резиновый эффект»:
резиновый эффект

согласитесь — все стало значительно динамичнее и более стильным.

Само регулярное выражение в полном виде доступно по ссылке. Сам проект увеличения маркера очень прост, выкладывать его нет смысла.

Спасибо за внимание! Не забывайте поддержать оптимизм кликом по баннеру 😉 И в случае возникновения вопросов — пишите на почту.

P.S. Конвертирование файлов из формата .mov (в него конвертировал проект из Adobe After Effects) в .gif (что бы удобнее было вставлять в запись) делалось с помощью ресурса Convertio.co — очень удобно 🙂

P.P.S. И поиграйтесь с параметрами:
amp = .025;
freq = 2.0;
decay = 3.0;
вам понравится.