Normal Map Generator
Turn a height image into a tileable normal map (GPU Sobel, 3 scales, OpenGL/DirectX) with bonus AO, curvature and roughness maps.
100% local: your files never leave your browser
Drop a height map
Grayscale in, tileable normal map out (plus AO, curvature and roughness).
sample-bricks · 1024×1024 px · Choose the map to display above.
Height image
Normal map
Bonus maps
Export
About the Normal Map Generator
This free online normal map generator converts any grayscale height or bump map into a tangent-space normal map in real time on your GPU. Combine fine, medium and large details, switch between OpenGL (Y+) and DirectX (Y−) conventions, keep the result tileable, and bake extra ambient occlusion, curvature and roughness maps from the same height data. Export 8-bit or 16-bit PNG files ready for Maya, Blender, Substance, Unreal or Unity.
FAQ
Is the normal map OpenGL or DirectX?
Both: choose OpenGL (Y+, used by Maya, Blender, Unity) or DirectX (Y−, used by Unreal Engine and 3ds Max) before exporting.
Can I export 16-bit normal maps?
Yes. 16-bit PNG avoids banding on smooth surfaces and is recommended for high-quality renders.
Are my images uploaded?
No. Everything runs locally in your browser with WebGL; your files are never uploaded to a server.