2019年10月3日 星期四

week04_瑋

10/3號
今天上課的內容
int ballX=300,ballY=300;
int vx=-2;
void setup(){
  size(700,400);
}
void draw(){
  background(255);
  ellipse(ballX,ballY,30,30);
  ///製作圓
  ballX+=vx;
  ballY+=vy;
  ///增加數值
  if(ballX<15)vx=+5;
  if(ballX>685)vx=-5;
  if(ballY<15)vy=+3;
  if(ballY>385)vy=-3;
  上面的是讓球可以再視窗隨機彈跳
}













第二階段
float ballX=300,ballY=300;
float vx=-2,vy=2;
///因為有小數點,所以需要用float
void setup(){
  size(700,400);
}
void draw(){
  ///background(255);
  ellipse(ballX,ballY,30,30);
  ballX+=vx;
  ballY+=vy;
  println(vy);
  vy+=0.98;
  ///重力加速度
  if(ballX<15)vx=-vx*0.9;
  if(ballX>685)vx=-vx*0.9;
  if(ballY<15)vy=-vy*0.9;
  if(ballY>385)vy=-vy*0.9;
  ///彈跳之間

第三階段
///是為了讓地面跟牆有摩擦力
float ballX=300,ballY=300;
float vx=-2,vy=2;
void setup(){
  size(700,400);
}
void draw(){
  ///background(255);
  ellipse(ballX,ballY,30,30);
  ballX+=vx;
  ballY+=vy;
  println(vx);
  
  if(ballX<15)vx=-vx*0.9;
  if(ballX>685)vx=-vx*0.9;
  if(ballY<15)vy=-vy*0.9;
  if(ballY>385){
  vy=-vy*0.9;
  //vx= vx*0.9;
  ballY=400-15;
  }
  vy+=0.98;
}
第四階段
PImage imgkuromi;
float kuromiX=100,kuromiY=100;
float kuromiVX=0,kuromiVY=0;
void setup(){
   size(500,500);
   imgkuromi= loadImage("66.png");
}
void draw(){
 background(#511462);
 rect(0,200,500,50);
 image(imgkuromi,kuromiX,kuromiY,100,100);
 kuromiX+=kuromiVX;
 kuromiY+=kuromiVY;
 if(softBrake==1)kuromiX*=0.9;
 if(kuromiY<=100){
   kuromiVY+=0.9;
 }
 else kuromiY=100;
}
int softBrake=0;
void keyReleased(){
 if(keyCode==RIGHT)softBrake=1;
 if(keyCode==LEFT)softBrake=1;
}
void keyPressed(){
 if(keyCode==RIGHT){
   kuromiVX=+10;
   softBrake=0;
 }
 else if(keyCode==LEFT){
   kuromiVX=-10;
   softBrake=0;
 }
 else if(keyCode==UP) {
   kuromiVY=-15;
   //softBrake=0;
 }
}
有很多未知的錯誤
第五階段

沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

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