week13-1_video
import processing.video.*;
//Capture video;
Movie movie;
void setup(){
size(640,960);
//video=new Capture(this,640,480);
movie=new Movie(this,"street.mov");
movie.loop();
//video.start();
}
void draw(){
if(movie.available()) movie.read();
image(movie,0,0);
//if(video.available()) video.read();
//image(video,0,0);
}
//week13-2_camera
//電腦圖學繪圖時,會設定camera的相關係數
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);
}
//week13-3_texture
//貼圖,之後再加進去
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();
}
//week13-3
//把貼圖和camrea整合在一起
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();
}
//week13-5
//把貼圖和camrea整合在一起
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();
}
//week13-6
//集大成
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();
translate(0,0,1);
image(movie, 0, 0, 360, 240);
if(video.available()) video.read();
//image(video,0,0);
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();
}
沒有留言:
張貼留言