今天學到一個小遊戲
利用滑鼠按下可移動圓點的座標
void setup(){
size(300,300);
}
float x=200,y=150;
void draw(){
background(255,255,255);
stroke(#b7efff);
line(100,150,x,y);
fill(#b7efff);
noStroke();
ellipse(100,150,13,13);
ellipse(x,y,13,13);
}
void mouseDragged(){
x=mouseX;
y=mouseY;
}
之後再加入float x=200,y=150; float vx=0,vy=0;if(!mousePressed){ float dx=x-100, dy=y-150; float len=sqrt(dx*dx+dy*dy); vx-=dx*(len-100)/len*0.003; vy-=dy*(len-100)/len*0.003; x+=vx;//x-=dx*(len-100)/len*0.008; y+=vy;//y-=dy*(len-100)/len; } }讓圓點被拉長時,會慢慢回復,並呈現出彈性原程式碼:void setup(){ size(300,300); } float x=200,y=150; float vx=0,vy=0; void draw(){ background(255,255,255); stroke(#b7efff); line(100,150,x,y); fill(#b7efff); noStroke(); ellipse(100,150,13,13); ellipse(x,y,13,13); if(!mousePressed){ float dx=x-100, dy=y-150; float len=sqrt(dx*dx+dy*dy); vx-=dx*(len-100)/len*0.003; vy-=dy*(len-100)/len*0.003; x+=vx;//x-=dx*(len-100)/len*0.008; y+=vy;//y-=dy*(len-100)/len; } } void mouseDragged(){ x=mouseX; y=mouseY; }
這是另一個遊戲(逗貓棒)
程式碼:
void setup(){ size(400,300); } float x=200,y=150; void draw(){ background(#002966); fill(255); rect(x,y,80,20); float dx=x-mouseX,dy=y-mouseY; x-=dx*0.1; y-=dy*0.1; }
畫面中的方塊會隨著滑鼠移動
沒有留言:
張貼留言