Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- // find out what cam you have by making this code in a sketch
- import processing.video.*;
- Capture cam;
- void setup() {
- size(1280,720);
- println( Capture.list() );
- }
- */
- import processing.video.*;
- Capture cam;
- int stageW = 1280;
- int stageH = 720;
- int camW = 1280;
- int camH = 720;
- float cubeSpacing = 10.0;
- float cubeSize = 9.0;
- PImage _t;
- void settings() {
- size(stageW, stageH, P3D);
- }
- void setup() {
- _t = loadImage("imageName.png");
- cam = new Capture(this, camW, camH, "HD Pro Webcam C920", 30);
- cam.start();
- }
- void draw() {
- background(0);
- translate(stageW/2, stageH/2);
- rotateY(frameCount*0.01);
- for (int x = 0; x < camW; x += cubeSpacing) {
- for (int y = 0; y < camH; y += cubeSpacing) {
- color pixelColor = cam.get(x, y);
- float b = map(brightness(pixelColor), 0, 255, 0, 15);
- pushMatrix();
- translate(x - camW/2, y - camH/2);
- strokeWeight(0);
- noStroke();
- noFill();
- tint(pixelColor);
- buildCube(cubeSize/2, cubeSize/2, (b*cubeSpacing)/2 );
- popMatrix();
- }
- }
- noTint();
- }
- void buildCube(float _w, float _h, float _d) {
- beginShape(QUADS);
- textureMode(NORMAL);
- texture(_t);
- // FRONT
- vertex( -(_w), -(_h), (_d), 0, 0);
- vertex( (_w), -(_h), (_d), 1, 0);
- vertex( (_w), (_h), (_d), 1, 1);
- vertex( -(_w), (_h), (_d), 0, 1);
- // BACK
- vertex( (_w), -(_h), -(_d), 0, 0);
- vertex( -(_w), -(_h), -(_d), 1, 0);
- vertex( -(_w), (_h), -(_d), 1, 1);
- vertex( (_w), (_h), -(_d), 0, 1);
- // TOP
- vertex( -(_w), -(_h), -(_d), 0, 0);
- vertex( (_w), -(_h), -(_d), 1, 0);
- vertex( (_w), -(_h), (_d), 1, 1);
- vertex( -(_w), -(_h), (_d), 0, 1);
- // BOTTOM
- vertex( -(_w), (_h), (_d), 0, 0);
- vertex( (_w), (_h), (_d), 1, 0);
- vertex( (_w), (_h), -(_d), 1, 1);
- vertex( -(_w), (_h), -(_d), 0, 1);
- // LEFT
- vertex( -(_w), -(_h), -(_d), 0, 0);
- vertex( -(_w), -(_h), (_d), 1, 0);
- vertex( -(_w), (_h), (_d), 1, 1);
- vertex( -(_w), (_h), -(_d), 0, 1);
- // RIGHT
- vertex( (_w), -(_h), (_d), 0, 0);
- vertex( (_w), -(_h), -(_d), 1, 0);
- vertex( (_w), (_h), -(_d), 1, 1);
- vertex( (_w), (_h), (_d), 0, 1);
- endShape(CLOSE);
- }
- void captureEvent(Capture c) {
- c.read();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement