Image to Roughness Converter

Image to Roughness

Extract a grayscale roughness map from your texture image. Control contrast, brightness, and inversion for perfect PBR materials. Real-time 3D preview. All processing happens locally in your browser.

Drag & drop your texture here or browse
Supports PNG, JPG, WebP, BMP

Generated Maps

texture

Roughness Map

3D Preview

Click and drag to rotate • Scroll to zoom

Preview Settings

Sphere
Sphere
Rounded Cube
Plane
#ffffff
#1a1a1a

How It Works

1

Upload texture

Drag and drop any image file: PNG, JPEG, WebP, or BMP. The tool loads your texture map for luminance analysis. Nothing is uploaded to a server.

2

Tune Roughness

Adjust contrast to separate rough and smooth areas, tweak brightness to shift the overall range, and toggle inversion to flip rough/smooth mapping. All changes update instantly.

3

Preview & Download

Inspect the roughness map on a 3D sphere with adjustable lighting. Download the map as a PNG to use in Unity, Unreal Engine, Blender, or any PBR workflow.

Algorithm Breakdown

The roughness map is generated using luminance analysis of your texture image. Here's how each control affects the output.

Luminance Extraction

The tool calculates the perceived brightness (luminance) of each pixel using the ITU-R BT.601 formula: 0.299×R + 0.587×G + 0.114×B. This mirrors human perception of brightness across color channels.

Contrast & Brightness

Contrast stretches or compresses the luminance range around the midpoint. Brightness shifts the entire range up or down. Together they let you control how much variation exists between rough and smooth regions.

Inversion (Dark = Smooth)

By default, dark areas = rough, light areas = smooth. Flipping the Invert toggle reverses this: dark areas become smooth and light areas become rough. Useful for matching different PBR convention.

Real-time 3D Preview

The generated roughness map is applied to a Three.js mesh alongside your texture. Rotate, zoom, and adjust lighting to verify the roughness map before downloading.

Tutorial: Creating a Roughness Map from a Photo

Follow this quick workflow to turn any photo or texture texture into a usable roughness map for PBR materials.

1

Choose Your Source Image

Upload a high-resolution photo or texture texture. Best results come from well-lit, evenly exposed images. Avoid extreme shadows or overexposed areas since the algorithm works with luminance values. Balanced exposure helps produce accurate roughness maps.

2

Dial in Contrast & Brightness

Start with contrast at 1.0. For metallic surfaces, push contrast to 1.5–2.0 and add slight negative brightness (−0.1 to −0.2) so shiny metal areas become darker (smoother). For organic surfaces like wood or fabric, lower contrast to 0.7–0.9 and push brightness slightly positive.

3

Verify in 3D & Export

Check the 3D preview: rotate the model and observe how light scatters. Smooth areas should show tight reflections, rough areas should scatter light diffusely. When satisfied, download the roughness map as PNG. For a complete PBR material set, combine with other maps using the Image to PBR Generator.

Related Texture Tools

The Image to Roughness converter is one step in a complete PBR material workflow. Combine it with these free tools.

Image to PBR
Generate all PBR maps (roughness, metallic, normal, height, AO) from a single image at once.
Image to Metallic
Generate metallic maps from texture using saturation and hue analysis.
Texture Channel Mixer
Pack roughness, metallic, and AO into a single ORM RGB texture for performance.
Color Correction
Adjust brightness, contrast, saturation, and hue on your roughness map before export.
Seamless Texture Maker
Make your roughness map tileable with edge-blending algorithms and live preview.
Image to Normal Map
Generate a normal map from your texture to pair with the roughness map.

Frequently Asked Questions

A roughness map controls how smooth or rough a surface appears in PBR (Physically Based Rendering) materials. Dark areas represent smooth surfaces with sharp, mirror-like reflections, while light areas represent rough surfaces with blurry, scattered reflections. It is one of the two core maps in the metallic-roughness PBR workflow alongside the metallic map.
Yes! Check the "Invert (Dark = Smooth)" option to flip the logic: dark areas become smooth and light areas become rough. This is useful for materials where bright textures should be rougher, or when you need the map to match an inverted workflow where roughness is encoded as glossiness or smoothness.
Start at 1.0 for natural roughness mapping. Increase to 1.5–2.0 for more dramatic differences between rough and smooth areas, or decrease below 1.0 for subtle roughness variation. Adjust alongside the brightness slider (−0.5 to +0.5) to shift the overall roughness range up or down. For metallic surfaces, keep the map mostly dark (smooth); for organic materials like wood or fabric, push values toward lighter (rough).
Roughness and glossiness are inverses of each other. A roughness map where white = rough and black = smooth is equivalent to a glossiness map where white = glossy and black = matte. Many game engines like Unity use smoothness/glossiness, while Unreal Engine and most PBR tools use roughness. Use the Invert toggle to quickly convert between the two conventions.
No. All roughness map generation happens entirely in your browser using JavaScript and the Canvas API. Your images never leave your computer, ensuring complete privacy and security. There are no server-side processing steps for this tool everything is client-side.
Download the roughness map as PNG and import it into your 3D software or game engine. Connect it to the Roughness input of your PBR material. In Unreal Engine, plug it into the Roughness pin. In Unity (HDRP/URP), it goes into the Smoothness input you may need to invert it first. In Blender, connect it to the Roughness socket of the Principled BSDF shader. In Substance Painter, add it to the Roughness channel.
Yes, this tool is 100% free with no limitations, watermarks, or sign-up requirements. All processing happens locally in your browser for maximum privacy and speed. Generate as many roughness maps as you need with no daily limits.