顯示具有 week06 標籤的文章。 顯示所有文章
顯示具有 week06 標籤的文章。 顯示所有文章

2018年10月18日 星期四

week06_焦焦焦

課堂作業(1)

水果忍者



陣列讓X座標再定範圍內隨機出現



水果重複出現



用不同貼圖



程式碼:

float [] fruitX= new float[20];
float [] fruitY= new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void reborn(int i){
  fruitX[i]=random(800);  fruitVX[i]=random(6)-3;
   fruitY[i]=700; fruitVY[i]=-35;
}
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    reborn(i);
  }
}
void draw(){
  PImage imgapple = loadImage("apple.png");
  background(0);
  for(int i=0;i<20;i++){
    if( dist(mouseX,mouseY,fruitX[i],fruitY[i])<=50){
      reborn(i); continue;
    }
  image(imgapple,fruitX[i],fruitY[i],100,100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  if(fruitY[i]>700) reborn(i);
  }
}








week6

水果忍者


float fruitX, fruitY, fruitVX, fruitVY;
void setup(){
  size(800,600);
   fruitX=30;  fruitVX=3;
  fruitY=700;  fruitVY=-35;
 }
void draw(){
  background(0);
 ellipse(fruitX,fruitY,100,100);
  fruitX+=fruitVX;
  fruitY+=fruitVY;
  fruitVY+=0.98;
}


一次很多水果出來

//float fruitX, fruitY, fruitVX, fruitVY;
float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
  fruitX[i]=random(800);  fruitVX[i]=3;
  fruitY[i]=700;  fruitVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
  ellipse(fruitX[i],fruitY[i],100,100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  }

}

Week06_黃登煜

Sound套件
速寫本>>引用庫文件>>添加庫文件


範本
文件>>範例程序


要用音樂檔的話,要放對資料夾
ctrl+k


使用音樂

import ddf.minim.*; >>引用庫文件的sound
Minim minim; >>Minim物件的minim變數
AudioPlayer player; >>AudioPlayer物件的player變數


week06 作品範例展示_1

今天老師主要先展示學長學姊一些作品
然後就下來幫忙同學們做的問題
但我這組目前沒有遇到問題

Week06



水果忍者


float fruitX, fruitY, fruitVX, fruitVY;
void setup(){
  size(800,600);
   fruitX=30;  fruitVX=3;
  fruitY=700;  fruitVY=-35;
 }
void draw(){
  background(0);
 ellipse(fruitX,fruitY,100,100);
  fruitX+=fruitVX;
  fruitY+=fruitVY;
  fruitVY+=0.98;
}



一次丟很多水果出來


float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
  fruitX[i]=random(800);  fruitVX[i]=3;
  fruitY[i]=700;  fruitVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
  ellipse(fruitX[i],fruitY[i],100,100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  }
}

開始切水果了!


float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void reborn(int i){                                         
  fruitX[i]=random(800);  fruitVX[i]=(6)-3;
  fruitY[i]=700;  fruitVY[i]=-35;
}
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    reborn(i);
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
    if( dist(mouseX, mouseY, fruitX[i],fruitY[i])<=50){
      reborn(i); continue;
    }
    ellipse(fruitX[i],fruitY[i], 100,100);
    fruitX[i]+=fruitVX[i];
    fruitY[i]+=fruitVY[i];
    fruitVY[i]+=0.98;
    if(fruitY[i]>700) reborn(i);
  }
}

Week06_黃登煜

水果忍者
1. 先畫出代表水果的圓形,讓它飛~


2. 用陣列的方式製作出很多個


3.

QAQ筆記 WEEK06

目標:做出水果忍者

1.先劃出一個會做拋物線的圓形


2.再畫出很多個












程式碼如下:
float []fX=new float[20];
float []fY=new float[20];
float []fVX=new float[20];
float []fVY=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    fX[i]=random(800);  fVX[i]=3;
    fY[i]=700;  fVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
    ellipse(fX[i],fY[i],100,100);
    fX[i]+=fVX[i];
    fY[i]+=fVY[i];
    fVY[i]+=0.98;
  }
}


3.亂飛的球


