This tutorial will demonstrate how to use ShaderMap 3 to create two displacement maps from a single source image.
The displacement maps will then be used to generate two unique tangent space normal maps. Finally, the normal maps
will be combined to create a single normal map. Using this method will give additional controls, such as fine-tuning
high and low detail, over the normal map generation process.
Step 1: Create an Empty Project
From the ShaderMap Start Screen, click the Advanced Button found in the bottom right of the window. This will allow you
to create an empty ShaderMap project. There will be no maps in the project grid and no materials in the Visualizer.
These will need to be setup manually.
Step 2: Load the Source Image
As soon as the new (empty) project page is shown, the “Add Node to Project” dialog will appear. Double-click the item
"Src: Color Texture" from the list. This will bring up an Explorer window where you can navigate to your color source
image file. Once the color image is loaded it will be added to the Project Grid.
Next set the map properties to match the following. This is important because we need to tell ShaderMap that this color image is
tileable (seamless) on both X and Y coordinates.
Step 3: Add a Displacement Map
Now it is time to add a displacement map which will be generated from the source color image loaded in Step 2. Move your
mouse over the empty Project Grid cell located underneath the source color map, a plus (+) button will appear. Click the
plus button to bring up the “Add Node to Project” dialog then locate "Map: Displacement [Diff]" and add it to the project.
This map generates a displacement map from a diffuse (color) image. Increase the Project Grid resolution by clicking the
up arrow located directly underneath the Project Grid (on the left side). Your Project Grid should now look like the image below:
This is one of two displacement maps you are going to generate from the source color map. This displacement map will focus
on the lower parts of the displacement map where the other displacement map will focus on the upper displacement details.
To do this we use the High and Low Clip Plane properties to knock off high and low pixels. Change the following properties
of the first displacement map to match below:
- Auto Edge – 75
- High Clip Plane – 60
Setting the High Clip Plane to 60% will ensure that any pixels brighter than 60% of white are clipped to 60% gray.
Step 4: Clone the Displacement Map
Now create a clone of the first displacement map by left-mouse-and-dragging the displacement map thumbnail on
the Project Grid. While dragging the displacement map press and hold the SHIFT key, you are now in clone mode.
Drag the thumbnail over an empty cell and, while still holding the SHIFT key, release the map by letting go of
the left mouse button.
As mentioned in Step 3 the second displacement map will be used to focus on the higher displacement pixels.
We need to change the following properties on the newly cloned displacement map to match the following:
Setting the Low Clip Plane to 35% will ensure that any pixels darker than 35% of white are clipped to 35% gray.
Step 5: Add a Normal Map
Add a new map to the Project Grid using the same method used in Step 3. This time add the map "Map: Normal [Disp]".
This map creates a tangent space normal map from a displacement map input. Select the new normal map and ensure
that its input control is placed on the first displacement map and not the second cloned map. As an exercise, try
to move the map’s input back and forth from the first and second displacement map (left-mouse-and-drag to change the input map).
Next set the Normal Map properties to the following:
Step 6: Clone the Normal Map
Clone the first normal map the same way that you cloned the first displacement map in Step 4. Move the cloned
normal map’s input to the second displacement map (Select the cloned normal map, left mouse drag the map’s
input onto the second displacement map). Set the cloned normal map’s properties to match the following:
- Intensity – 55
- Sharpen – ON
Your Project Grid should now look like the following image:
Step 7: Add a Blend Normals Map
Now we add the final map. This map will blend the two tangent space normal maps into a single map. Move the mouse
over an empty cell and add click the plus (+) button to bring up the Add Node dialog. Find and select "Map: Blend Normals [Map A, Map B]".
This map uses two inputs and they are automatically assigned to normal maps when it is added to the project. Ensure that Input 1
is on the lower details normal map and Input 2 is on the higher details normal map. The blend normals map blends Map B to Map A
using a blend method selected in the map’s properties. Set the blend map’s properties to match the following:
- Blend – UDN
- Blend Intensity – 100
We now have the final normal map. By changing the lower pixels in the first displacement map you can alter the final normal map,
the same goes for the higher detail displacement map and normal map. Play around with the settings but first we should setup the
Material Visualizer so we can see the results rendered in 3D.
Step 8: Add a Standard Material
Press M on the keyboard to bring up the Material Visualizer. M is a keyboard shortcut which toggles between the Node
Preview and the Material Visualizer. Next ensure the Material Editor is visible by clicking the double arrow on the
top right side of the Visualizer window (it may already be out).
Move your mouse over an empty material cell in the editor and, just like in the Project Grid, click the plus (+)
button that appears. Select “Standard Material” from the drop list. Next setup the Material maps so that it is using
the original source image for Diffuse Map and the blended Normal Map. Left-mouse-drag the material on to one of the
default geometry types in the main visualizer window to see it applied.
Download Resources
The SM3 Project File can be downloaded here:
Two Displacement
Note: This older project file will use legacy map plugins when loaded with SM4 and up.
The source image is located here:
http://www.mb3d.co.uk/…/Brick_Design_UV_H_CM_1.jpg
Find more great free and seamless textures at:
http://www.mb3d.co.uk/