xxxxxxxxxx
var and, v, s, t, r, a, m
const pls = 5
const cred=100, cgreen=00, cblue=100
function setup() {
createCanvas(900,900)//windowWidth, windowHeight);
background(255,105,180);
noStroke(0)
and = 0
v = 0
s = 0
t = 0
r = 0
a = 0
m = 0
stroke(255)
fill(0)
slider = createSlider(0, 255, 100);
slider.position(10, -50);
slider.style('width', '1000px');
}
function draw() {
background(65,105,225)
if (keyIsDown(81)) {
and += 0.05
}
if (keyIsDown(69)) {
and -= 0.05
}
if (keyIsDown(87)) {
a = pls
} else {
if (keyIsDown(83)) {
a = -pls
} else(a = 100)
}
if (keyIsDown(68)) {
m = -pls
} else {
if (keyIsDown(65)) {
m = pls
} else {
m = 0
}
}
v += a
s += m
s *= 0.9
v *= 0.9
jmh=mouseY
r += v / 10 * cos(and) - s / 10 * sin(and)
t -= s / 10 * cos(and) + v / 10 * sin(and)
translate(width/2, height/2)
bg()
for (j = 100; j > -1; j -= 2.5) {
beginShape()
vertex(-width/2, height/2)
for (i = -width/6; i <=width/6+10; i += 1) {
this.x=i*3
this.y=noise((t + i*(j/30+1) * cos(and) + cos(and + PI / 2) * j*5) / 100, (r + i*(j/30+1) * sin(and) + j*5 * sin(and + PI / 2)) / 100)*300/(j/25)
vertex(this.x,this.y)
}
vertex(width/2, height/2)
endShape()
}
}
function bg() {
for (this.ii = 0; this.ii < 300; this.ii += 20) {
fill(cred, cgreen, cblue, 2 * (300 - this.ii) / 300)
stroke(0, 0)
this.y = 50
rect(-width / 2, this.y - this.ii, width, 100)
}
fill(0)
stroke(cred, cgreen, cblue)
}
function px(a,b){
return a+(width/2-a)*stre(b)
}
function py(a,b){
return height-(b+(height/2-b)*stre(b))
}
function stre(c){
if(c<-slider.value()){return(0)}
return 1-slider.value()/(c+slider.value())
}