앞서나가는 사냥꾼님의 이글루입니다

kshpbo830.egloos.com

포토로그



2019_1 Interactive Video Week 4












<Mary Poppins>















float xpos=400;
float ypos=100;
float poppinsDirection=1;
float cloudxpos1=-100;
float cloudxpos2=-100;
float cloudxpos3=-100;
float cloudxpos4=-100;
float cloudxpos5=-100;
float cloudxpos6=-100;
float cloudxpos7=-100;
float cloudxpos8=-100;
float cloudxpos9=-100;
float cloudxpos10=-100;

PImage marypoppins_R;

void setup() {
  size(800, 400);
  background(250, 244, 230);//lightyellow
  marypoppins_R=loadImage("marypoppins_R.png");
}

void draw() {
  background(250, 244, 230);//lightyellow
  noStroke();
  fill(218, 223, 237);
  rect(0,340, 800,60);

  //cloud1
  pushMatrix();
  translate(cloudxpos1+600, -300);
  scale(1.8);
  fill(169, 221, 209);//sky blue
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos1+=0.5;
  if (cloudxpos1>100){
    cloudxpos1=-950;
  }

  //cloud2
  pushMatrix();
  translate(cloudxpos2+540, -100);
  scale(1.5);
  fill(251,197,111);//light orange
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos2+=0.5;
  if (cloudxpos2>160){
    cloudxpos2=-850;
  }

  //cloud3
  pushMatrix();
  translate(cloudxpos3+380, -160);
  scale(1.4);
  fill(226,23,130);//pink
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos3+=0.5;
  if (cloudxpos3>320){
    cloudxpos3=-700;
  }

  //cloud4
  pushMatrix();
  translate(cloudxpos4+350, 30);
  scale(1.2);
  fill(1, 176, 169);//blue
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos4+=0.5;
  if (cloudxpos4>350){
    cloudxpos4=-600;
  }

  //cloud5
  pushMatrix();
  translate(cloudxpos5+250, -30);
  scale(1);
  fill(253,108,3);//orange
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos5+=0.5;
  if (cloudxpos5>450){
    cloudxpos5=-585;
  }
  
  //cloud6
  pushMatrix();
  translate(cloudxpos6+100, -250);
  scale(1.6);
  fill(169, 221, 209);//sky blue
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos6+=0.5;
  if (cloudxpos6>600){
    cloudxpos6=-410;
  }
  
  //cloud7
  pushMatrix();
  translate(cloudxpos7+130, 40);
  scale(1.25);
  fill(169, 221, 209);//sky blue
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos7+=0.5;
  if (cloudxpos7>570){
    cloudxpos7=-410;
  }
  
  //cloud8
  pushMatrix();
  translate(cloudxpos8-70, -100);
  scale(1.55);
  fill(251,197,111);//light orange
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos8+=0.5;
  if (cloudxpos8>770){
    cloudxpos8=-250;
  }
  
  //cloud9
  pushMatrix();
  translate(cloudxpos9-150, -200);
  scale(1.5);
  fill(1, 176, 169);//blue
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos9+=0.5;
  if (cloudxpos9>850){
    cloudxpos9=-140;
  }

  //cloud10
  pushMatrix();
  translate(cloudxpos10-320, -100);
  scale(1.8);
  fill(226,23,130);//pink
  beginShape();
  vertex(100, 200);
  bezierVertex(100, 195, 115, 190, 115, 195);
  bezierVertex(115, 180, 140, 180, 135, 185);
  bezierVertex(138, 160, 167, 160, 173, 182);
  bezierVertex(173, 180, 185, 180, 185, 192);
  bezierVertex(185, 188, 200, 195, 200, 200);
  vertex(200, 200);
  endShape(CLOSE);
  popMatrix();
  cloudxpos10+=0.5;
  if (cloudxpos10>1020){
    cloudxpos10=-35;
  }



  if (mousePressed) {
    ypos-=2;
    if (mouseX>xpos) {
      xpos+=1.5;
      poppinsDirection=1;
    } else if (mouseX<xpos) {
      xpos-=1.5;
      poppinsDirection=-1;
    } else {
      xpos=xpos;
    }
  }
  ypos+=1;
   if(ypos>200){
    ypos=200;
  }
  
  
  pushMatrix();
  translate(xpos, ypos);
  scale(0.9);
  scale(poppinsDirection,1);
  image(marypoppins_R, -50, 0);

  popMatrix();
  
}

덧글

댓글 입력 영역