twirl

What PBR maps actually are

September 1, 2026·twirl

Albedo, normal, roughness, metallic, and height: what each map does, which color space it needs, and how they fit a Principled shader.

PBR maps are the files a renderer uses to shade a surface under any light.

Most game and film pipelines want some mix of albedo, normal, roughness, metallic, and height. twirl writes all five as tileable PNGs from a text prompt. If you already know the maps, skip to the table. If a download ever looked wrong in Blender, it was probably color space or the green channel.

The set

Map What it stores Color space
Albedo (base color) Color with lighting removed sRGB
Normal Bump as RGB vectors Non-Color
Roughness Gloss vs matte Non-Color
Metallic Dielectric vs metal Non-Color
Height Displacement Non-Color

Albedo is the only one that should look like a photograph of the material in flat light. The rest look ugly on purpose. Roughness is a grey smear, metallic is almost black with white metal bits, and height reads like a landscape.

What people mix up

Albedo and diffuse do the same job in a metal/rough workflow. Do not leave baked shadows or specular in it.

Normal fakes detail in the lighting. Height actually moves the silhouette if you plug it into displacement. Use both if you want close-ups to hold.

Roughness and smoothness are the same map, inverted. Blender and Unreal want roughness. Unity URP/HDRP often wants smoothness, so invert before you pack a Mask Map.

OpenGL and DirectX normals disagree on the green channel. Blender is usually OpenGL. Unreal is DirectX. If a brick looks dented in instead of out, invert green.

Where they plug in

On a Principled BSDF, albedo goes to Base Color, roughness to Roughness, metallic to Metallic, and the normal through a Normal Map node. Height goes through Displacement, not the color socket.

Make a set in twirl if you need a surface that is not already in a scan library.