O código é bem simples é calculado uma variação baseado no seno de um angulo x, as ondas são formadas pelo segmento de elipses e o "barco" e representado por um retângulo com as duas quinas inferiores arredondadas, a variação é multiplicada por um valor, pois esta só vai de 0 a 1. Após isso, é so adaptar para o "barco" ficar em cima da onda e antes de seu final.
Apesar de não ficar tão realista (o barco não reage a a bruscas mudanças de atitude), o resultado é razoavelmente satisfatório.
Código-Fonte:
void setup() {
size(800, 600);
//noStroke();
}
float x = 0;
void draw() {
float y = sin(x);
x+=0.01;
stroke(0);
fill(92,51,23);
rect(x*75-475, height/2 +y*25-20, 50, 20, 0, 0, 12, 12);
noStroke();
fill(0,25,128);
ellipse(x*75, height/2 +y*25, 5, 5);
}
Nenhum comentário:
Postar um comentário