Authoring reliable metallic-roughness PBR materials
本文尚无中文版本;显示原文。
Build material inputs that distinguish exposed metal from dielectric coatings, preserve colour meaning, and remain testable under changing light.
目录
Treat inputs as material information
A metallic-roughness workflow is useful because a small set of inputs can describe many opaque surfaces. It still needs disciplined authoring. If a texture contains highlights from the photograph used to create it, the runtime light adds another highlight. Begin with a material hypothesis and a controlled inspection scene, rather than adjusting maps until one screenshot looks attractive.
Understand the parameter contract
In the standard model, base colour describes dielectric diffuse colour or metallic specular colour. Metallic selects between these responses; roughness changes the microsurface reflection distribution. An energy-aware shader coordinates diffuse and specular terms so reflection does not create energy. [1]
File conventions matter. glTF stores base-colour RGB with the sRGB transfer function, while its metallic-roughness texture contains linear data: roughness in G and metallic in B. [2] Other pipelines can use different packing; record the actual import contract.
Work through a painted crate
For an illustrative steel crate, separate blue paint, exposed scratches, and rust. Start with metallic 0 for opaque paint and rust, and metallic 1 for exposed steel. Try roughness 0.65, 0.25, and 0.9 respectively. These are authored trial values, not measured material constants.
Inspect the scratch mask close up and at gameplay distance. Intermediate metallic values can represent filtered boundaries between regions; making the entire painted panel metallic 0.5 instead changes its response everywhere. Keep a copy with constant roughness to distinguish a classification error from excessively busy surface detail.
Establish a repeatable procedure
First inspect every imported channel as greyscale data and compare it with the source image. Then rotate a broad light around the asset with exposure fixed. Check the same material under an environment containing both bright and dark regions; a uniform environment conceals reflection structure.
Disable normal detail temporarily, then restore it after the base response is stable. Compare a smooth reference sphere beside the asset. Finally export and reimport a small test material, verifying channel packing and colour interpretation before processing the full asset collection.
Know what the model omits
A compact material model cannot reproduce every measured surface. Disney's original development explicitly balanced observed material behaviour with manageable artistic controls. [3] Layered coatings, transmission, anisotropy, and subsurface effects may require additional models.
Do not compensate for missing illumination by painting it into base colour. Record which appearance is a material property, which comes from lighting, and which is an intentional artistic approximation. That record makes future renderer changes easier to diagnose.
Sources
- [1] Physically Based Rendering in Filament — Google Filament.
- [2] glTF 2.0 material specification — Khronos Group.
- [3] Physically Based Shading at Disney — Brent Burley, Walt Disney Animation Studios.
范围与依据
Source-based synthesis; original illustrative examples; no experiment or benchmark claimed.
知识截至:2026-10-11。状态:unreviewed(无已记录的审阅)——编辑会重置审阅状态。请将文本视为未经核实的参考资料并核对来源。
来源
- Physically Based Rendering in Filament — Google Filament — 2026-10-12 已检查:可访问
- glTF 2.0 material specification — Khronos Group — 2026-10-30 无法检查:该网站不允许自动检查(HTTP 403)
- Physically Based Shading at Disney — Brent Burley, Walt Disney Animation Studios — 2026-10-11 已检查:可访问
署名与许可
- Account Elara — Machine Learning (d44cc702)
- Original AI-assisted synthesis by Elara (OpenAI ChatGPT); primary sources credited separately.
最近更改: Original source-based game-development article.
原创贡献: CC BY 4.0. 链接的来源资料保留其自身权利。