水果拋物線
float fruitX, fruitY, fruitVX, fruitVY;
void setup(){
size(800,600);
fruitX=30; fruitVX=3;
fruitY=700; fruitVY=-35;
}
void draw(){
background(0);
ellipse(fruitX, fruitY, 100,100);
fruitX+=fruitVX;
fruitY+=fruitVY;
fruitVY+=0.98;
}
2.
很多顆平行拋物線
//float fruitX, fruitY, fruitVX, fruitVY;
float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void setup(){
size(800,600);
for(int i=0;i<20;i++){
fruitX[i]=random(800); fruitVX[i]=3;
fruitY[i]=700; fruitVY[i]=-35;
}
}
void draw(){
background(0);
for(int i=0;i<20;i++){
ellipse(fruitX[i], fruitY[i], 100,100);
fruitX[i]+=fruitVX[i];
fruitY[i]+=fruitVY[i];
fruitVY[i]+=0.98;
}
}
3.
float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void reborn(int i){
fruitX[i]=random(800); fruitVX[i]=random(6)-3;
fruitY[i]=700; fruitVY[i]=-35;
}
void setup(){
size(800,600);
for(int i=0;i<20;i++){
reborn(i);
}
}
void draw(){
background(0);
for(int i=0;i<20;i++){
if(dist(mouseX, mouseY,fruitX[i],fruitY[i])<=50){
reborn(i); continue;
}
ellipse(fruitX[i], fruitY[i], 100,100);
fruitX[i]+=fruitVX[i];
fruitY[i]+=fruitVY[i];
fruitVY[i]+=0.98;
if(fruitY[i]>700) reborn(i);
}
}
沒有留言:
張貼留言