#️⃣Expression Codes

ΠŸΠΎΡ‡Π΅ΠΌΡƒ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ выраТСния?

Экономия Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ быстроС созданиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ. ВыраТСния ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ дСйствия (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅, Π΄Ρ€ΠΎΠΆΠ°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ отскок). Π­Ρ‚ΠΎ сущСствСнно экономит врСмя, благодаря ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΡŽ нСобходимости ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дСйствия. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

БвязываниС Ρ€Π°Π·Π½Ρ‹Ρ… свойств.

ВыраТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для связывания Ρ€Π°Π·Π½Ρ‹Ρ… свойств, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ «ПолоТСниС» ΠΈ Β«ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚Β», Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… композициях. Ѐункция связывания ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π±Π΅Π· прописывания Ρ€Π°Π·Π½Ρ‹Ρ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ….

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² двиТСния.

ВыраТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании шаблонов Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π°. After Effects позволяСт Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ свойства, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ привязку Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ .mogrt.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ слоТных Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ управлСния нСсколькими слоями.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ «Лассо» позволяСт с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ минимального количСства элСмСнтов управлСния. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ Π΅Π³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΈ Π±Ρ‹ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… усилий ΠΏΡ€ΠΈ использовании Π΄Ρ€ΡƒΠ³ΠΈΡ… срСдств.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.

Быстро создавайтС Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ„ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ ΠΈΠ½Ρ„ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠΈ двиТСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΌΠΈΡ€Π° ΠΈ динамичСскиС гистограммы индСкса загрязнСния Ρ€Π°Π·Π½Ρ‹Ρ… стран.

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.

БохраняйтС выраТСния ΠΊΠ°ΠΊ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для использования Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… After Effects. Π’Π°ΠΌ Π½Π΅ придСтся нСсколько Ρ€Π°Π· Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅!

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ использованию Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, слСдуСт ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом. Для Π½Π°Ρ‡Π°Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги:

  1. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π‘Π»ΠΎΠΉ > Новый > Бплошной для создания сплошного слоя.

  2. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ слой Π½Π° Ρ‚Π°ΠΉΠΌΠ»Π°ΠΉΠ½Π΅ ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ S Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ свойство Β«ΠœΠ°ΡΡˆΡ‚Π°Π±Β». Π’Π΅ΠΏΠ΅Ρ€ΡŒ всС Π³ΠΎΡ‚ΠΎΠ²ΠΎ для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с выраТСниями.

  3. Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊ свойству, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π°ΠΉΠΌΠ»Π°ΠΉΠ½ ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΌΡ‹ΡˆΠΊΠΎΠΉ сСкундомСр рядом с элСмСнтом «ПолоТСниС» ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ клавишС Alt (Win) ΠΈΠ»ΠΈ Opt (Mac). After Effects присваиваСт всСм свойствам стандартныС выраТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π΄Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.

  4. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ измСнился ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс послС создания выраТСния. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства Β«ΠœΠ°ΡΡˆΡ‚Π°Π±Β» (ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ Β«100,100Β») становится красным вмСсто синСго. ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ для значСния Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

  5. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ слСва ΠΎΡ‚ сСкундомСра появился символ раскрытия. НаТмитС Π½Π° Π½Π΅Π³ΠΎ. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ само Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

    • ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° выглядит ΠΊΠ°ΠΊ Π·Π½Π°ΠΊ равСнства (=). Она Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Когда Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ, ΠΎΠ½Π° синСго Ρ†Π²Π΅Ρ‚Π°.

    • Вторая ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΏΠΎΠΊΠ°Π· значСния с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

    • Π’Ρ€Π΅Ρ‚ΡŒΡ ΠΊΠ½ΠΎΠΏΠΊΠ° с малСнькой Π·Π°Π²ΠΈΡ‚ΡƒΡˆΠΊΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π·ΠΎΠ²Π° инструмСнта «Лассо», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.

    • ЧСтвСртая ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ мСню языка Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.

  6. НаконСц, справа ΠΎΡ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ отобраТаСтся ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ transform.position выраТСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Для измСнСния выраТСния Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π΅Π³ΠΎ тСкст Π½Π° Ρ‚Π°ΠΉΠΌΠ»Π°ΠΉΠ½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Оно ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ тСкстовоС ΠΏΠΎΠ»Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, вставку, Π²Ρ‹Π±ΠΎΡ€ ΠΈ пСрСтаскиваниС тСкста. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Π²Π²ΠΎΠ΄Π° создаСтся новая строка, высоту ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. НаТмитС Π½Π° Π½Π΅Π΅ ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΡƒΠΆΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ wiggle(3,50). Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ выраТСниями.

