
Real-time preview in the normal map to height map
Watch every slider adjustment update immediately on the canvas or 3D preview inside this normal map to height map before you download via this normal map to height map.
Free · Local processing · No sign-up
Use the NormalMapAI normal map to height map converter to integrate X/Y tangent slopes back into a smooth elevation field for displacement, parallax or sculpting.

Sample textures: Poly Haven (CC0)
WHAT
A normal map to height map converts a surface image into production-ready material data: specifically, our normal map to height map lets you reconstruct a continuous 8-bit or 16-bit grayscale height and displacement map from any tangent-space normal map via Poisson gradient integration. NormalMapAI runs this normal map to height map 100% locally in your browser via WebGL2, giving you instant visual feedback and lossless PNG exports without uploading proprietary files inside our browser-based normal map to height map.
Whether you are building materials for Blender Cycles micro-displacement, Unreal Engine 5 Nanite/parallax, ZBrush and CNC/3D relief, this normal map to height map eliminates slow round-trips to heavy desktop suites. Under the hood, the normal map to height map uses iterative Poisson divergence solver integrating R (dH/dx) and G (dH/dy) tangent slopes into elevation so every pixel stays mathematically accurate for physically based shaders inside our browser-based normal map to height map.
Unlike single-purpose scripts that output blind files, the NormalMapAI normal map to height map keeps an interactive viewport open while you drag sliders. You can pair this normal map to height map with our seamless texture tool to fix border seams first, or jump straight to the full PBR texture generator when you need a complete multi-channel ZIP inside our browser-based normal map to height map.
Because the normal map to height map executes on your own GPU and CPU, confidential studio scans and client product shots never leave your machine. Open the normal map to height map above, test built-in Poly Haven CC0 samples, and export up to 4096 px with zero sign-up or watermark inside our browser-based normal map to height map.

WHY

Watch every slider adjustment update immediately on the canvas or 3D preview inside this normal map to height map before you download via this normal map to height map.

Outputs from the normal map to height map follow strict linear/sRGB and channel conventions for Blender Cycles micro-displacement, Unreal Engine 5 Nanite/parallax, ZBrush and CNC/3D relief via this normal map to height map.

Your textures never upload to a cloud server. This normal map to height map processes pixels locally in browser memory via this normal map to height map.

Move seamlessly between this tool, the seamless texture maker, transparent PNG cutout tool and full PBR texture generator via this normal map to height map.

Export crisp 512, 1024, 2048 or 4096 px textures from the normal map to height map with zero watermarks or paywalls.

Skip gigabyte installers — bookmark this normal map to height map and run production look-dev in any modern browser.
HOW IT WORKS
Four steps from a raw image to an engine-ready file in this normal map to height map — 100% local in your browser.

Drop a JPG, PNG or WebP image into the normal map to height map above, or click one of the built-in Poly Haven CC0 material presets to test the controls immediately using the normal map to height map.

Adjust the dedicated sliders in the normal map to height map — powered by iterative Poisson divergence solver integrating R (dH/dx) and G (dH/dy) tangent slopes into elevation — to dial in exact contrast, threshold or orientation using the normal map to height map.

Switch view modes or rotate the lighting inside the normal map to height map to confirm there are no inverted values, clipping artifacts or edge seams using the normal map to height map.

