顯示具有 99160123曾奕傑 標籤的文章。 顯示所有文章
顯示具有 99160123曾奕傑 標籤的文章。 顯示所有文章

2013年1月18日 星期五

Week11,HW09

1.有關arduino的影片
http://www.youtube.com/watch?v=jjvy_jzGlAQ

這是將Arduino做一個可以模擬打鼓的裝置,做這項東西的想法很厲害,能夠簡化電子鼓的複雜度,很適合給小朋友玩。

2.心得:
看了一些影片,Aduino根processing可以結合,作一些按鍵,或是可以用一些可變電阻來做控制方向等等的一些小遊戲,我覺得很有趣。

2012年12月25日 星期二

Week15,HW11

我們這組目前期末作業的計劃是要延續期中作品:大方快吃小方塊,期末再加上Arduino來連接四顆按鈕,上下左右來控制紅色方塊。

              
    現在我們的進度是在思考和修正如何將其中程式碼的滑鼠事件,轉換成按鈕來控制,也因為之前的程式碼只輸入了方塊只要跟著滑鼠移動而已,所以簡單許多,而這次要在加上四顆按鈕對我們來說也相對較困難,再加上要將之前遊戲執行後的問題想要一併解決,也就是有時候會一開啟就碰到大方塊就馬上遊戲結束的問題,因此也讓期末作業困難度又增加了。

2012年12月4日 星期二

Week13,HW10


int inpin1=3;
int inpin2=4;
int inpin3=5;
int inpin4=6;
int inpin5=7;


int buttonState1 = 0; // variable for reading the pushbutton status
int buttonState2 = 0;
int buttonState3 = 0;
int buttonState4 = 0;
int buttonState5 = 0;

void setup() {

pinMode(inpin1, INPUT);
pinMode(inpin2, INPUT);
pinMode(inpin3, INPUT);
pinMode(inpin4, INPUT);
pinMode(inpin5, INPUT);


}

void loop() {
  buttonState1 = digitalRead(inpin1);
  buttonState2 = digitalRead(inpin2);
  buttonState3 = digitalRead(inpin3);
  buttonState4 = digitalRead(inpin4);
  buttonState5 = digitalRead(inpin5);

  if (buttonState1 == HIGH)  tone(9, 524,4);
  else if (buttonState2 == HIGH)  tone(9, 588,4);
  else if (buttonState3 == HIGH)  tone(9, 660,4);
  else if (buttonState4 == HIGH)  tone(9, 698,4);
  else if (buttonState5 == HIGH)  tone(9, 784,4);
  else {
  noTone(9);
  }
}



2012年11月27日 星期二

Week12,HW9

作業:

int sensorPin = A0;    // select the input pin for the potentiometer
int ledPin = 13;      // select the pin for the LED
int sensorValue = 0;  // variable to store the value coming from the sensor