ВыраТСния ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹

ПослС добавлСния выраТСния ΠΊ свойству ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ свойства. Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства, ΠΊΠ°ΠΊ это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ, ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для создания Π½ΠΎΠ²Ρ‹Ρ…, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. НапримСр, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ value+90 свойства Β«ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚Β» ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ слоя добавляСт 90 градусов ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ свойства Β«ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚Β» Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ двиТСнию ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€Π°ΠΌ:

НСкоторыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ нСпосрСдствСнно с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ свойства. (Π‘ΠΌ. Ρ€Π°Π·Π΄Π΅Π» Атрибуты ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ свойства (справочник ΠΏΠΎ выраТСниям).)

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ wiggle(10, 10) свойства слоя «ПолоТСниС» сохраняСт Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€Π°ΠΌ слоя, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π΅Π³ΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΠΎΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΡŽ.

ВыраТСния:

Text Expression

// Text Expression part 1
freq = 1.5;
decay = 15;
duration = 0.18;
retard = textIndex*thisComp.frameDuration*1;
t = time - (inPoint + retard);
startVal = [100,100,100];
endVal = [0,0,0];
if (t < duration){
linear(t,0,duration,startVal,endVal);
}else{
amp = (endVal - startVal)/duration;
w = freq*Math.PI*2;
endVal + amp*(Math.sin((t-duration)*w)/Math.exp(decay*(t-duration))/w);
}

// Text Expression part 2
freq = 1;
decay = 8;
duration = 0.25;
retard = textIndex*thisComp.frameDuration*1;
t = time - (inPoint + retard);
startVal = [100,100,100];
endVal = [0,0,0];
if (t < duration){
linear(t,0,duration,startVal,endVal);
}else{
amp = (endVal - startVal)/duration;
w = freq*Math.PI*2;
endVal + amp*(Math.sin((t-duration)*w)/Math.exp(decay*(t-duration))/w);
}

text bounce code

// text bounce code
delay = .05;
myDelay = delay*textIndex;
t = (time - inPoint) - myDelay;
if (t >= 0){
  freq =2;
  amplitude = 80;
  decay = 8.0;
  s = amplitude*Math.cos(freq*t*2*Math.PI)/Math.exp(decay*t);
  [s,s]
}else{
  value
}

text bounce 2

// text bounce 2
swings=1;
timeOffset=0.5;
v=valueAtTime(time-timeOffset*textIndex/textTotal)[0];
anim=2*Math.PI*v/100;
amp=easeOut(v,0,100,100,0);
Math.cos(anim*swings)*amp;

shake

// shake
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}
 
if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .1;
freq =3.1;
decay = 7;
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}

impact shake

// impact shake
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}

if (n > 0 && t < 1){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .05;
freq = 4.0;
decay = 8.0;
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}

hddr

// hddr
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}
 
if (n > 0 && t < 1){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .04;
freq = 2.0;
decay = 9.0;
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}

Gradient Controlled

// gradient controlled
sourceLayer = thisComp.layer("Transition Control 2");
sampleSize = [1,1];
samplePoint = transform.position;
colour= sourceLayer.sampleImage(samplePoint,sampleSize);
x=colour[0]*100;
[x,x]

Expression values

// expression values
n = 0;
if (numKeys  0){
n = nearestKey(time).index;
if (key(n).time  time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}
 
if (n  0){
v = velocityAtTime(key(n).time - thisComp.frameDuration10);
amp = .1;
freq =3.1;
decay = 7;
value + vampMath.sin(freqt2Math.PI)Math.exp(decayt);
}else{
value;
}

Expression Shake

// Expression Shake
Expression Shakes
Slider Control
Amplitude: 3.0
Frequency: 2.5
Decay: 5
Expression:
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}

if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = (effect("Amplitude")("Slider"))/100;
freq = effect("Frequency")("Slider");
decay = effect("Decay")("Slider");
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}

