NormalMap

Bump Map to Normal Map Converter

Convert a bump map into a normal map so lighting and reflections respond correctly.

Quick answer: Upload a grayscale bump map, raise Strength if the result looks flat, and download a tangent-space normal map ready for any PBR engine - free and local.

Drop an image or click to upload

Height map or photo → normal map. Runs locally.

OpenGL (Blender, Unity) uses Y+ up (default). DirectX / Unreal may need the green channel flipped.

Input

No image

Normal map

Core facts
Price100% free, no sign-up
InputGrayscale bump map
OutputTangent-space normal map (PNG)
ProcessingLocal in your browser - no upload

What is Bump Map to Normal Map?

A bump map is a grayscale texture that fakes surface height. It is older than the normal map and only supports diffuse shading, not specular or reflections. Modern engines light with normals, so a bump map needs converting to a normal map to behave correctly. This tool reads the bump map as a height field and computes a tangent-space normal map from it in one click.

Common Uses for Bump Map to Normal Map

  • Modernise an old bump-map material for a PBR pipeline
  • Use a legacy texture as a normal map in Unreal or Unity
  • Convert a bump map exported from a CAD tool
  • Fix a material that only has a bump channel and no normal map

Why engines prefer normal maps

Bump maps only perturb diffuse lighting. Normal maps give the renderer a real surface direction, so specular highlights, refraction and reflections all bend across the bumps. That is why every PBR workflow - glTF, Unity URP/HDRP, Unreal - expects a normal map in the material's normal slot.

Bump to normal, step by step

Upload the bump texture, set Strength to roughly 1.5-3 depending on contrast, and export the PNG. In Blender, plug the result into an Image Texture node connected to the Normal input of a Principled BSDF. In Unity, set the texture type to Normal map first so the engine does not re-encode it.

Frequently Asked Questions

Is a bump map the same as a normal map?
No. A bump map is grayscale height, a normal map is RGB direction. They look completely different, and a bump map will not light correctly in a PBR engine until it is converted.
Why does my converted normal map look flat?
Bump maps usually have low contrast. Increase the Strength slider and reduce smoothing. If the result is still weak, the original bump map may not contain enough height variation.
Can I convert a normal map back to a bump map?
Only approximately - a normal map stores a direction, not a height, so the original height is lost. This tool goes the correct direction: grayscale height to RGB normal.

More Normal Map Tools

More Normal Map Tools