PLAYTEX Blog

How to Create a Production-Ready PBR Texture Set

A complete production workflow from material reference and physical scale through map authoring, engine import, compression, validation, and handoff.

PBR texturesmaterial workflowgame developmenttexture validation
A production checklist connecting material reference, PBR maps, engine import, and final validation

Key Takeaways

  • Production-ready describes behavior in a target project, not the presence of a particular list of files.
  • Reference, physical scale, and shader contract should be decided before map generation.
  • Validate map relationships under changing light before optimizing resolution and compression.
  • The handoff should include source context, export preset, and engine evidence so another person can revise the material.

Who Informed This

A start-to-finish acceptance workflow focused on the technical evidence needed to call a material ready for a specific game project.

How It Was Evaluated

The material is tested on standard shapes and a production mesh under multiple lights, then rechecked after target-engine import, mip generation, and compression.

Proof And Evidence

PLAYTEX may create source images and map drafts; the production-ready judgment is made after the target-engine checks described here.

Limits And Caveats

This workflow covers common metallic-roughness materials. Hair, skin, glass, clear coat, anisotropy, transmission, and custom shaders need additional data and tests.

A folder becomes a production-ready material only when a specific shader can interpret it correctly within the project's visual and memory budgets. Six beautifully named PNG files are a promising start, not a shipping certificate.

Use this workflow for common metallic-roughness materials such as wood, stone, painted metal, fabric, soil, and architectural surfaces.

1. Define the target and physical scale

Write down the destination engine, render pipeline, shader, intended object, and physical size of one texture tile. A one-meter wall tile and a ten-centimeter prop tile can use the same resolution but should not show the same grain size.

Record the expected map contract. Does the shader use roughness or smoothness? Does it expect an OpenGL- or DirectX-oriented normal? Are AO, roughness, and metallic packed together? Which inputs are optional?

2. Gather reference by property

One attractive photograph is not enough. Gather references for color, relief, wear, reflectivity, edges, and scale. A wet stone photo can teach color variation while giving misleading roughness. A studio product photo can reveal form while hiding the surface in a softbox reflection.

Separate what the material is from what happened to it. Bare steel, paint, rust, dust, and water each have different map behavior even when they occupy one surface.

3. Build the base structure

Establish large forms before adding noise. For brick, set unit size and mortar. For wood, set plank and grain direction. For woven fabric, set weave density. For a unique prop, confirm UV layout and texel density.

Test a repeating material early. It is cheaper to fix a structural seam before scratches, dirt, and map derivation depend on it.

4. Author maps by meaning

  • Base color: pigment and material color without baked scene lighting.
  • Normal: shallow surface direction; check strength and Y orientation.
  • Roughness: micro-surface reflection spread, based on material condition.
  • Metallic: exposed metal versus dielectric layers.
  • AO: restrained local occlusion where the shader needs it.
  • Height: relative elevation for workflows that actually consume it.
  • Emission or opacity: only when the asset requires those behaviors.

Generated maps are drafts. If a color seam appears identically in normal, roughness, height, and AO, the process may be copying source contrast rather than interpreting material properties.

5. Validate the set before export

Use a neutral scene with a plane, sphere, and beveled object. Rotate a hard light. Switch to a broad environment. Tile the material at 2-by-2 and 8-by-8. View each map directly.

Look for these failures:

  • Normal detail points inward or sparkles at grazing angles.
  • Roughness follows color brightness without physical reason.
  • Metallic contains broad mid-gray noise on wood, stone, or paint.
  • AO creates dark outlines that remain under every light.
  • A memorable feature repeats in a visible grid.

6. Export for the actual shader

Use a versioned export preset. Include file suffixes, packed-channel layout, normal orientation, bit depth, and resolution. Sample base color with its expected color conversion. Treat normal, roughness, metallic, AO, height, and masks as numeric data.

Keep a lossless or high-quality source package. Runtime compression belongs in the destination pipeline, where target platform and quality settings are known.

Delivery decisionRecord in the presetFailure when omitted
Color treatmentColor input versus numeric dataRoughness or normals are changed by color conversion.
Normal conventionOpenGL or DirectX Y orientationRelief appears inverted under moving light.
Channel packingMeaning of red, green, blue, and alphaThe shader reads the right values from the wrong channels.
Resolution/compressionTarget platform and texture classMemory is wasted or fine detail breaks after import.

7. Import, compress, and inspect again

Assign the project's real texture types and shader inputs. Let the engine build mipmaps and runtime compression. Then inspect the material at gameplay distance, not just in the texture inspector.

Resolution should follow visible texel density and camera distance. A 4K source may correctly become a 1K runtime asset. Conversely, a large hero object may need more detail or tiled layers rather than one enormous unique texture.

8. Package the handoff

Deliver the approved maps with the source reference, physical scale, export preset version, target shader, and at least one engine screenshot. Record intentional exceptions such as stylized roughness or a nonstandard packed map.

Another artist should be able to answer why the material looks the way it does and how to revise it. That is the practical meaning of production-ready: correct enough to ship, clear enough to maintain, and tested where it will be used.

Sources

About the author

PLAYTEX Editorial Team

Technical documentation focused on texture authoring, material validation, and engine handoff.

Read the PLAYTEX editorial policy