Introduction: 3D Pixel Collider (3D Print)

The idea of perceiving things in ways that they are not has always fascinated me. This project was inspired by thinking about how we could visualize this distorted reality.

How to create something that is something else?

Step 1: Simplified Theory

Images are composed by pixels in two dimensions, by adjusting the 3rd invisible dimension, images can be converted into 3D models that, depending on the viewer's angle, can create more than one image.

In the sketch you can see a simplified explanation, where pixels from one image are intersected with pixels from the other. Pay attention to how I am only mixing the 'z' coordinates from one drawing with the 'x' coordinates from the other.

Step 2: The Code

I used Processing to automate this process instead of manually identifying and repositioning each pixel.

To summarize what is going on, I am first organizing the pixels of both images on the y axis since this will be the axis both pictures share.

Then I simply replace the z coordinate of one image with the x of the other, and that is basically it.

If you download the code you will see two variables at the beginning that you can modify to achieve your desired results. Also, you might notice I have no formal training in coding, so I apologize if it is hard to read.

One last thing regarding the code, make sure both images are the same height and that they both start and finish at the top and bottom edges.

Step 3: Generating a Stl

At this point the code will output an obj file, which can easily be transformed into a stl in programs like Meshmixer, unfortunately there might be some problems with it and it might not be ready to print. Also depending of the size of the voxels (think about pixels in 3D) the object will not be connected and could not be printed without some support to hold the voxels in place.

Being at P9 we have access to some amazing Objet printers capable of doing multimaterials, one of them being a clear resin. With this in mind I made the voxels small for them to look almost like dots inside the finished print.

If you wanted to print this out of a single material on a fdm printer you could play with the size of the voxels to make them connect. You will loose significant resolution but end up with one (or close to) solid part that can be printed in many more machines. You will also need to create a solid out of the mesh first.

Step 4: Booleans

Since I wanted the voxels to be really small and floating in space I needed to create two parts, one with the voxels and another one to be the space around it.

I used inventor since that is what I already knew how to use but I am sure other programs could do a faster job at it.

Here come a bunch of tricky steps that might take some effort (at least from your computer). First download the mesh enabler for inventor. This will allow you to convert a stl into something inventor can work with.

Then I created a cube to fully enclose the voxels, placed them together in an assembly and saved the file. Here you are going to derive the files, to do so open an new part, go to manage>derive and select the previous assembly you just saved. Here you can do a bunch of things like merge both geometries, in this case we want to subtract one from the other.

So now you have two parts and one fits perfectly inside the other. This was probably one of the most frustrating steps since my computer was running really slow, but you have to constrain one part inside the other such that they are perfectly aligned.

Finally, when you export as an stl make sure to go into options and select the one file per part instance.

Note:Aligning this two parts together could be skipped if instead of having a colored material inside the clear part you could use the support material (whitish yelow).

Step 5: 3D Printing ...sanding... Sanding and Polishing

Not quite done yet...

3DP are amazing machines but we are not quite done yet. As you can see from the second image there is a lot of polishing that needs to be done. I first started with a sander but that proved to be too aggressive and I quickly lost all my planes and corners. I had to run it through the table saw and started again.

Start from 80 and go all the way to 2000, going through every number. From 600 onwards use water to avoid quickly clogging the sandpaper with the dust generated. This will also generate some visually stimulating images on the sandpaper.

Finally I used a 3 step plastic polisher to achieve a clear see through effect.

Step 6: Enjoy!

At the end my voxels were a little too small and it was hard to see the robots without a illuminated background. I ended up making a little light box to bring the robots to life.

Finally I discovered that I could achieve better effects by laser etching inside a block of glass, this way the clarity would be significantly better and the resolution a lot better. Did I mentioned you would also save hours by not having to polish all faces?


JavaProgrammer (author)2015-05-01

I'm not quite sure what this is. Does it look like the instructables robot from one angle and r2-d2 from a different angle?


You got it! That is exactly what it is. The interesting part is that both images are rendered using the same voxels (think of 3D pixels)


Awesome! maybe add a video showing it spinning.


Towards the end of both the first and last video you can get a better look of them as they turn.

rachel7989 (author)2015-04-28

this is awesome

singerboy41 (author)2015-03-17

This is terrible... my mind... BOOM! You just blew my mind.

Olek410 (author)singerboy412015-03-17

That isn't very nice. I think the creator did a very good job and worked very hard on this project. Also if you don't have anything nice to say then don't say anything at all "singerboy14."


Thank! I don't think singerboy41 meant it in a degrading way, when I saw it the first time I read it as a compliment.

dan3008 (author)2015-03-17

Nice build... I want one now :) lol

NathanSellers (author)2015-03-16

This is really impressive. Way to go on such a complex project.

About This Instructable




Bio: Mechanical Engineer who loves merging science and art.
More by Sebastian Morales:Capture 3D Models From Google Maps or EarthCNC Light DrawingOlas Flotadoras
Add instructable to: