week08 1
//碰撞偵測: Mario vs. Pikachu
//(1)牛頓力學,動者恆動
void setup(){
size(400,400);
}
float x=200,y=200,vx=1,vy=1;
void draw(){
ellipse(x,y,10,10);
x += vx;
y += vy;
}
week08 2
//碰撞偵測: Mario vs. Pikachu
//(1)牛頓力學,動者恆動,(2)f=m*a 位置、速度、加速度
void setup(){
size(400,400);
}
float x=50,y=250,vx=2,vy=-20;
void draw(){
ellipse(x,y,10,10);
x += vx;
y += vy;
vy +=0.98;//重力加速度
}
week08 3
//碰撞偵測: Mario vs. Pikachu
//(1)牛頓力學,動者恆動,(2)f=m*a 位置、速度、加速度
void setup(){
size(400,400);
}
float x=50,y=250,vx=2,vy=-20;
void draw(){
x += vx;
y += vy;
vy += 0.98;//重力加速度
if(y>350){ //利用if判斷,看有沒有到地板 y=350位置
y=350;
vy = -vy * 0.5;//能量損耗、速度變慢
vx = vx * 0.8;
}
ellipse(x,y,10,10);
}
week08 4
//碰撞偵測: Mario vs. Pikachu
//(1)牛頓力學,動者恆動,(2)f=m*a 位置、速度、加速度
void setup(){
size(400,400);
}
float marioX=50,marioY=250,vx=0,vy=0;
void draw(){
background(108,137,255);
marioX +=vx;
fill(255,0,0); ellipse(marioX,marioY,15,20);
fill(229,119,42); rect(0,260,400,150);
}
void keyPressed(){
if(keyCode==RIGHT) vx= 2;
if(keyCode==LEFT) vx= -2;
}
week08 5
//碰撞偵測: Mario vs. Pikachu
//(1)牛頓力學,動者恆動,(2)f=m*a 位置、速度、加速度
void setup(){
size(400,400);
}
float marioX=50,marioY=250,vx=0,vy=0;
void draw(){
background(108,137,255);
marioX += vx;
marioY += vy;
fill(255,0,0); ellipse(marioX,marioY,15,20);
fill(229,119,42); rect(0,260,400,150);
}
void keyPressed(){
if(keyCode==RIGHT) vx= 2;
if(keyCode==LEFT) vx= -2;
if(keyCode==UP) vy = -20;
}
void keyReleased(){
if(keyCode==LEFT || keyCode==RIGHT) vx = 0;
}
week08 6
沒有留言:
張貼留言