Normal Map Generator — Local Height, AO and Roughness PNGs
Turn a height image into downloadable normal, height, estimated ambient-occlusion and roughness maps, entirely in your browser.
Material Map Lab
Choose your inputs, or load the working example to explore the result. Your files stay on this device.
Your inputs
Required fields are marked with an asterisk.
Your result
Review your output, then save it to your device.
Make the next step clear.
Your findings, assumptions and next steps will appear here after you run the check.
Material Map Lab · https://materials.kitforma.com/ · KitForma
Runs locally in your browser
Download actual usable output
Explicit assumptions and supported inputs
Understand the evidence.
Focused guides explain the rules, the edge cases and the checks worth doing before you act.
Convert a height image into a normal map
Understand what brightness can and cannot describe.
Read the guide ↗Field guide / 02Choose the correct normal-map green channel
Resolve an apparent vertical inversion without changing geometry.
Read the guide ↗Field guide / 03Use estimated roughness and AO honestly
Build a useful starting material while keeping physical assumptions visible.
Read the guide ↗Before you start
Is my image sent to a server?
No. Decoding and all map calculations run in your browser.
Does this create a physically measured PBR material?
No. Normal and height maps follow image brightness; roughness and AO are explicitly labeled estimates.
Does seamless sampling repair seams?
No. It wraps derivative sampling; the source texture must already be seamless.
Why is the normal map mostly blue?
A flat tangent-space normal points out of the surface and encodes near RGB 128, 128, 255.
What happens to transparency?
Transparent pixels become zero height. Crop or flatten your source if that is not the intended boundary.
Sources & assumptions
Formats, algorithms and supported features are documented below. Check the stated scope and inspect your output before using it.
- NormalMap-Online ↗
Established height/normal-map workflow and map conventions.
- Blender normal-map node ↗
Normal maps encode vectors and need the appropriate texture interpretation.
Reviewed 2026-10-17. Read our methodology or report an issue.