La stessa animazione viene visualizzata 4 volte ma con i fotogrammi sfasati (0, 3, 6, 9).
final int numFrame = 12; final int numAnima = 4; int dim; PImage immagini[]; Animazione animazioni[]; void setup() { size(500, 500); frameRate(numFrame); immagini=new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i]=loadImage("a"+i+".gif"); dim=200; int x1=(width-2*dim)/3; int y1=(height-2*dim)/3; animazioni = new Animazione[numAnima]; animazioni[0] = new Animazione(x1, y1, 0); animazioni[1] = new Animazione(x1+dim+x1, y1, 3); animazioni[2] = new Animazione(x1, y1+dim+y1, 6); animazioni[3] = new Animazione(x1+dim+x1, y1+dim+y1, 9); } void draw() { background(255); for(int i=0; i < numAnima; i++) { animazioni[i].disegna(); animazioni[i].aggiorna(); } } class Animazione { int x, y, frame; Animazione(int nX, int nY, int nFrame) { x=nX; y=nY; frame=nFrame; } void aggiorna() { frame=frame+1; if(frame == numFrame) frame=0; } void disegna() { image(immagini[frame], x, y, dim, dim); } }