void setup() {
  Serial.begin(9600);
  // declare the ledPin as an OUTPUT:
  pinMode(13, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(7, OUTPUT);
}

void loop() {
  // read the value from the sensor:
  sensorValue = analogRead(sensorPin);
   Serial.println(sensorValue);
  // turn the ledPin on
  digitalWrite(13, HIGH);
  delay(50);
  digitalWrite(12, HIGH);
  delay(100);
  digitalWrite(11, HIGH);
   delay(150);
  digitalWrite(10, HIGH);
     delay(200);
  digitalWrite(9, HIGH);
   delay(250);
  digitalWrite(8, HIGH);
   delay(300);
  digitalWrite(7, HIGH);
   delay(350);
  // stop the program for <sensorValue> milliseconds:
  delay(sensorValue);        
  // turn the ledPin off:      
  digitalWrite(7, LOW);
  delay(50);
  digitalWrite(8, LOW);
  delay(100);
  digitalWrite(9, LOW);
  delay(150);
  digitalWrite(10, LOW);
  delay(200);
  digitalWrite(11, LOW);
  delay(250);
  digitalWrite(12, LOW);
  delay(300);
  digitalWrite(13, LOW);
  delay(350);
  // stop the program for for <sensorValue> milliseconds:
  delay(sensorValue);                
}

影片:

2012年11月13日 星期二

Midtern


1.其中作品程式碼

import ddf.minim.*;
Minim minim;
AudioPlayer song;
AudioPlayer song2;
AudioPlayer song3;
float x;
float y;
float easing = 0.05;
int r =8 ;
int gameCase = 1;
int startTime;
int glose=1;
int gwin=1;
float[] bugx = new float [60];
float[] bugy = new float [60];
int[] bugr = new int [60];
float[] speedx = new float [40];
float[] speedy = new float [40];
float a = 0.05;

void setup() {
size (800, 800);
startTime=millis();
smooth();
minim = new Minim(this);
song = minim.loadFile("music.mp3");
song.play();
rectMode (CENTER);
for (int i=0; i<60; i++) {
bugx[i] = random (0, width);
bugy[i] = random (0, height);
bugr[i] = int (random (0, 30));
}
x = random (0, width);
y = random (0, height);
}

void draw() {
background (100, 232, 138);
noStroke();
fill (100,100,100);
startTime=0+millis()/1000;
textSize(45);
text("Time:"+startTime, 80,80);

fill (0);
for (int i=0; i<40; i++) {
rect (bugx[i], bugy[i], bugr[i]*2, bugr[i]*2);
}
fill (255, 0,0 );
rect (x, y, r*2, r*2);
for (int i=0; i<40; i++) {
float z=(bugx[i]-x)*(bugx[i]-x)+(bugy[i]-y)*(bugy[i]-y)-(bugr[i]+r)*(bugr[i]+r);
if (z<0 && bugr[i]>r) {
gameCase = 0;
}
}
if (gameCase == 0) {
gameover();
} else {
float targetX = mouseX;
float targetY = mouseY;
x += (targetX - x) * easing;
y += (targetY - y) * easing;
for (int i=0; i<40; i++) {
move (i);
}
}
for (int i=0; i<40; i++) {
if ((bugx[i]-x)*(bugx[i]-x)+(bugy[i]-y)*(bugy[i]-y)-(bugr[i]+r)*(bugr[i]+r)<0 && bugr[i]<r) {
r = int (sqrt (r*r + bugr[i]*bugr[i]));
bugr[i] = 0;
}
}
int sum = 100;
for (int i=0; i<40; i++) {
sum += bugr[i];
}
if (sum == 100) {
win();
}
}
void move(int i) {
speedx[i] += random (-a, a);
speedy[i] += random (-a, a);
bugx[i] += speedx[i];
bugy[i] += speedy[i];
if (bugx[i]<-10) {
bugx[i] += width;
}
if (bugx[i] > width+10) {
bugx[i] -= width;
}
if (bugy[i] < -10) {
bugy[i] += height;
}
if (bugy[i] > height+10) {
bugy[i] -= height;
}
}
void gameover() {
background (0, 0, 0);
rect(800,800,0,0);
fill (255,255,255);
if(glose==1)
{
  song.close();
  minim.stop();

  stop();
  noLoop();
  minim = new Minim(this);
  song2 = minim.loadFile("music2.mp3");
  song2.play();
}
textSize (60);
textAlign(CENTER);
text ("You Lose!", width/2, height/2);
textAlign(LEFT);
text("YourTime:"+startTime, 230,330);
}
void win() {
background (0, 0, 0);
rect(800,800,0,0);
fill (255,255,255);
if(gwin==1)
{
  song.close();
  minim.stop();
  stop();
  noLoop();
  minim = new Minim(this);
 song3 = minim.loadFile("music3.mp3");
 song3.play();
}
textSize (60);
textAlign(CENTER);
text ("You Win!", width/2, height/2);
textAlign(LEFT);
text("YourTime:"+startTime, 230,330);
}




遊戲是紅色小方塊要吃黑色小方塊,只能是面積比自己小的,看玩家能在多久的時間將所有的小方塊吃完。

2012年11月12日 星期一

Week08, HW08

1.1 你之前完成了什麼

完成了讓方塊在畫面中隨意亂跑。

1.2 你今天計畫完成什麼

可以讓大球吃小球。

1.3可能會遇到的問題

大球吃小球及吃完球會變大的問題


2012年10月23日 星期二

HW7, Week07

(一)期中作品
1.新增一些素材、圖片。
2.讓蒼蠅隨處亂飛


(二)視訊processing
 

  

2012年10月16日 星期二

Week06,HW06

1.
我覺得廖子萱那一組的"小狗雷克斯誤入了繪畫世界"的小遊戲感覺很有趣,之前沒玩過類似的遊戲,覺得很有新鮮感。

2.找到一些素材




2012年10月9日 星期二

Week05,HW05

1.
void setup(){
  size(600,600);
}
float rrr=0.01;
void draw(){
   background(0,0,0);
  translate(300,300);
  rotate(rrr);rrr+=0.01;
  for(int i=0;i<16;i++){
    rotate( PI/8);
    fill(80,165,180);
    ellipse(100,20,200,40);
  }
}
2.
void setup(){
  size(600,600);
}
float rrr=0.01;
void draw(){
   background(0,0,0);
   translate(mouseX,mouseY);
   rotate(rrr);rrr+=0.01;
   for(int i=0;i<16;i++){
    rotate( PI/8);
    fill(80,165,180);
    ellipse(100,20,200,40);
  }
}

3.
打蒼蠅小遊戲

2012年10月2日 星期二

Week04, HW04

void setup()
{
  size(500,400);
  background(255);
  fill(0,0,255);
  rect(0,0,50,50);
  fill(255,0,0);
  rect(0,50,50,50);
  fill(255);
  rect(0,100,50,50);
  fill(255);
  rect(0,150,50,50);
  rect(450,0,50,50);
  rect(450,50,50,50);
}
int www=5;
void draw()
{
  if(mousePressed && mouseX<50 && mouseY<50) stroke(0,0,255);
  else if(mousePressed && mouseX<50 && mouseY<100) stroke(255,0,0);
  else if(mousePressed && mouseX<50 && mouseY<150) save("aaaa.png");
  else if(mousePressed && mouseX<50 && mouseY<200)
  {
    PImage file = loadImage("aaaa.png");
    image(file, 0,0,500,400);
  }
  else if(mousePressed && mouseX>450 && mouseY<50){
    strokeWeight(++www);
  }
  else if(mousePressed && mouseX>450 && mouseY<1000){
    strokeWeight(--www);
    if(www<2)www=2;
  }
  else if(mousePressed)  line(mouseX, mouseY, pmouseX, pmouseY);
}

2012年9月25日 星期二

Week03,HW03

3.1

void setup(){
  size(600,600);
  background(0);
}

void draw(){
  fill(33,137,255);
  rect(250,250,100,100);

  fill(255,138,60);
  ellipse(mouseX,mouseY,50,50);
}
3.2

void setup(){
  size(600,600);
}
float x=100,y=100;
void draw(){
  background(138,60,120);

  fill(30,60,90);
  ellipse(mouseX,mouseY,90,130);

  fill(255,255,0);
  ellipse(x,y,50,50);

  x=x*0.9 + mouseX*0.1;
  y=y*0.9 + mouseY*0.1;
}
3.3
今天的進度大致上還OK,老師講解的也很詳細,但這間教室的電腦十時候還是會累格。

2012年9月18日 星期二

Week02,HW02,畫圖

1.

size(600,600);
for(int i=0;i<50;i++){
  fill(random(255),random(255),random(255));
  rect(random(500),random(500),random(500),random(500));
}

2.

size(400,300);
for(int i=0;i<40;i++){
  for(int k=0;k<30;k++){
    fill(i*255/40,0,k*255/30);
    rect(i*10,k*10,10,10);
  }}
3.
size(400,300);
noStroke();
for(int i=0;i<4;i++){
  for(int k=0;k<3;k++){
    fill(150,i*255/4,k*255/3);
    ellipse(i*100+50,k*100+50,100,90);
    fill(0,0,0);
    ellipse(i*100+50,k*100+50,40,90);
  }}



2012年9月11日 星期二

week01,HW01

size(500,500);
PImage kitty;
kitty = loadImage("http://carseatcoversforgirls.us/wp-content/uploads/2012/02/hello-kitty.jpg");
image(kitty ,20,20);