Free Normal Map Generator: Turn a Photo Into Normal, Height and Roughness Maps (No Sign-Up)
by EmmaReedMakes in Workshop > 3D Printing
12 Views, 0 Favorites, 0 Comments
Free Normal Map Generator: Turn a Photo Into Normal, Height and Roughness Maps (No Sign-Up)
3D Valley's free normal map generator (https://3dvalley.com/tools/create/image-to-normal-map) turns one photo of a surface into the maps a renderer needs: normal, height, roughness and occlusion. It's free on a daily allowance and needs no account, login or email. This Instructable takes a wall, floor or tile photo to a ready material set for Blender, Unity, Godot or Unreal in about a minute.
What you get:
- Four maps from one photo: normal, height, roughness and ambient occlusion.
- AI reads depth from the shapes, not from brightness, so painted bricks and light mortar come out the right way round.
- About ten seconds per run on a free shared GPU, at the photo's size up to 2048 pixels.
- Height map saved as a 16-bit PNG, good for bump or displacement.
- Strength, occlusion darkness and OpenGL or DirectX normals adjust in the browser afterwards, with no second run.
- Tileable photos give tileable maps.
- Download one map as a PNG or the whole set as a zip.
- Best for: game textures, Blender materials, archviz floors and walls, scanned surfaces.
Supplies
- A web browser
- A photo of a flat surface (bricks, stone, wood, fabric, concrete), shot straight on in even light
- 3D Valley's free normal map generator: https://3dvalley.com/tools/create/image-to-normal-map
- Blender, Unity, Godot, Unreal or any renderer that takes PBR maps
Open the Generator and Pick a Photo
Open https://3dvalley.com/tools/create/image-to-normal-map. There's no sign-up screen. Drop in a photo of a surface, or use one of the built-in samples under "No photo? Try one" (bricks or cobblestones) to see how it behaves first.
The photo matters more than any setting. Shoot straight at the surface, not at an angle, with soft light and no hard shadows. A texture from a pack or a scan works too.
Make the Maps
Click Make maps. The photo goes to 3D Valley's GPU for that run and isn't kept, and the maps come back in about ten seconds.
Here's what makes this better than the old brightness trick that tools like CrazyBump and Materialize use. A model trained on textures decides what is raised and what is sunk from the shapes. White mortar between red bricks would read as high with the brightness method. Here the bricks stand out and the joints sink, as they should.
Tune Strength, Occlusion and the Normal Convention
Now adjust on the finished maps. These controls run in your browser, so they're instant and don't use any free GPU time:
- Strength: how deep the bumps look.
- Occlusion: how dark the crevices go.
- OpenGL or DirectX: Blender, glTF, three.js, Godot and Unity use OpenGL. Unreal and 3ds Max use DirectX. If the bumps look inside out under some lights, you picked the wrong one. Flip it here instead of fixing it in the engine.
Download and Plug the Maps In
Click any map thumbnail to download that one map as a PNG, or grab the zip for the full set. In Blender, the setup is quick:
- Photo into Base Color.
- Normal map through a Normal Map node into Normal.
- Roughness map into Roughness (set it to Non-Color).
- Height map into a Bump node for cheap detail, or a Displacement node for real depth on a finely subdivided mesh.
Once the material looks right, render a still of it on a simple object. If you want that still to move, Upsampler's free AI video generator (https://upsampler.com/free-video-generator-no-signup) can turn it into a short clip without an account.
Fix Seams If It Doesn't Tile
Every model and filter on the page wraps around the edges, so a tileable photo gives tileable maps. If your photo has a seam, the report says so. Use the page's Texture generator tab to repaint the photo as one that tiles, then bring it back with "Adjust the maps". The texture generator can also paint an evenly lit surface from a short description if you have no photo at all.
Honest Limits and FAQ
Honest limits:
- The AI runs on a free daily allowance per visitor. When it's used up, the page says when it comes back. The in-browser controls keep working.
- Maps come out at the photo's size, capped at 2048 pixels.
- It's for surface textures, not terrain. A mountain or island heightmap needs elevation data and a terrain tool.
- Photos with strong shadows or a steep angle give weaker maps. Reshoot straight on if the result looks smeared.
FAQ
Is the normal map generator free?
Yes. It runs on a free daily allowance per visitor with no sign-up.
Do I need an account?
No. No sign-up, login or email. Open the page and drop in a photo.
Can I use the height map for displacement?
Yes. As a bump map it only changes shading. As a displacement map it moves the surface, which needs a finely divided mesh.
Should I pick OpenGL or DirectX?
OpenGL for Blender, Unity, Godot, glTF and three.js. DirectX for Unreal and 3ds Max.
Is my photo stored?
It's sent to the GPU when you click Make maps, at up to 2048 pixels, and the page says it isn't kept. Adjustments after that happen in your browser.