Skip to main content

How to Create a Normal Map in Photoshop

By December 16, 2017January 19th, 20233D Modeling, Tutorials

When creating textures for use in a 3D application or game, sometimes it’s necessary to add finer detail, such as a bump or normal map. In short, these maps fake lighting on textures to create additional detail without adding more polygons.

For normals, I figured you had to rely on 3rd party applications such as CrazyBump. While it may be true that CrazyBump is an excellent piece of software, I hadn’t realized it was already possible to use Photoshop.

The 3D functionality is not available in Photoshop versions CS6 and prior, and therefore will be unable to create normal maps.

For this example, I’ll use a leather texture found on textures.com:

Leather

Open Image in Photoshop

Open the texture you want to create a bump map for and switch to the 3D Workspace.

Photoshop 3D Workspace

In the 3D panel, select Mesh From Preset, and choose a shape.

I like to use a Sphere, but it doesn’t matter. Click Create. Magic happens inside Photoshop and, as a result, creates a scene with your texture loaded onto an object.

Photoshop 3D Panel

In the 3D panel, click the object name with _Material. In this case, Sphere_Material.

Photoshop 3D Panel Object

Create the Normal Map

The Properties panel changes to reflect options corresponding to the material properties. Right now, our texture is loaded into the Base Color channel. There’s a button at the bottom labeled Normal. Click that and then select Generate Normals From Base Color…

Photoshop Generate Normals

After a few seconds, the Generate Normal Map window opens.

There’s a preview of your shape, and you can adjust Contrast Details and all that fun stuff. Click OK. Afterward, your normal map is created and applied to the shape.

Photoshop Generate Normal Map

Note: In the event that Photoshop locks up, you can also try this more straightforward method:

  1. Open texture in Photoshop as you would normally do any image. Make sure the image mode is set to RGB. (Having tried with Greyscale, it would freeze up again.)
  2. Choose Filter3DGenerate Normal Map…
  3. Adjust your map as necessary (I left mine to default). Click OK.
  4. Lastly, save your file as PNG (not sure if it matters).

Save the Normal Map

To save the image from Photoshop, click on the Normal button again in the Properties panel and then select Edit Texture…

Photoshop Edit Texture

Your image then opens in a separate document window. Choose File, Save As…

Choose Tiff as the Format, and uncheck Layers:

Photoshop Save As Dialog

On the TIFF Options dialog, the default settings are fine. Therefore, they can be left alone.

Photoshop Tiff Options

Now you can use this normal map inside a 3D application or game engine to display more detailed textures.

Normal Map

Final Result

As seen in the example below, a normal map adds much more realistic lighting detail on the surface of your mesh.

Leather with Normal Map

Leather with Normal Map

Leather without Normal Map

Leather without Normal Map

27 Comments

Leave a Reply

 

This site uses Akismet to reduce spam. Learn how your comment data is processed.