Back to Blog
pbrtexturesmaterialsrendering

PBR Textures Explained: A Beginner's Guide to Realistic Materials

·todo3ds

What Is PBR?

PBR stands for Physically Based Rendering. Instead of artists faking how a surface reacts to light, PBR materials describe the physical properties of the surface (how rough it is, whether it is metal) and the renderer calculates the lighting.

The big benefit is consistency: a PBR material looks believable under any lighting, and the same texture set produces similar results in Blender, Unity, Unreal Engine, Three.js and most modern tools.


The Two PBR Workflows

There are two common ways to describe PBR materials:

  • Metallic/Roughness: the most widely used workflow today. It is the default in Blender's Principled BSDF, Unreal Engine, Unity's Standard and URP/HDRP Lit shaders, and it is the core material model of glTF/GLB.
  • Specular/Glossiness: an older workflow that was popular in some engines and texturing tools. It is still found in legacy assets but is less common in new projects.

The rest of this guide focuses on metallic/roughness.


The Core Texture Maps

Base Color (Albedo)

The pure color of the surface, without lighting or shadows baked in. For metals, it defines the color of the reflection (gold, copper). Keep it free of strong shadows, or the lighting will look wrong.

Roughness

A grayscale map that controls how sharp or blurry reflections are. Black means smooth and mirror-like; white means rough and matte. Roughness variation (fingerprints, scratches, worn edges) is one of the most important ingredients of realism.

Metallic

A grayscale map that says whether each part of the surface is metal (white) or not (black). In real-world materials it is almost always pure black or pure white; gray values are mainly used for transitions such as dirt on metal.

Normal Map

A purple-blue image that fakes small surface details such as bumps, seams and screws by changing how light hits each pixel. It adds detail without adding polygons. Be aware of the two conventions: OpenGL (Blender, Unity, glTF) and DirectX (Unreal Engine). If your details look inverted, flip the green channel.

Ambient Occlusion (AO)

A grayscale map with soft contact shadows in cracks and crevices. Many engines use it to darken indirect lighting. In glTF it is often packed into the red channel of a combined texture.

Optional Maps

  • Height / Displacement: real geometric displacement or parallax; heavier than a normal map.
  • Emissive: parts that glow, like screens or LEDs.
  • Opacity / Alpha: transparent or cut-out areas such as leaves or fences.

Channel Packing

To save memory, engines often store several grayscale maps in the channels of a single image:

  • glTF / GLB: occlusion in red, roughness in green, metallic in blue (often called an ORM texture).
  • Unreal Engine: commonly the same ORM layout, by convention.
  • Unity HDRP: a "mask map" with metallic in red, AO in green, detail mask in blue and smoothness (the inverse of roughness) in alpha.

When a model's textures do not look right in a new engine, a different packing convention is often the reason.


Blender: connect each map to the Principled BSDF. Set roughness, metallic, AO and normal maps to Non-Color color space, and route the normal map through a Normal Map node.

Unity: assign maps to the Lit shader of your render pipeline. Mark normal maps as "Normal map" in the import settings, and remember that Unity uses smoothness, so you may need to invert roughness.

Unreal Engine: create a material, plug in base color, normal and the packed ORM texture (splitting channels to AO, roughness and metallic). Disable sRGB on data textures.

Web (Three.js, model-viewer): export to GLB and the PBR maps travel inside the file, already in the right format.


Texture Resolution Tips

  • Use 4K for hero assets seen up close, 2K for most props and 1K or less for small or distant objects.
  • Keep the same texel density across objects in a scene so detail looks consistent.
  • For web and mobile, compress textures (KTX2/Basis Universal for glTF) to cut download size and GPU memory.

Find Models With PBR Materials

Many models on todo3ds include full PBR texture sets ready for Blender, Unity, Unreal and the web. Check the "Textures" field in each product's specifications.

Browse 3D models with PBR textures →