Displacement Tutorial

Since Cinema4D doesn't have pixel level displacement, we have to rely on micro-surface displacement. The problem is that Cinema4D doesn't calculate where the micro-surfacing has to occur. So, we must do it by hand. But it's not as complicated as it may sound at first. Once mastered, it can be acomplished quite fast and easily. Just follow this tutorial...
First, we will start by creating two textures in Photoshop (or whatever painting application you have): the color texture and the displacement texture. The displacement map is just like a regular bump map but with a little different in the way it is interpreted. On bump maps, a value of 50% grey will keep the surface where it is. A lighter value will simulate a raise in the surface and a darker value will simulate a indent on the surface. With displacement maps, a value of black will keep the surface where it is. Any value that is lighter will raise the surface if the strength of the displacement is positive (0 to 100%) and will indent the surface if the strength of the displacement is negative (0 to -100%).

color map

displacement map

Now, in Cinema4D, we create a Plane with the proportions of the bitmaps we created. We don't need many subdivisions to start with. In this case, a 10x8 grid will do.


With the bitmaps we made, we create a simple material. Make sure that the displacement Height has a value that relates to the dimensions of the Plane. Don't worry about the preview, as it doesn't portrait the displacement like it will be on the rendered image.

Apply the texture to the Plane and change the mapping mode to Flat. The display will go mad, with long stripes. No worries!! To adjust it automaticaly, change to the Top View and, with the texture tag selected, choose Adapt to View, followed by Fit to Object, in the Texture menu of Object manager. Now it looks fine!

The first thing to do now, is to convert the Plane into a polygonal object. Just press 'C'. Still in top view, change to Face mode and select the faces that include the texture aspects you want to displace - in this case, the 'ABC123'.

Select Subdivide from the contextual menu (right mouse+click or Comand+click on Mac). Choose a Subdivision of 1 and turn HyperNURBS Subdivide off (the default).

You will get this... (Don't worry with the triangulation).

Now you can start deselecting the smaller polygons that don't include any part of the letters (ctrl+click or ctrl+drag with the Selection tool). You should get this:

Perform another subdivision using the same values. Once more, deselect the smaller polygons that don't include any part of the letters: You should get this:

Perform another subdivision using the same values. Now you know what do do... deselect some more polygons.

After another subdivision you will get this:

This should be enough. You have a denser mesh on the places you really need, to perform a good displacement. But, during the whole process, many extra triangles were created. Some of them are unnecessary. So, deselect all polygons and perform a Untriangulate command:

Its not a great optimization but every polygon saved helps. Now you have this mesh (seen in perspective):

If you do a render, you will get this:

Not bad. But, if you place the Plane inside a HyperNURBS you will get smoother displacements:

Has an extra bonus, you also get rounded corners. If that is not what is necessary, use the new Weighted HyperNURBS options to get sharper corners.

And that's a wrap!!