Normal Map Generator

Free, in your browser, no sign-up

Normal Map Generator

Turn a texture, photo or sprite into normal, height, roughness, metallic, AO, edge and ORM maps. Tune them on a live 3D material, then download a set made for Unreal, Unity, Godot or Blender.

PNG, JPG or WebP. Large images are scaled to 2048 px. Transparent sprites keep their outline.

Try a sample

Free maps are made on your device. Nothing is uploaded unless you ask for an AI set.

Drag to turn, scroll to zoom.

Preview

Shape
Light

AI texture set

An AI model reads the material in your photo and returns base colour, normal, roughness, metalness and height. Preview and export it like the free maps.

Sign in to get a free AI set

Export for

File type

ZIP with BaseColor, Normal (DirectX), ORM packed, Height and a setup note.

Need maps from a real photo?

The free maps are worked out from brightness, which suits clean textures. For photos of real surfaces, AI texture sets read the material itself.

Free maps

Free

Runs on your device

  • 8 maps, including packed ORM
  • Ready-made sets for Unreal, Unity, Godot and Blender
  • Worked out from image brightness: best for clean textures and sprites
  • Unlimited, no account
Make maps

AI texture set

From $0.20 a set

1 free set when you sign up

  • Base colour, normal, roughness, height and metalness
  • Made by PATINA, an AI model built for PBR materials
  • Tells metal from non-metal parts, which brightness alone cannot
  • Packs of 15, 50 or 150 sets, valid for a year
Get a free AI set

What each map does

Normal map
Bends light across a flat surface so it reads as bumpy. The lavender-blue map engines expect. Normal map generator
Height map
Depth as greyscale: white is high, black is low. Drives displacement and parallax. Height map generator
Roughness map
Where the surface is matte or glossy. Crevices come out rougher than raised parts. Roughness map generator
Metallic map
Which parts are bare metal. Most textures are not metal at all, so it is usually black. PBR texture generator
Edge map
Raised edges light, cavities dark. Use it to add wear, dust or highlights along edges. PBR texture generator
Ambient occlusion
Darkens cracks and gaps that ambient light would not reach, for extra depth. PBR texture generator

Which setting for your engine?

Engines disagree on the green channel of a normal map and on how roughness, metalness and AO are packed. Pick your engine under Export and the ZIP follows its rules, with a note on where each file goes.

SoftwareNormal styleWhat the export gives you
Unreal EngineDirectX, green downBaseColor, Normal, packed ORM, Height
Unity Built-in and URPOpenGL, green upAlbedo, Normal, Metallic with smoothness in alpha, Occlusion
Unity HDRPOpenGL, green upBaseColor, Normal, Mask Map (metal, AO, detail, smoothness)
Godot 4OpenGL, green upAlbedo, Normal, packed ORM, Height
BlenderOpenGL, green upBase color, Normal, Roughness, Metallic, AO, Height
3ds Max, SubstanceDirectX or per projectEvery map separately, with the DirectX switch

Questions

Is it free?

Yes. Making and downloading normal, height, roughness and AO maps is free, with no sign-up and no watermark.

Is my image uploaded?

Not for the free maps: your browser makes them, and the image is not sent anywhere. Only when you ask for an AI texture set is a copy, at most 1024 px, sent to the AI provider; it is deleted within 24 hours.

How is the normal map made?

The image brightness becomes a height map, optionally smoothed, and the slope at every pixel becomes the normal. Light areas count as high unless you switch on Dark is high.

Will it tile?

Switch on Make seamless (under Base color) and the edges are blended so the image and every map repeat without a seam. Check it with Tiling in the 3D view or 2 × 2 on any map.

Why does my material look inside out?

Either dark parts of your image are the raised ones (switch on Dark is high) or your engine reads the other green channel (switch DirectX).

Does it work for 2D sprites?

Yes. Drop a transparent PNG and the outline is kept in every map, and the preview switches to a 2D light you move with the pointer, the way 2D engines light sprites.

What is ORM?

One image that packs ambient occlusion in red, roughness in green and metallic in blue. Unreal, Godot and glTF read it directly, which saves two texture slots.

What size can I use?

PNG, JPG or WebP. Images larger than 2048 pixels on the long side are scaled down to keep it fast.

Sign in to make AI texture sets

New accounts get 1 free AI set. Free maps never need an account.

No password is stored.

Get more texture sets

Pick a pack of texture sets to keep going. Each pack is a one-time payment.

Secure checkout by Stripe.See full pricing