課堂作業一
//sketch_Libary_Manage Libaries
import processing.video.*;
//有視訊鏡頭的
Capture video;
Movie movie;//沒鏡頭的版本
void setup(){
size(640,960);//常見的視訊風格
video=new Capture(this,640,480);
video.start();//打開視訊
movie = new Movie(this,"street.mov");
movie.loop();
}
void draw(){
if(video.available()) video.read();
image(video,0,480);
if(movie.available()) movie.read();
image(movie,0,0);
}
//電腦圖學會圖時,會設定camara的相關係數
import processing.video.*;
Movie movie;
void setup(){
size(600,400,P3D);
movie = new Movie(this,"street.mov");
movie.loop();
}
void draw(){
background(128);
camera(mouseX,mouseY,120,300,200,0, 0,1,0);
//很多參數eyeX,eyeY,eyeZ,centerX,centerY,centerZ,upX,upY,upZ
if(movie.available()) movie.read();
image(movie,0,0);
}
課堂作業三
//先加貼圖再加進去
PImage img;
void setup(){
size(400,400,P3D);
img= loadImage("chessboard.png");
textureMode(NORMAL);
}
void draw(){
background(128);
beginShape();
texture(img);
vertex(40, 80, 0, 0);
vertex(320, 20, 1, 0);
vertex(380, 360, 1, 1);
vertex(160, 380, 0, 1);
endShape();
}
課堂作業四
PImage img;
void setup(){
size(400,400,P3D);
img= loadImage("chessboard.png");
textureMode(NORMAL);
}
void draw(){
camera(mouseX,200,mouseY,mouseX,200,mouseY-10,0,1,0);
background(128);
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(400,0,0,1,0);
vertex(400,400,0,1,1);
vertex(0,400,0,0,1);
endShape();
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(0,400,0,1,0);
vertex(0,400,400,1,1);
vertex(0,0, 400,0,1);
endShape();
}
課堂作業五
//修改自week03_4
//利用方向鍵來移動主角
PImage img;
void setup(){
size(400,400,P3D);
img= loadImage("chessboard.png");
textureMode(NORMAL);
}
float x=200,y=200,z=200,angle=180;
void keyPressed(){
if(keyCode==LEFT) angle++;
if(keyCode==RIGHT) angle++;
if(keyCode==UP){
x+=cos(radians(angle));
z+=sin(radians(angle));
}
if(keyCode==DOWN){
x-=cos(radians(angle));
z-=sin(radians(angle));
}
}
void draw(){
camera(x,y,z,x+cos(radians(angle)),y,z+sin(radians(angle)),0,1,0);
background(128);
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(400,0,0,1,0);
vertex(400,400,0,1,1);
vertex(0,400,0,0,1);
endShape();
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(0,400,0,1,0);
vertex(0,400,400,1,1);
vertex(0,0, 400,0,1);
endShape();
}
作業五改良
//修改自week03_4
//利用方向鍵來移動主角
PImage img;
void setup(){
size(400,400,P3D);
img= loadImage("chessboard.png");
textureMode(NORMAL);
}
float x=200,y=200,z=200,angle=180;
void keyPressed(){
if(keyCode==LEFT) angle--;
if(keyCode==RIGHT) angle++;
if(keyCode==UP){
x+=cos(radians(angle));
z+=sin(radians(angle));
}
if(keyCode==DOWN){
x-=cos(radians(angle));
z-=sin(radians(angle));
}
}
void draw(){
if(keyPressed) keyPressed();
camera(x,y,z,x+cos(radians(angle)),y,z+sin(radians(angle)),0,1,0);
background(128);
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(400,0,0,1,0);
vertex(400,400,0,1,1);
vertex(0,400,0,0,1);
endShape();
beginShape();
texture(img);
vertex(0,0,0,0,0);
vertex(0,400,0,1,0);
vertex(0,400,400,1,1);
vertex(0,0, 400,0,1);
endShape();
}
課堂作業六
//把今天教的都加進來
import processing.video.*;
Movie movie;
PImage img;
void setup(){
size(400,400,P3D);
movie = new Movie(this,"street.mov");
movie.loop();
img= loadImage("chessboard.png");
textureMode(NORMAL);
video=new Capture(this,640,480);
video.start();
}
Capture video;
void draw(){
camera(200,200,200,200+cos(radians(frameCount)),200,200+sin(radians(frameCount)),0,1,0);
background(128);
if(movie.available()) movie.read();
beginShape();//正前方的牆
texture(img);
vertex(0,0,0,0,0);
vertex(400,0,0,1,0);
vertex(400,400,0,1,1);
vertex(0,400,0,0,1);
endShape();
image(movie,0,0,360,240);
if(video.available()) video.read();
beginShape();//左邊的牆
texture(video);
vertex(0,0,0,0,0);
vertex(0,400,0,1,0);
vertex(0,400,400,1,1);
vertex(0,0, 400,0,1);
endShape();
}
沒有留言:
張貼留言