metalness
metalness
提供材质的金属度,一个 0-1 的浮点值,用于在 PBR 工作流中决定材质是像塑料一样的电介质,还是像铬一样的导体。
核心优势
将底层的 Uniform 管理完全抽象化,并与 `material.metalness` 属性无缝集成,为 PBR 工作流提供了标准化的核心参数,极大简化了材质创建。
常见用途
创建标准的 PBR 材质,区分塑料、木材 (metalness=0) 与金属 (metalness=1)。
作为金属度贴图(metalnessMap)的全局强度控制器。
驱动从金属到石头的“石化”等艺术化过渡效果。
通过直接输出其值来调试模型的金属度分布。
如何调整
在 JavaScript 中修改 `material.metalness` 属性(0-1)。值为 0 时,材质为非金属,具有彩色漫反射和白色高光;值为 1 时,为金属,几乎没有漫反射,高光和环境反射会被基础色染色。
代码示例
1// 将从贴图采样的值与全局 metalness 属性相乘
2const finalMetalness = metalness.mul( texture( metalnessMap, uv() ).r );