Category Archives: 21-ofxaddons

ypag

10 Feb 2015

The idea is to track faces using camera feed and once the face is detected a creature would start crawling towards the face.

I’m trying to get the ofxSkeleton add on to work with ofxLibface add on.

Ofxskeleton lets you build bone joint structures, it also has a solver for bone chains. You can group different bones together to create a joint.

The Example:

of1

I’m still working on getting ofskeleton to compile with face tracking.

 

Sylvia Kosowski

10 Feb 2015

For my project, I combined ofxFlowTools with ofxVboParticles. I thought these addons might look cool together since both fluids and particles have the potential to flow around in interesting ways. Originally, I wanted to combine ofxFlowTools with ofxFX, because in ofxFX there’s a ripple effect, and I wanted to get the flow to ripple at the same time. However, I wasn’t able to figure out how to do this, so I settled for combining these two. I wanted to make it so that the particles would follow the mouse when they are generated like the flow does, but the code was pretty poorly documented and doing strange things, so I wasn’t able to make the particles follow the flow. In the end I was forced to pretty much combine two pieces of example code from each project since the projects weren’t doing what I wanted/expected them to, so this is more of a Hello World than anything else.

assignment21

I wanted the particles to follow the fluid to make a sort of sparkly fluid as in this sketch, but it didn’t work because the code was weird.IMG_0970

 

 

sejalpopat

10 Feb 2015

Addons Used: ofxFX, ofxFluids

What inspired you to combine the capabilities of these two libraries?
I used the addons ofxFx and ofxFluids in this project. I wanted to create a scene that looked organic and somewhat abstract. I used ofxFx so that I could make use of the gray scott reaction diffusion functions that make it really easy for shapes to become less rigid looking and build up organic forms; this helped create the fuzzy look. I start the reaction diffusion process  with randomly placed circles all across the canvas and set the color to darken over time. This repeats over and over resulting in flashes of brighter color that flickers across the screen. I like that this effect gives the scene more energy. I used the ofxFluid addon to add a whispy visual when the user clicks. I was hoping that this would liven up the image overall because after the first few seconds the whole scene settles into place.

 

Using ofxVboParticles and ofxPostProcessing

For my project I found an addon which claimed to do fast particle rendering and an addon to do post processing effects. I thought I might be able to make something look good with particles so I grabbed them. I was pleased with the simplicity ofxVboParticles addon by Atsushi Tadokoro. I was able to get the example to work easily and from there I followed the instructions on the github for ofxPostProcessing (by Neil Mendoza) which were very clear to add bloom and god rays. The god rays and bloom made it look like the viewer was looking into the sun, so I added a bright sphere to the center of the composition. I am pleased with the results, especially considering the fairly small amount of time I put into creating it. I actually spent more time browsing through the addons than writing this code.

https://github.com/kellogg92/IACD_Proj21

asst21 2015-02-10 07-34-36-52

John Mars

10 Feb 2015

Magic Eye images, or Autostereograms are those cool pictures that make a 3D object appear when you cross your eyes funny. I’ve made an application using kylemcdonald/ofxAutostereogram and Geistyp/ofxGif to import a depth-map gif like the one below, and an obfuscation image (the crumpled paper) and export a Magic Eye GIF. I thought it would be an interesting twist on something from my childhood, and I wanted to see if the effect would even work on a lenticular print. I also wanted to add autostereogram 3d to my 3d image toolkit, as well as 3d animations.

I originally tried to generate a rotating icosahedron and use its openGL depth map texture as the depth map image instead of using the Kinect depth video, but I was ultimately unsuccessful. My next venture is certainly going to be exploring Fbos and shaders. I also tried generating a static image instead of using the paper tiles as the background, but it seems that autostereograms can’t use white noise for that purpose.

CAVEATS: I didn’t have access to a Kinect while I was building the application, so it’s currently using stills from a video I found online. I’ll switch it out to a video of me ASAP. Also, I didn’t even realize this until it was too late, but it looks like one of the examples in ofxAutostereogram creates animated stereograms from Kinect video, so, this isn’t even an original idea (although it was derived independently).

Here’s the ofApp.cpp:

#include "ofApp.h"

//--------------------------------------------------------------
void ofApp::setup(){

    ofSetFrameRate(5);

    i = 0;
    
    bgTile.loadImage("paper.jpg");
    bgTile.resize(128, 128);
    
    gifLoader.load("kinect.gif");
    
    // allocate images
    depthMap.allocate(gifLoader.pages[0].getWidth(), gifLoader.pages[0].getHeight(), OF_IMAGE_GRAYSCALE);
    magicEye.allocate(depthMap.getWidth() + bgTile.getWidth(), depthMap.getHeight(), OF_IMAGE_COLOR);
    
    ofSetWindowShape(magicEye.width, magicEye.height + bgTile.getWidth());
    
    gifSaver.create("output.gif");
}

//--------------------------------------------------------------
void ofApp::update(){
    
    depthMap.setFromPixels(gifLoader.pages[i % 9]);
    depthMap.setImageType(OF_IMAGE_GRAYSCALE);
    
    i++;
}

//--------------------------------------------------------------
void ofApp::draw(){

    ofBackground(0);

    float depthMultiplier = .2;
    ofxAutostereogram::makeAutostereogram(bgTile, depthMap, depthMultiplier, magicEye);

    magicEye.update();
    magicEye.draw(0, 0, ofGetWidth(), ofGetHeight());
    
    if (i < 10) {
        ofImage img;
        img.grabScreen(0, 0, ofGetWidth(), ofGetHeight());
        gifSaver.append(img.getPixelsRef());
    }
    
    if (i == 10) {
        gifSaver.save();
        ofLog() << "SAVED";
    }
}

And the entire project’s code can be found here: https://github.com/marsman12019/stereoGIF