U raljama programiranja
Još od osnovne ili srednje škole neki od nas su više voleli matematiku, a neki likovno. Bilo je i onih koji su voleli samo fizičko, ali oni i njihova oblast delovanja nisu današnja tema. Elem, oni koji su voleli matematiku otišli su na programiranje, a mi koji smo voleli da crtamo izabrali smo put video produkcije i animacije. Adobe After Effects nam je omogućio da naša ljubav postane pokretna, da crtanje animiramo, da pokrenemo svoju maštu. Međutim, poslednjih godina nam Adobe preko ExtendScript-a, pa sve do pravog programiranja i JavaScript-a, polako otvara polje od kog smo kao mali možda i bežali. Sakrivali se iza Keyframe-ova i Copy Paste-ovanja objekata kako bismo dobili složenu i glatku animaciju.
Danas u After Effects-u animatori imaju dva načina da primene programiranje. Hteli – ne hteli moramo se ohrabriti i zaploviti u tu oblast, jer je programiranje budućnost svega, pa i animacije. Jedna od upotreba programiranja u After Effects-u je da možemo na svaki parametar sloja postaviti Expressions. To je Code koji nam omogućava da vrednosti parametra pa i sam parametar podignemo na jedan viši nivo.
U našem slučaju, parametar je pozicija drugog sloja koji svoje vrednosti dobija od prethodnog sloja kroz matematičku funkciju da je ta vredost umanjena u vremenu za redni broj sloja (index). Ovo na prvi pogled deluje zastrašujuće, ali na ovaj način možemo koristiti razne matematičke funkcije da bismo odredili vrednosti bilo kog parametra nekog sloja.
Nije to sve baš toliko strašno
Da ne bismo odmah skočili na matematiku i programiranje Adobe se pobrinuo i za nas koji nismo od malena voleli tu oblast. Grafički interface i svima draga nam opcija rada sa mišem omogućavaju da povezujemo patametre iako nisu istog tipa. Tako možemo koristiti vrednosti rotacija da bismo upravljali vrednostima pozicije ili boje. Pitate se kako to može kada ti parametri nisu istog tipa i formata. Tu opet na scenu stupa matematika, ali nećemo sada o tome.
Kada u Expression editoru na bilo kom parametru poželimo da upišemo neki Code imamo veliku pomoć Pick Whip-a, male spirale koja nam omogućuje da povezujemo parametre. Sada više ne moramo da kucamo Code, već nam se automatski ispisuje code koji sadrži vrednost koja je preuzeta sa drugog parametra. Ta vrednost sada odgovara formatu parametra na koji ga prenosimo. Ako apsolutne vrednosti i nisu adekvatne između dva parametra, uvek možemo koristiti matematiku iz petog osnove i tu vrednost pomnožiti, podeliti ili sabrati sa nekim faktorom X.
Znajući da su animatori bežali od programiranja, Adobe se potrudio da još više pojednostavi proces pisanja koda. Tako u Expression editoru imamo padajući meni, mali kružić sa trouglićem u sebi, sa funkcijama i metodima iz Java Script-a, koji nam omogućava da pronađemo onu metodu koja nam je potrebna za našu animaciju.
Na ovaj način dovoljno nam je da poznajemo onovne principe JavaScript-a i njegove primene u Adobe After Effects-u, pa da možemo izvlačiti maksimum iz svake animacije koju zamislimo. Preko Expression-a koristimo metode u jednom koraku u jednoj JavaScript liniji za koje bi nam trebalo više keyframe-ova ili efekata u klasičnom načinu animacije. Tako ćemo, na primer, ako želimo da nešto ponavljamo, koristiti Loop. A ako želimo da random menjamo vrednost nekog parametra koristićemo metodu Wiggle (A, B) gde je A vrednost frekvencije oscilovanja, a B amplituda. Tako zvezdica na nebu može menjati sjaj:
wiggle (5, 30);
Ako ovaj Code postavimo na Opacity parametar sloja zvezdice, ona će pet puta u sekundi menjati opacity 30%.
Ne odlučujemo mi
Zašto bismo koristili JavaSript i Expression kada možemo svaku animaciju da uradimo i sa keyframe-ovima kako smo i do sada radili? Kada koristimo keyframe-ove, mi smo konačno definisali njihove vrednosti. Da bismo uradili bilo kakvu ispravku moramo se vratiti i prepraviti svaki keyframe. To nije problem ako imamo 10 – 15 keyframe-ova. Ali šta ako imamo stotine njih koji su uz to još i uzajamno povezani? Onda bi programeri rekli “vrednosti nikada ne hard coding-ujemo”. Uvek koristimo promenljive kako bismo mogli da lako promenimo vrednosti parametara kada nam reditelj ili producent kažu da je neka animacija spora ili brza. Upravo upotreba JavaScripta u Expression nam omogućava da parametri imaju promenljive vrednosti. Sve što radimo radimo u timu i moramo biti spremni na brze i konstantne promene.
Programiram da bi mi bilo lakše
Druga oblast u After Effects-u u kojoj možemo da koristimo JavaScript je Scripting. Ova oblast se odnosi na pisanje malih programa, Scripts-a, koji imaju svoju extenziju .jsx i koji su već prisutni u After Effects-u. Samim instaliranjem After Effects-a, mi dobijamo neke Scripte kojima olakšavamo rad. Suština Scripti je da ono što je repetitivno, manuelno i dosadno u After Effectsu-u, obavimo klikom na jedno ili par dugmića.
Pokretanjem ovih Scripti otvara nam se novi prozor u zavisnosti od funkcije Scripte i onda lako i brzo obavljamo radnje za koje bismo u After Effects-u potrošili ko zna koliko vremena.
Možda kada pomenemo programiranje to zvuči jako daleko i strano u odnosu na After Effects i animaciju ili Composition, ali to je samo jedna alatka u nizu alata koju bi trebalo da naučimo da koristimo svaki put kada bi postojao benefit pre svega za krajnjeg korisnika, ali i nas kao nekoga ko svaki dan obavlja posao animatora ili video dizajnera.
Autor: Ivan Đorđević, diplomirani Filmski i televizijski montažer