This project took less than an hour to do, let's see how.
To get the heart-shaped "bokeh" (the blur in the background), you have to change the "aperture" shape of your camera. Usually, it's round or octogonal because of the diagram's shape.
Here, I added a simple piece of paper on a wide aperture lens. It's a basic reflex (Canon EOS 550D aka Rebel T2i) with a very old 50mm f/1.8 lens I got for 5€ on a garage sale, mounted thanks to an M42 adapter ring. Nothing fancy.
The heart-shaped aperture
I put everything on my dirty living room table, turn the lights off, and the magic of love happens.
The reflexion table setup
This program is very short and simple. It just draws "WE LOVE YOU" on the screen, and progressively light up the LEDs randomly in red.
//use the gamebuino meta library, of course ;) #include <Gamebuino-Meta.h>//create an image 2 pixels wide and 4 pixels tall to store the light's status Image myImage = Image(2, 4);
void setup() { //initialise the gamebuino gb.begin(); }
void loop() { //wait for the next frame while (!gb.update());
//clear the display (not really needed as nothing is moving) gb.display.clear();
//draw the "WE LOVE YOU" text gb.display.setColor(gb.createColor(255, 0, 0)); gb.display.setFontSize(2); gb.display.setCursor(12, 20); gb.display.println("WE LOVE"); gb.display.setFontSize(4); gb.display.setCursor(18, 32); gb.display.println("YOU");
//every 25 frames if ((gb.frameCount % 25) == 0) { //set the color to red with a random intensity gb.display.setColor(gb.createColor(random(0, 100), 0, 0)); //and draw it to a random light myImage.drawPixel(random(0, 2), random(0, 4)); } //send our image to the gamebuino lights gb.lights.drawImage(0, 0, myImage); }
Because your know... we do care about you. You are the reason why we are here <3