Fix Textures and Materials on a Generated Asset
Separate the colour that belongs to a surface from the lighting baked into it, build the PBR channels a renderer actually needs, and bake detail from the dense mesh onto the clean one.
Learning objectives
- Recognise baked lighting and understand why it breaks relighting
- Build the PBR channels a modern renderer expects
- Bake detail from a dense mesh onto a clean one
- Check a material under more than one lighting condition
ToolDix original visual
Frame
Name the outcome and constraints.
Build
Try one bounded workflow.
Review
Keep evidence, revise, and share.
A generated asset usually arrives with a single colour texture that looks convincing in the preview and falls apart the moment you put it in a real scene. Two problems cause almost all of it: the lighting from the capture is painted into the texture, and there is only one channel where a renderer expects four or five.
Baked lighting is the defining problem
Photogrammetry and image-based generation produce a texture containing whatever light was present. Shadows under a ledge, a highlight on a shoulder, ambient occlusion in a crease — all of it becomes surface colour, permanently.
Move that asset into a scene lit from the other side and the result is incoherent: a painted shadow on the lit side, a painted highlight in shadow. The eye reads this as wrong immediately without being able to say why. It is the clearest signal that an asset was captured rather than authored, and it is why a model that looked great in the scanning app looks cheap in an engine.
What a renderer needs is albedo — the colour a surface would be under perfectly even light, with no shadow and no highlight information at all. Getting there is called delighting.
Three approaches, in order of preference: capture flat in diffuse light so there is little to remove; use a delighting tool, which estimates and removes the lighting and works reasonably on diffuse surfaces and poorly on shiny ones; or paint it out manually, which is reliable and slow.
The strong preference for the first option is why the capture lesson insists on overcast light. Delighting is a repair for a problem you can mostly avoid.
One texture is not a material
Modern rendering describes a surface with several maps, each answering a different physical question. A generated asset typically supplies only the first.
Base colour (albedo) — the surface's own colour, delit.
Roughness — how sharply the surface reflects. This is the channel with the largest effect on perceived material, and its absence is why generated assets look uniformly plastic. Everything real varies: worn edges are smoother, dust is rougher, fingerprints are visible in roughness long before they are visible in colour.
Metallic — whether the surface is a metal. Nearly binary in practice; the values in between are for transitions and coatings.
Normal — surface detail faked through shading, letting a low-polygon mesh carry the fine structure of a dense one.
Ambient occlusion — contact darkening in creases, which the renderer uses subtly rather than as painted shadow.
Height or displacement — real geometric offset, for the detail that must show in silhouette.
The efficient route is rarely to author these from scratch. Derive a first-pass roughness from the albedo — dark, worn, and dirty areas are usually rougher — then correct by hand where it matters. Getting roughness even approximately right transforms an asset more than any other single change.
Bake detail from the dense mesh onto the clean one
Retopology gives you a clean low-polygon mesh and, in exchange, loses the fine surface detail that lived in the dense one. Baking transfers that detail back as texture.
The sequence: keep the original dense mesh; place the clean mesh over it in the same space; cast rays from the clean surface to find the dense surface; and record what is found into the clean mesh's UV space. Normal maps, ambient occlusion, colour, and curvature all transfer this way.
Two settings cause most bake failures. Cage or ray distance controls how far the rays search — too short and detail is missed, too long and the ray finds the wrong surface, which produces the characteristic smeared artifacts. Normal map space and orientation conventions differ between engines, and a green channel pointing the wrong way makes every surface detail read as inverted. Both are five-second fixes once you recognise them and hours of confusion when you do not.
Bake at a higher resolution than you need and downsample. Rebaking is slow; downsampling is instant.
Check under more than one light
The final test is not a beauty render. Put the asset under three conditions: a bright directional key, a dim ambient environment, and something coloured. Rotate it fully in each.
Baked lighting reveals itself immediately under the directional key, since painted shadows will not move. Missing roughness variation reveals itself in the ambient setup, where everything reads as the same plastic. Seams reveal themselves under grazing light more than under flat light.
Then compare against a reference photograph of a similar real material. The gap is nearly always in roughness, and nearly always in the same direction: generated materials are too uniform.
Practice
Take one generated asset with a single baked texture and rebuild its material. Delight the albedo, derive a roughness map and correct it by hand in three places, bake a normal map from the dense original, and add ambient occlusion.
Render the before and after under all three lighting conditions. The difference is the argument for doing this work, and once you have seen it once, the checklist takes twenty minutes per asset rather than an afternoon.
Common mistakes
Shipping baked lighting. The clearest sign of a captured asset, and it cannot be fixed downstream.
Leaving roughness flat. Uniform roughness is why generated assets look like plastic regardless of how good the colour is.
Baking at final resolution. Always bake high and downsample.
Judging materials in one light. Every material looks fine under the light it was captured in.
Sources and license context
These references informed the lesson. ToolDix adds its own explanation, workflow, and practice rather than reproducing source material. Every link below leaves ToolDix and opens the publisher's own site in a new tab.
- threestudio (opens github.com in a new tab)External · github.com (Apache-2.0)
- Blender Manual (opens docs.blender.org in a new tab)External · docs.blender.org (CC BY-SA 4.0)
Keep going
Read these next on ToolDix.
Original lessons that build on what you just read.