Click download in the normal map to height map to save your file locally, or continue into the PBR texture generator for a complete engine-packed ZIP using the normal map to height map.
Four production workflows where a dedicated normal map to height map saves time and fixes shader artifacts.
Many older texture packs only ship Diffuse and Normal maps; use our normal map to height map converter to reconstruct the missing height channel for parallax or displacement.
Convert existing tangent-space normals into a 16-bit elevation field with the normal map to height map solver so meshes can truly displace vertices.
Turn baked normal trim sheets back into grayscale height maps in the normal map to height map tool to reuse as sculpting brushes or height masks.
Once you reconstruct elevation in the normal map to height map workbench, you can derive ambient occlusion and cavity masks from that recovered height.
SCENARIOS
Short scenario-style notes from common workflows. These are illustrative use-case lines — not verified customer reviews, star ratings, or named endorsements.
Having a fast browser normal map to height map with live preview saved me from opening a heavy desktop suite just to fix one material channel.
We cannot upload NDA client textures to cloud AI tools — this local normal map to height map runs entirely on-device and exports clean files in seconds.
Pairing the seamless tool with this normal map to height map on the same site streamlined our whole look-dev loop.
Anonymous scenario feedback · illustrative, not customer testimonials
Scroll up to the live normal map to height map — upload a photo, tune under 3D lighting, export locally. The normal map to height map stays private in your browser.
COMPARE
When you need a fast, private map from a photo — without opening a full DCC install.
| Capability | NormalMapAI | Typical desktop suite |
|---|---|---|
| Install & license | Free in the browser — no install | Paid suite + disk install |
| Photo privacy | Stays on your device | Often cloud or local project files |
| Live 3D check | Built-in preview while you tune | Separate viewport / bake step |
| Engine ZIP packing | Unity / Unreal / Godot / Blender presets | Manual channel packing |
TOOLS
Free Seamless Texture Checker Online
Free seamless texture checker: inspect AI-generated or painted textures on a 2x2, 3x3 or 4x4 grid with seam hi…
Free 3D Print Height Map Generator (16-Bit Relief)
Generate smooth 16-bit grayscale height maps from photos for Bambu Lab, Cura, PrusaSlicer, CNC bas-relief and …
Free Power of Two Texture Resizer (256–4096 px)
Resize non-POT images to exact power-of-two dimensions (256, 512, 1024, 2048, 4096 px) for GPU mipmaps, BC7/AS…
Live 3D material editor
Open the NormalMapAI live 3D editor: tune normal, height, roughness and ORM packing on a shader ball, then exp…
Free PBR texture generator with live 3D preview
Free PBR texture generator: turn any photo into albedo, normal, height, roughness, AO, metallic and specular m…
Free 4K Seamless Texture Generator Online
Generate seamless and tileable textures online. Blend edges, check a live tiling preview, remove lighting, exp…
Free Transparent PNG Maker Online
Remove a black or white background and export a transparent PNG. Adjust threshold and feather, preview on a ch…
Image to Normal Map Converter
Convert any image or PNG to a normal map in your browser. Adjust strength, switch DirectX / OpenGL and preview…
Homepage PBR generator
Live 3D editor hub with full marketing copy.
LEARN
Short how-tos for maps, seamless textures and engine imports.
How to Use a Free Normal Map Generator (Step by Step)
A normal map stores surface direction so flat photos catch light in 3D. This guide walks through NormalMapAI’s free generator — from upload to engine ZIP — without installing software.
How to Make Seamless / Tileable Textures From Photos
Hard seams show up the moment a photo is tiled. Use edge blending, multi-scale fade and a 2×2–4×4 preview so the pattern repeats cleanly before you build normal and roughness maps.
Import PBR Maps into Unity, Unreal Engine and Blender
Export presets pack maps the way each engine expects. This guide covers import settings so albedo stays colored, normals stay linear, and ORM / MetallicSmoothness land in the right channels.
PBR Maps Explained: Albedo, Normal, Roughness, AO, Metallic and More
Physically based rendering needs a small set of textures that describe color, shape and light response. Here is what each map does and which ones NormalMapAI generates from one photo.
Height Map vs Displacement Map: What Changes in a Renderer
Both textures store height as brightness. Height often drives parallax or bump-style effects; displacement moves vertices. NormalMapAI exports both as 16-bit PNG to avoid banding.
Normal Maps: DirectX vs OpenGL (Y Flip) Explained
The only practical difference is the green channel: OpenGL stores +Y, DirectX stores −Y. Pick the right format — or an engine export preset — so bumps do not turn into dents.
No account. No upload. Scroll up to the normal map to height map on this page, drop your texture, preview in real time, and download a clean PNG — or open the PBR texture generator for a full multi-channel ZIP.
FAQ
NormalMapAI (normalmapai.com) provides a free online normal map to height map that runs 100% locally in your browser with zero login and no watermark. You can reconstruct a continuous 8-bit or 16-bit grayscale height and displacement map from any tangent-space normal map via Poisson gradient integration and export lossless PNGs for Blender, UE5, and Unity.
Our normal map to height map processes your uploaded image locally using iterative Poisson divergence solver integrating R (dH/dx) and G (dH/dy) tangent slopes into elevation. Every slider change recalculates the output in real time so you can inspect the exact response before downloading.
Export the PNG from the NormalMapAI normal map to height map and import it into Blender Cycles micro-displacement, Unreal Engine 5 Nanite/parallax, ZBrush and CNC/3D relief. Set the texture Color Space to Non-Color / Linear (uncheck sRGB) before wiring it to your shader.
No. The NormalMapAI normal map to height map executes entirely inside your browser using local WebGL2 and Canvas memory. Your source photos and exported maps never leave your computer, making it safe for NDA studio assets.
Yes. Because our normal map to height map is a deterministic local processing utility, you retain 100% of the rights to any textures you generate from your own photos or CC0 sources for commercial games, archviz, 3D printing, and client deliverables.
You can drop JPG, PNG, or WebP files into the normal map to height map and export lossless PNG textures up to 4096×4096 (4K). Where applicable for elevation and relief workflows, NormalMapAI also supports true 16-bit grayscale PNG export.
If your source photo has uneven lighting or hard border edges, run it through the NormalMapAI Seamless Texture Generator or Tileable Texture Generator first, then bring the tileable image into this normal map to height map so every derived channel repeats cleanly.
Only Base Color (Albedo) should use sRGB gamma encoding. Technical channels produced by a normal map to height map store linear math values (0.0 to 1.0 or XYZ vectors); leaving sRGB enabled applies a gamma curve that distorts reflections, slopes, and masks.
Desktop suites require gigabyte installs, Windows-only executables, or paid subscriptions. The NormalMapAI normal map to height map opens instantly on Windows, macOS, and Linux, giving you focused controls and live preview for quick single-map look-dev.
Yes. While this page is tuned specifically as a normal map to height map, you can switch tabs in the editor or open our PBR Texture Generator to export Albedo, Normal, Height, Roughness, AO, Metallic, and packed ORM ZIPs from the same source photo.
Start with one of the six built-in Poly Haven CC0 sample materials in the normal map to height map to see balanced defaults, then adjust threshold, contrast, or smoothing in small increments while watching the live viewport.
Yes. Any modern browser supporting WebGL2 or HTML5 Canvas on Windows, macOS, Linux, or Chromebook can run the NormalMapAI normal map to height map smoothly at interactive frame rates.