GenPBR Diffuse to Normal Map Converter

Diffuse to normal map, free, online

Convert a diffuse or albedo texture into a normal map in your browser, then optionally generate roughness, metallic, and height for a full PBR material.

Free · No signup for core use · 3 days free · card required · no charge today · Unity, Unreal, Blender & Roblox

If you searched for diffuse to normal map, you want believable surface detail from a flat color plate without sculpting. GenPBR generates a normal map from your diffuse or albedo, with live 3D preview before export.

Albedo to normal map

Albedo to normal map is the same workflow under a different name. Prefer a lighting-free base color plate, upload on the generator, and tune strength while orbiting the 3D preview.

Source plateWhat you should expect
Clean albedoColor changes mostly follow material. Best input. Keep strength moderate so painted variation does not become cracks.
Diffuse with baked lightShadows and AO become extra bumps. Lower strength, or flatten the lighting before you convert.
Photo of a real surfaceUseful for stone, fabric, and ground. Highlights and cast shadows still pollute the normal. Crop to an evenly lit area.

Workflow checklist

  1. Start from clean diffuse/albedo (minimize baked shadows).
  2. Generate normals and check grazing angles in the WebGL viewer.
  3. Mark the texture as non-color / linear in your engine or DCC.
  4. Pair with roughness and metallic before shipping.

When to rebake instead of infer

Inference from a painted diffuse is fast, but heavy baked lighting or AO in the color plate can become fake bumps. For hero assets, bake from height or high-poly when you can; use this diffuse→normal path for prototypes, tiles, and mid-priority props.

Related: normal map generator hub

For the full normal workflow, including OpenGL versus DirectX, use the normal map generator. PNG files: PNG to normal map.

Frequently asked questions

Commercial license

Start trial