materialSheenRoughness
materialSheenRoughness
提供材质光泽(Sheen)的最终粗糙度,该值已内置了将 `.sheenRoughness` 属性与 `.sheenRoughnessMap` 贴图(A通道)相乘的逻辑。
核心优势
其核心优势是封装复杂性:它将“从贴图的 Alpha 通道提取数据并与 float 值相乘”这一特定且易错的逻辑完全自动化,让开发者能轻松控制光泽的模糊度。
常见用途
区分丝绸(低粗糙度)和天鹅绒(高粗糙度)等不同织物。
使用贴图模拟布料的磨损或陈旧效果。
创建微纤维布或毛毡等具有柔和弥散光泽的材质。
创造性地模拟覆盖在物体表面的薄霜或灰尘。
如何调整
通过在 JavaScript 中修改 `MeshPhysicalMaterial` 的属性来配置。`.sheenRoughness` (0-1) 控制基础粗糙度。如果提供了 `.sheenRoughnessMap`,最终粗糙度为 `基础值 * 贴图Alpha通道值`,从而实现局部变化。
代码示例
1// 在物理光照模型中,materialSheenRoughness 用于光泽的 BRDF 计算
2const sheenBRDF = D_Charlie( materialSheenRoughness, dot( N, H ) );