Learn and create graphics using free and open source software

Search Posts

Blender Cycles Cube Projection Mapping

Blender 2.62 has been released on February 2012, one of the great thing about the release is the Cycles Render Engine was added with a number of new features. But unfortunately, the Cycles engine on Blender 2.62 still can’t do cube projection mapping. With a bit of work, we can achieve the same result as a cube projection by using some flat projections.

Texturing a cube using UV map is not hard, but in some cases using cube projection (some call it as box mapping) method can be easier. For example, this image below rendered using Blender 2.62 Cycles. The brick walls can be mapped easily by using 3 flat projections, it won’t be so easy if you use UV map texturing method.
Source of the texture image: www.3d-diva.com (broken link).

World Axes and Map Axes

To projection-map properly, you need to know its world axes and map axes. The World Axis Indicator Icon can be found on the bottom left corner of every viewport, it will show you the world axes of the viewport. Map axes are the axes of the result image on the face you’re going to map (target object). X-axis of the map is parallel with the horizontal orientation of the result image, y-axis of the map is parallel with the vertical orientation of the result image, and z-axis of the map is parallel with the direction of the face is facing to.

A Cube Projection Map = 3 Flat Projection Maps

Basically, a cube projection map is the result of 3 flat projection maps (x-axis, y-axis, z-axis). A cube has 6 faces, but for now we simply ignore the 3 of the faces that we can’t see from camera view. By analyzing the visible faces of a cube and its world axes, you get:

Face facing x-axis of the world:
z-axis of the map is projected to x-axis of the world
x-axis of the map is projected to y-axis of the world
y-axis of the map is projected to z-axis of the world

Face facing y-axis of the world:
z-axis of the map is projected to y-axis of the world
x-axis of the map is projected to x-axis of the world
y-axis of the map is projected to z-axis of the world

Face facing z-axis of the world:
z-axis of the map is projected to z-axis of the world
x-axis of the map is projected to x-axis of the world
y-axis of the map is projected to y-axis of the world

Mapping the Cube

Make sure Cycles Render engine has been selected.

Click Material tab icon.

Create 3 materials (Material_X, Material_Y, Material_Z).

Set Use Nodes mode for all the materials.

Assign the materials to the faces.

Set Color to Image Texture and click Open to load the image.

Set Vector to Texture Coordinate | Generated.

Click Texture tab icon.

Set axes of the projections for each of the materials.

There are 3 values on the projection you need to set. The first (Material_X) is for the world axis that parallel to x-axis of the map, the second (Material_Y) is for the world axis that parallel to y-axis of the map, and the last (Material_Z) is for the world axis that parallel to the z-axis of the map.Note:
Cycles box projection mapping has been resurrected on the newer releases. You may interested to know how to do it on this tutorial: Blender 2.64 Cycles Box Projection Mapping.