
Real-time preview in the height map to normal map
Watch every slider adjustment update immediately on the canvas or 3D preview inside this height map to normal map before you download via this height map to normal map.
Free · Local processing · No sign-up
Use the NormalMapAI height map to normal map converter to compute multi-scale X/Y surface gradients from 8-bit or 16-bit elevation images.

Loading 3D preview…
Ctrl + scroll to zoom
Sample textures: Poly Haven (CC0)
WHAT
A height map to normal map converts a surface image into production-ready material data: specifically, our height map to normal map lets you convert any 8-bit or 16-bit grayscale height map, DEM terrain elevation or ZBrush alpha into a crisp tangent-space normal map (OpenGL or DirectX). NormalMapAI runs this height map to normal 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 height map to normal map.
Whether you are building materials for Blender, Unreal Engine 5, Unity, Gaea, World Machine and ZBrush pipelines, this height map to normal map eliminates slow round-trips to heavy desktop suites. Under the hood, the height map to normal map uses multi-scale Sobel/Scharr X/Y derivative filtering with adjustable pre-blur and handedness control so every pixel stays mathematically accurate for physically based shaders inside our browser-based height map to normal map.
Unlike single-purpose scripts that output blind files, the NormalMapAI height map to normal map keeps an interactive viewport open while you drag sliders. You can pair this height map to normal 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 height map to normal map.
Because the height map to normal map executes on your own GPU and CPU, confidential studio scans and client product shots never leave your machine. Open the height map to normal 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 height map to normal map.

WHY

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

Outputs from the height map to normal map follow strict linear/sRGB and channel conventions for Blender, Unreal Engine 5, Unity, Gaea, World Machine and ZBrush pipelines via this height map to normal map.

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

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

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

Skip gigabyte installers — bookmark this height map to normal 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 height map to normal map — 100% local in your browser.

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

Adjust the dedicated sliders in the height map to normal map — powered by multi-scale Sobel/Scharr X/Y derivative filtering with adjustable pre-blur and handedness control — to dial in exact contrast, threshold or orientation using the height map to normal map.

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

Click download in the height map to normal map to save your file locally, or continue into the PBR texture generator for a complete engine-packed ZIP using the height map to normal map.
Four production workflows where a dedicated height map to normal map saves time and fixes shader artifacts.
Convert grayscale terrain elevation exports into crisp tangent-space normals using our height map to normal map converter so distant mountains catch sharp sunlight.
Turn sculpted grayscale alphas and ornaments into lightweight normal decals with the height map to normal map tool instead of subdividing millions of polygons.
Drop Voronoi, Perlin or brick height patterns into the height map to normal map converter to preview and export OpenGL or DirectX normal maps.
Increase pre-blur slightly in the height map to normal map converter so crisp black-and-white logos gain smooth, catch-light beveled edges.
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 height map to normal 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 height map to normal map runs entirely on-device and exports clean files in seconds.
Pairing the seamless tool with this height map to normal map on the same site streamlined our whole look-dev loop.
Anonymous scenario feedback · illustrative, not customer testimonials
Scroll up to the live height map to normal map — upload a photo, tune under 3D lighting, export locally. The height map to normal 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 Normal Map to Height Map Converter
Reconstruct a continuous 8-bit or 16-bit grayscale height and displacement map from any tangent-space normal m…
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…
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 height map to normal 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 height map to normal map that runs 100% locally in your browser with zero login and no watermark. You can convert any 8-bit or 16-bit grayscale height map, DEM terrain elevation or ZBrush alpha into a crisp tangent-space normal map (OpenGL or DirectX) and export lossless PNGs for Blender, UE5, and Unity.
Our height map to normal map processes your uploaded image locally using multi-scale Sobel/Scharr X/Y derivative filtering with adjustable pre-blur and handedness control. Every slider change recalculates the output in real time so you can inspect the exact response before downloading.
Export the PNG from the NormalMapAI height map to normal map and import it into Blender, Unreal Engine 5, Unity, Gaea, World Machine and ZBrush pipelines. Set the texture Color Space to Non-Color / Linear (uncheck sRGB) before wiring it to your shader.
No. The NormalMapAI height map to normal 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 height map to normal 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 height map to normal 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 height map to normal map so every derived channel repeats cleanly.
Only Base Color (Albedo) should use sRGB gamma encoding. Technical channels produced by a height map to normal 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 height map to normal 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 height map to normal 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 height map to normal 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 height map to normal map smoothly at interactive frame rates.