DISCORD

// DISCORD
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}

if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = effect("Position amplitude")("Slider");
freq = effect("Position frequency")("Slider");
decay = effect("Position decay")("Slider");
value + vampMath.sin(freqt2Math.PI)/Math.exp(decayt);
}else{
value;
}

da_expression

// da_expression
n=0;
if (numKeys > 0 ) {
n = nearestKey(time) .index;
if (key(n) .time > time ){
n--;
}
}
if (n == 0 ){
t = 0;
}else {
t = time - key(n) .time;
}
if (n > 0 && t < 1){
v = velocityAtTime (key(n) .time - thisComp.frameDuration/10);
amp = .04;
freq = 4.0;
decay = 10.0;
value + v*amp*Math.sin
(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}

Comma Numbers

// comma numbers
var num = effect("Slider Control")("Slider")
num = Comma(num);
[num]

function Comma(number)
{
number = '' + Math.round(number);
if (number.length > 3)
{
var mod = number.length % 3;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length / 3); i++)
{
if ((mod == 0) && (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}

bounce shake

// bounce_shake
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time;
}

if (n > 0 && t < 1){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .05;
freq = 4.0;
decay = 8.0;
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;

}

bounce thing

// bounce thing
freq = 5;
decay = 7;

n = 0;
if (numKeys > 0){
  n = nearestKey(time).index;
  if (key(n).time > time) n--;
}
if (n > 0){
  t = time - key(n).time;
  amp = velocityAtTime(key(n).time - .001);
  w = freq*Math.PI*2;
  value + amp*(Math.sin(t*w)/Math.exp(decay*t)/w);
}else
  value

Avoid opacity fade

//avoid opacity fade
Math.round(value)

Automatic Fade In - Out

// Automatic Fade In - Out
fadeDuration = .5;
fadeIn = linear(time,inPoint,inPoint + fadeDuration, 0, 100);
fadeOut = linear(time,outPoint - .5, outPoint,0,100);
fadeIn-fadeOut

Ae_Mograch

//AE expressions for mograph
//Useful After Effects Expressions
//From this tutorial:
//https://www.youtube.com/watch?v=rsW4fwscwKI&feature=youtu.be

//1. Maintain stroke width
value / length(toComp([0,0]), toComp([0.7071,0.7071])) || 0.001;

//Via Adam Plouff
//https://battleaxe.tumblr.com/post/101945073972/maintain-stroke-weight-expression 

//2. Maintain scale when parented
s = [];
ps = parent.transform.scale.value;
for (i = 0; i < ps.length; i++){
s[i] = value[i]*100/ps[i];
}
s

//Via JR Canest’s handy spreadsheet
//https://docs.google.com/spreadsheets/d/1a3ArTUHAJwVi-ObZofvz6IfrKbSGSENlaTIRTs8pAJU/edit?pageId=116871612094468624414#gid=0

//3.Time 
Time 
Or maybe
Time*50
Just time, nothing ticky

//4. 
+value

//5.
 *-1
 
//6. Posterize Time
posterizeTime(1);

//7. LoopOut
loopOut(type = β€œcycle”, numKeyframes = 0)
loopOut(type = β€œpingpong”, numKeyframes = 0)
loopOut(type = β€œoffset”, numKeyframes = 0)
//You don’t need to include β€œnumKeyframes = 0”
loopOut(type = β€œcycle”) will work too :)

//8. Reference Another Comp
comp(β€œCOMP_NAME”).layer(β€œLAYER_NAME”).
//To reference the source test from the example in the video
comp(β€œCOMP_NAME”).layer(β€œLAYER_NAME”).text.sourceText

//9. Wiggle
wiggle(freq,amp);
E.g.
wiggle(1,50);

//10. 
math.floor()

Text Animation

// Text Animation
delay = .09
;
myDelay = delay*textIndex;
t = (time - inPoint) - myDelay;
if (t >= 0){
  freq =1;
  amplitude = 200;
  decay = 5.0;
  s = amplitude*Math.cos(freq*t*2*Math.PI)/Math.exp(decay*t);
  [s,s]
}else{
  value
}
// wiki.meshalkin.art

Last updated