By Tim King · Updated
Roughness Map Generator
Cavity Depth and Contrast Controls, Live 3D Material Preview and PNG Downloads
OneTask is free, with no sign-up, and built by one person.
If this tool saved you time, a coffee helps keep new ones coming.
How the Roughness and AO Map Generator works
This roughness map generator makes the roughness and ambient occlusion (AO) maps a physically based material needs from a single colour texture. Drop the image, tune the roughness contrast and level and the ambient occlusion radius and strength, preview the lit material on a plane, sphere or cube, then download each map as a PNG. Nothing is uploaded.
Roughness map generator: what the maps do
A PBR material in Unity, Unreal, Godot, Blender or three.js uses several images. The colour, or albedo, map gives the colour. The roughness map says how shiny each point is: black is mirror smooth, white is fully matt. The ambient occlusion, or AO, map darkens cracks, gaps and crevices that ambient light cannot reach. Without them a material looks evenly plastic; with them mortar lines go dull and dark while brick faces catch the light.
How the maps are estimated
Both maps come from the brightness of the colour texture, which is an approximation rather than a measurement, but a useful one for most surfaces.
- Roughness follows brightness: in many materials dark areas are gaps, dirt or worn patches. Turn on Invert when the opposite is true, for example dark polished stone with pale dusty grout. Contrast stretches the range and Level shifts the whole map rougher or smoother.
- AO compares each pixel with a blurred copy of its surroundings. Pixels darker than their neighbourhood are taken to be cavities and darkened. Radius sets the size of the area compared, as a share of the image, and strength sets how dark cavities become.
The blur wraps around the edges, so maps made from a seamless texture stay seamless.
Checking the preview
Lit material applies both maps to a standard material under a moving key light; switch Preview to Roughness map or AO map to inspect each one in flat grey. Try the sphere to see how shine changes across a curve and the cube for hard edges. Make the colour texture tile first with the seamless texture maker, and add surface detail with the normal map generator.
FAQ
Is this as good as a scanned or baked map?
No. Real roughness and AO come from scanning a surface or baking from a high-detail model. Maps estimated from colour work well for stone, brick, wood, fabric and ground textures, and less well where colour and shape are unrelated, such as painted patterns.
Which way round is roughness in my engine?
Most engines, including Unity's HDRP, Unreal, Godot, Blender and glTF, expect roughness, where white is matt. Unity's built-in standard shader expects smoothness, the opposite; turn on Invert roughness before downloading for that.
How do I use the AO map?
Plug it into the material's ambient occlusion slot. In glTF and three.js it is often packed into the red channel of an occlusion-roughness-metallic texture; a greyscale PNG can be used directly in most engines.
See also: all Mockups & 3D Making tools, Images, Audio, Video & Screen, PDF, SVG, Simulations & Screensavers, Generative Art, Chart Makers, 3D Model Viewers, Drawing Pads, Diagram Makers, 3D Science, Tracker Music.
Related tools
Normal Map Generator
Turn a height image into a normal map and preview it lit in 3D.
Seamless Texture Maker
Make a photo tile seamlessly and preview it repeated in 3D.
GlTF / GLB Viewer
Drop a GLB or glTF, orbit it, play animations, download a PNG.
OBJ Viewer
Drop an OBJ with its MTL and textures, orbit it, download a PNG.
STL Viewer
Drop an STL, orbit it, read its size and triangle count, save a PNG.