Esimerkki: Auto-animaatio
1) Tee seuraava ohjelma Processing-kielessä.
// copywright: TR, 2017 int a = -550; // Laskurin alkuarvo void setup () { size(600,600); // Ikkunan koko strokeWeight(5); // Viivan paksuus frameRate(10); // Animaation nopeus } void draw () { background(0,100,255); // Sininen taivas translate(300,300); // Origo ikkunan keskelle a=a+10; // Laskuri kasvaa, liiku oikealle fill(50,255,0); // Vihreä täyttöväri rect(-300,40,600,400); // Maa auto(a,0); // Piirrä auto paikkaan (a,0) // Jos auto oikeassa reunassa if (a > 550) { a = -550; } // Siirrä auto vasempaan reunaan // saveFrame(a+".png"); // Kun tallennat, niin poista kommentti-merkit } void auto(int x,int y) { pushMatrix(); // Koordinaatisto muistiin translate(x,y); // Liikuta autoa fill(255,0,255); // Magneta täyttöväri beginShape(); // Auton kori vertex(-200, 0); vertex(-100, -100); vertex(50, -100); vertex(100, 0); vertex(200, 0); vertex(220,100); vertex(-200,100); endShape(CLOSE); // Lopetetaan auton kori fill(255,255,0); // Keltainen täyttöväri beginShape(); // Takaikkuna vertex(-180, 0); vertex(-100, -80); vertex(-80, -80); vertex(-80, 0); endShape(CLOSE); // Lopetetaan takaikkuna beginShape(); // Etuikkuna vertex(-60, 0); vertex(-60, -80); vertex(40, -80); vertex(80, 0); endShape(CLOSE); // Lopetetaan etuikkuna fill(0); // Musta täyttöväri ellipse(-120,100,100,100); // Takarengas ellipse(120,100,100,100); // Eturengas fill(100); // Harmaa täyttöväri ellipse(-120,100,50,50); // Takarenkaan keskiö ellipse(120,100,50,50); // Eturenkaan keskiö popMatrix(); // Koordinaatisto muistista }
Liikuteltavasta kohteesta kannattaa aina tehdä oma aliohjelmansa, jota on helppo liikutella laskurin avulla. Koko auto liikkuu kerralla translate(x,y); komennolla.
2) Tallenna ohjelma (PC) ja testaa se ensin.
3) Lisää void draw ( )-lohkon loppuun komento: saveFrame(a+".png"); Kun ajat ohjelman, niin animaation ruudut tallennetaan samaan paikkaan kuin on tallennettu ohjelmakin. Kun katsot kansiota, jonne ohjelma on tallennettu, niin sinun pitäisi nähdä automaattisesti tallennetut kuvat.
4) Aukaise GIMP ja avaa kaikki kuvat komennolla: TIEDOSTO | AVAA TASOINA. Painaa SHIFT näppäin pohjaan, niin voit valita kaikki kuvat yhdellä kertaa. Eli napsauta tällöin kerran hiiren vasemmalla painikkeella ensimmäisessä ja viimeisessä kuvassa. Kuvat aukeavat samaan kuvaan kukin eri tasolle. Tarvittaessa ota tallennus GIMP:n omassa tallennusmuodossa.
5) Lopuksi ota komento: TIEDOSTO | EXPORT AS ja anna tiedostolle nimi, esimerkiksi: auto.gif. Huomio: Loppupääte gif- on pakollinen tieto. Kuittaa Vie-painikkeella.
6) Laita ruksi kohtaan: As animation. Aseta tauko ruutujen välissä, esimerkiksi 1000 ms on yksi sekunti. Oikea arvo löytyy kokeilelemalla. Laita kohtaan: Ruutujen poistotapa, jos määrittelemätön: Ruutu per taso (korvaa). Laita lisäksi ruksit kohtiin: Use delay entered above for all frames ja Use disposal entered above for all frames. Paina lopuksi Vie-painiketta.
Koostettu animaatio GIF-muodossa näyttää tältä.
Processing-ohjelmoinnissa voi myös tehdä 3D-animaatioita. Tässä vielä toinen esimerkki Processing-ohjelmoimalla tehdystä animaatiosta.