1.随机地形
利用随机平滑噪声生成地形,在三位坐标系里绘制出来:
效果图:
视角会随着时间慢慢转动,颜色也会渐变。
2.惯性和引力
图中的方块跟随鼠标位置移动,但是不会壁纸给随,像是有吸引力一样绕着它转。
代码:
3.粒子间引力和运动方向描述
其中包含特性:
粒子被绘制成了三角行
粒子两两吸引
粒子被鼠标吸引
粒子太近会被连线
4.正弦运动和发光效果
void draw() {
fill(#3a3d43, 50);
noStroke();
rect(width/2, height/2, width, height);
phase = 0;
noFill();
for (float i = 0; i<= PI-PI/8; i+= PI/8) {
pushMatrix();
translate(width/2, height/2);
rotate((i));
float a = 80;
float s = 17;
strokeWeight(1);
for (int j = 0; j<15; j++) {
if (abs(sin(incr+phase)) > .75) {
a = map(abs(sin(incr+phase)), .76, .99, 100, 20);
stroke(lerpColor(#A2695B, #3a3d43, j/15.0), a);
} else {
stroke(lerpColor(#9E2713, #3a3d43, j/15.0), 100);
}
ellipse(sin(incr+phase)*150, 0, s, s);
s += 1.5;
}
stroke(255);
ellipse(sin(incr+phase)*150, 0, 16, 16);
fill(255);
ellipse(sin(incr+phase)*150, 0, 6, 6);
popMatrix();
noFill();
phase += PI/8.0;
}
incr += .03;
for (System t : trails) {
t.run();
}
}
5.流体效果和粒子