2019年10月3日 星期四

05161022-w4筆記

1. 球體的反彈牛頓運動
int ballX=300, ballY=300;
int vx = -2;
void setup(){
  size(700,400);
}
void draw(){
  background(255);
  ellipse(ballX,ballY, 30,30);
  ballX += vx ;
  if(ballX<0) vx = +2;
  if(ballX>700) vx = -2;
}












2. 球體個方向反彈運動+球體半徑修改(準心)
//int vx = -2, vy = +2;
//ballY += vy ;
//if(ballX<0+15) vx = +2;
//if(ballX>700-15) vx = -2;
//if(ballY<0+15) vy = +2;
//if(ballY>400-15) vy = -2;












3. 重力與加速度
//float ballX=300, ballY=300;
//float vx = -2, vy = +2;
//vy += 0.98;
//if(ballX<0+15) vx = -vx*0.9;
//if(ballX>700-15) vx = -vx*0.9;
//if(ballY<0+15) vy = -vy*0.9;
//if(ballY>400-15) vy = -vy*0.9;












4. 修改重力
//if(ballX<0+15) vx = -vx*0.9;
//if(ballX>700-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;
}












5. 馬力歐移動與上跳
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(marioY<=100) marioVY += 0.9;
  else marioY = 100;
}
void keyPressed(){
  if(keyCode==RIGHT) marioX+=3;
  if(keyCode==LEFT) marioX-=3;
  if(keyCode==UP){
    marioVY = -15;
  }
}











6. 馬力歐移動+摩擦力
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;
  }else if(keyCode==UP){
    marioVY = -15;
  }
}












7.

沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

回顧這學期的作品:  期中作業:LANDING:PLANET 賣點&特點: 炫麗的特效 物理(星球重力及降落)及粒子系統(噴射) 世界地圖可根據視角縮放 困難點: 重寫3次最終改寫成物件導向的CLASS寫法...