Willy Nolan

Perspective Projection

Projecting content onto a non-planar surface has many technical elements that can make it tricky. However, once the technological and physical challenges of projecting an image onto a surface are handled (rigging and blending projectors, supplying power, tuning the playback system etc.) it really comes down to content.

Unfortunately most "projection mapping" projects turn into what are essentially slide shows on buildings.

In order to make a significantly interesting projection project, the concept of perspective must be addressed.

Let's start out with something simple, such as a multi-colored cube.

Multi-colored cube in 3D environment

The resulting UV map for a cube typically looks like a cross because that is what you would get if you cut the seams of a box and unwrapped the object.

Multi-colored cube map

This map alone is enough to create some content but it would be quite challenging to create any movement. If, for example, text were supposed to scroll from the yellow square to the magenta square (which would make sense from the camera's viewpoint) it would have to make an illogical jump on the cube map.

The key is to think and work in 3D.

What if we wanted to create a 3D scene where the box is actually a see through container with things floating inside it? Or what if we wanted the box to appear as a solid, reflective object with something floating outside it?

Multi-colored cube in 3D environment

For that we would need to create a perspective projection.

In our example cube the process goes like this:

The resulting cube map will look strange on its own, but when reapplied to the object it will look perspective-correct.

Perspective cube map

For example here is the object with a solid green color and the 3D scene (blue spheres) visible.

3D scene and cube without the cube map applied

And here is the image with the blue spheres removed but the perspective texture map applied.

3D scene and cube with the cube map applied
3D scene and cube with the cube map applied

This process can be difficult to figure out and tedious to do repeatedly.

The project I made explored automated ways to texture bake perspective-correct projections in modeling software.