到邊界反彈
y方向萬有引力
x方向摩擦力
float ballX=100, ballY=300;
float vx = +8, vy = -8;
void setup(){
size(600,400);
}
void draw(){
//background(255);
ellipse(ballX, ballY, 30, 30);
ballX += vx ;
ballY += vy ;
if (ballX<0+15) vx = -vx*0.9;
if (ballX>600-15) vx = -vx*0.9;
if (ballY<0+15) vy = -vy*0.9;
if (ballY>400-15) {
vy = -vy*0.9;
vx = vx*0.9;
ballY=400-15;
}
vy += 0.98;
}
02 瑪莉喔,跳,落下,平滑移動,柔順停止
PImage imgMario;
float marioX=100, marioY=100;
float marioVX=0, marioVY=0;
void setup(){
size(500,500);
imgMario = loadImage("mario.png");
}
void draw(){
background(255);
rect(0,200,500,50);
image(imgMario, marioX,marioY,100,100);
marioX += marioVX;
marioY += marioVY;
if(softBrake==1) marioVX *= 0.9;
if(marioY<=100) marioVY += 0.9;
else marioY = 100;
}
int softBrake=0;
void keyReleased(){
if(keyCode==RIGHT) softBrake=1;
if(keyCode==LEFT) softBrake=1;
}
void keyPressed(){
if(keyCode==RIGHT) {
marioVX=3;
softBrake=0;
}
else if(keyCode==LEFT) {
marioVX=-3;
softBrake=0;
}if(keyCode==UP) {
marioVY = -15;
}
}



沒有留言:
張貼留言