程式碼如下:
float []fX=new float[20];
float []fY=new float[20];
float []fVX=new float[20];
float []fVY=new float[20];
void reborn(int i){
  fX[i]=random(800);  fVX[i]=(6)-3;
  fY[i]=700;  fVY[i]=-35;
}
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    reborn(i);
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
    if(dist(mouseX,mouseY,fX[i],fY[i])<=50){
      reborn(i);  continue;
    }
    ellipse(fX[i],fY[i],100,100);
    fX[i]+=fVX[i];
    fY[i]+=fVY[i];
    fVY[i]+=0.98;
    if(fY[i]>700)  reborn(i);
  }
}

Week_06 吳宇凡

1.
import ddf.minim.*;
Minim minim;
AudioPlay player;
void setup(){
minim = new Minim(this);
player=minim.loadFile("groove.mp3");
player.play();
}

2.
float fruitX, fruitY, fruitVX, fruitVY;
void setup() {
  size(800, 600);
  fruitX=30;    fruitVX=3;
  fruitY=700;   fruitVY=-35;
}
void draw(){
  background(0);
  ellipse(fruitX,fruitY,100,100);
  fruitX+=fruitVX;
  fruitY+=fruitVY;
  fruitVY+=0.98;
}

3.
float [] fruitX=new float[20];
float [] fruitVX=new float[20];
float [] fruitY=new float[20];
float [] fruitVY=new float20];
void setup() {
  size(800, 600);
  for (int i=0; i<20; i++) {
    fruitX[i]=random(800);    
    fruitVX[i]=3;
    fruitY[i]=700;   
    fruitVY[i]=-35;
  }
}
void draw() {
  background(0);
  for (int i=0;i<20;i++){
  ellipse(fruitX[i], fruitY[i], 100, 100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  }
}

4.
float [] fruitX=new float[20];
float [] fruitVX=new float[20];
float [] fruitY=new float[20];
float [] fruitVY=new float20];
void reborn(int i) {
  fruitX[i]=random(800);      fruitVX[i]=random(6)-3;
  fruitY[i]=700;              fruitVY[i]=-35;
}
void setup() {
  size(800, 600);
  for (int i=0; i<20; i++) {
    reborn(i);
  }
}
void draw() {
  background(0);
  for (int i=0; i<20; i++) {
    if (dist(mouseX, mouseY, fruitX[i], fruitY[i])<=50) {
      reborn(i);      continue;
    }
    ellipse(fruitX[i], fruitY[i], 100, 100);
    fruitX[i]+=fruitVX[i];
    fruitY[i]+=fruitVY[i];
    fruitVY[i]+=0.98;
    if (fruitY[i]>700)reborn(i);
  }
}

5.
float [] fruitX=new float[20];
float [] fruitVX=new float[20];
float [] fruitY=new float[20];
float [] fruitVY=new float20];
void reborn(int i) {
  fruitX[i]=random(800);      fruitVX[i]=random(6)-3;
  fruitY[i]=700;              fruitVY[i]=-35;
}
void setup() {
  size(800, 600);
  for (int i=0; i<20; i++) {
    reborn(i);
  }
  for (int i=0; i<10; i++)sword[i]=new PVector();
}
PVector [] sword = new PVector[10];
void draw() {
  background(255);
   for (int i=0; i<20; i++) {
     if (dist(mouseXmouseY, fruitX[i], fruitY[i])<=50) {
      reborn(i);   
      continue;
    }
    ellipse(fruitX[i], fruitY[i], 100, 100);
    fruitX[i]+=fruitVX[i];
    fruitY[i]+=fruitVY[i];
    fruitVY[i]+=0.98;
    if (fruitY[i]>700)reborn(i);
  }
   for (int i=9; i>0; i--) {
    sword[i].x=sword[i-1].x;
    sword[i].y=sword[i-1].y;
  }
  sword[0].x=mouseX;
  sword[0].y=mouseY;
   for (int i=1; i<10; i++) {
    line(sword[i].x, sword[i].y, sword[i-1].x, sword[i-1].y);
  }
}

week06 Steven課堂筆記

水果忍者

float fruitX,fruitY,fruitVX,fruitVY;
void setup(){
  size(800,600);
  fruitX=30; fruitVX=3;
  fruitY=700; fruitVY=-35;
}
void draw(){
  background(0);
  ellipse(fruitX,fruitY,100,100);
  fruitX+=fruitVX;
  fruitY+=fruitVY;
  fruitVY+=0.98;
}
加入陣列
float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
  fruitX[i]=random(800); fruitVX[i]=3;
  fruitY[i]=700; fruitVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
  ellipse(fruitX[i],fruitY[i],100,100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  }
}
加入隨機 無限循環
float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void reborn(int i){
  fruitX[i]=random(800); fruitVX[i]=random(6)-3;
  fruitY[i]=700; fruitVY[i]=-35;
}
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
  reborn(i);
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
  if(dist(mouseX,mouseY,fruitX[i],fruitY[i])<=50){
    reborn(i);continue;
  }
  ellipse(fruitX[i],fruitY[i],100,100);
  fruitX[i]+=fruitVX[i];
  fruitY[i]+=fruitVY[i];
  fruitVY[i]+=0.98;
  if(fruitY[i]>700) reborn(i);
  }
}

