Source Code. Projects. Nerd Stuff. Art Stuff.

Projection Mapping Resources

Posted on February 27th, by amoeboar in classes, spatial media. No Comments

Stand-alone tools

Mapamok:
* Great tool developed at YCAM for projecting onto a scene you have modeled in 3D
A long list of video-based mapping tools:
* (very VJ focused)
LPMT:
* (not free to download, but free if you compile from source in OF!)
MadMapper (not free!):
* But free to try out. Read more


The Three Sisters

Posted on February 27th, by amoeboar in classes, spatial media. No Comments

I wanted to continue to experiment with computer vision and motion detection. I used TSPS to track blobs and openFrameworks to draw and rotate meshes. Read more


Book Mapping

Posted on February 27th, by amoeboar in classes, spatial media. No Comments

Spatial Media first assignment, design an interaction for the Strand Bookstore.
We approached this project as an opportunity to experiment with techniques that were interesting to us, including computer vision and projection mapping. Read more


Alice Among Others

Posted on February 4th, by amoeboar in classes, emerging processes. No Comments

Playing with time, tripping myself out.
[gn_media url="http://www.youtube.com/watch?v=dscijse4KjE" width="600" height="400"]

[gn_spoiler title="Source Code:" open="0" style="1"]
[gn_tabs style="3"]
[gn_tab title="testApp.h"]

12345678910111213141516171819202122232425#pragma once

#include "ofMain.h"

class testApp : public ofBaseApp{
   
public:
    void setup();
    void update();
    void draw();
   
    void keyPressed  (int key);
    void keyReleased(int key);
    void mouseMoved(int x, int y );
    void mouseDragged(int x, int y, int button);
    void mousePressed(int x, int y, int button);
    void mouseReleased(int x, int y, int button);
    void windowResized(int w, int h);
    void dragEvent(ofDragInfo dragInfo);
    void gotMessage(ofMessage msg);
   
    ofVideoPlayer mov;
   
    int x, y;
};

[/gn_tab]
[gn_tab title="testApp.cpp"]

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889#include "testApp.h"

//————————————————————–
void testApp::setup(){
//  mov.loadMovie("alice.mov");
//  mov.loadMovie("falls.mov");    
    mov.loadMovie("gumbasia.mov");    
//  mov.loadMovie("usa.mov");    

    mov.play();
   
    ofSetBackgroundAuto(false);
    ofSetFrameRate(240);
    x = 0;
    y = 0;
}

//————————————————————–
void testApp::update(){
    mov.update();
}

//————————————————————–
void testApp::draw(){
    mov.draw(x, y);
//  mov.draw(x, y, mouseX, mouseY);
   
    if (mov.isFrameNew()) {
        x = x + mov.getWidth();
       
        if (x>ofGetWidth()) {
            x = 0;
            y = y + mov.getHeight();
        }
       
        if (y>ofGetHeight()) {
            x = 0;
            y = 0;
        }
    }
}

//————————————————————–
void testApp::keyPressed(int key){
   
}

//————————————————————–
void testApp::keyReleased(int key){
   
}

//————————————————————–
void testApp::mouseMoved(int x, int y ){
    float width = ofGetWidth();
    float speed = ofMap(mouseX, 0, width * 2, 0.0, 5.0, true);  
   
    mov.setSpeed(speed);
}

//————————————————————–
void testApp::mouseDragged(int x, int y, int button){
   
}

//————————————————————–
void testApp::mousePressed(int x, int y, int button){
   
}

//————————————————————–
void testApp::mouseReleased(int x, int y, int button){
   
}

//————————————————————–
void testApp::windowResized(int w, int h){
   
}

//————————————————————–
void testApp::gotMessage(ofMessage msg){
   
}

//————————————————————–
void testApp::dragEvent(ofDragInfo dragInfo){
   
}

[/gn_tab]
[/gn_tabs]
[/gn_spoiler] Read more


Spacebrew: Up and Running

Posted on February 1st, by amoeboar in classes, spatial media. No Comments

Spacebrew works.
[gn_media url="http://www.youtube.com/watch?v=SO1VjiEoum4" width="600" height="400"] Read more