Week 06 Hankins

範例一:聲音播放

添加新的Libraries-Minim&Sound,


下載完畢



打開minim的範例程式碼,簡單做出一個聲音撥放器。





這裡要注意void draw()要寫




將音檔丟到程式碼中



成功播放聲音

範例二:Fruit Ninja

繼上禮拜的教學,先做一顆球球出來,接著畫出20顆球球,並且用到Random()函數,
自己定義reborn()函數,讓setup&draw去呼叫它。


初始一顆球


設定出20顆球球



設定了reborn()函數,當滑鼠碰到球球就重製球球,若球球的Y座標<700也重生。


最後程式碼參考:
float [] fruitX=new float[15];
float [] fruitY=new float[15];
float [] fruitVX=new float[15];
float [] fruitVY=new float[15];
void reborn(int i){
 fruitX[i]=random(800); fruitVX[i]=random(6)-3;            
 fruitY[i]=700; fruitVY[i]=random(-35)-5;  
}
void setup(){
 size(800,600);
 for(int i =0; i<15; i++){  
   reborn(i);
 }
}
void draw(){
 background(0);
 for(int i=0;i<15;i++){
  if( dist(mouseX,mouseY,fruitX[i],fruitY[i])<=50){
    reborn(i); continue;
  }
   ellipse(fruitX[i],fruitY[i],100,100);
   fruitX[i]+=fruitVX[i];
   fruitY[i]+=fruitVY[i];
   fruitVY[i]+=0.98;
   if(fruitY[i]>700) reborn(i);
 }
}

WEEK06_阿天筆記

一:
首先到速寫本裡的引用庫文件  點選添加庫文件

搜尋SOUND  下載圖中的兩項

再將音檔拉入SKETCH裡  就能讀入音檔了


二:
水果忍者遊戲 (接續上禮拜


一次跳起20顆水果

跳起的水果的Y軸會交錯變動

水果掉下去後無限重生

WEEK06_劉沛潔

11/29校外教學在台北車站


有背景音樂的程式碼
import ddf.minim.*;
Minim minim;
AudioPlayer player;
void setup(){
   minim = new Minim(this);
   player=minim.loadFile("groove.mp3");
   player.play();
}
void draw(){

}

要記得把音樂拉進去

--
畫一個圈圈讓他像水果忍者一樣的跳

float fX, fY, fVX, fVY;
void setup(){
  size(800, 600);
  fX=30; fVX=3; fY=700; fVY=-35;
}
void draw(){
  background(0);
  ellipse(fX, fY, 100, 100);
  fX+=fVX;
  fY+=fVY;
  fVY+=0.98;
}



--
多一點
float[]fX=new float[20];
float[]fY=new float[20];
float[]fVX=new float[20];
float[]fVY=new float[20];
void setup(){
  size(800, 600);
  for(int i=0; i<20; i++){
    fX[i]=random(800); fVX[i]=3;
    fY[i]=700; fVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0; i<20; i++){
    ellipse(fX[i], fY[i], 100, 100);
    fX[i]+=fVX[i];
    fY[i]+=fVY[i];
    fVY[i]+=0.98;
  }
}

week06 互動技術筆記@

播放音樂


import ddf.minim.*; //音樂用的minim函式庫(需另外加裝)

Minim minim;
AudioPlayer player; //宣告播放器名稱

void setup() {
  size(600, 800);
  minim =new Minim(this);
  player=minim.loadFile("Bongo Cat - Nyan Cat.mp3"); //讀入音檔(括號內打音檔檔名)
  player.loop(); // loop()循環播放 play()播放一次 stop()停止播放
}

void draw() {
 
}

加入函式庫

AHSU interaction week 6

水果忍者
陣列為20顆水果給予vx,vy,fx,fy值
random 隨機上拋
random(6)-3  --->  -3到3

滑鼠干擾會讓球reborn
掉下也會reborn