iridescenceThickness
iridescenceThickness
定义虹彩效应中薄膜的厚度,这是控制最终干涉色的最直接、最敏感的参数。
核心优势
其核心优势是灵活性。它提供了一个统一的输入,既可以接受一个用于均匀厚度的常量浮点数,也可以更强大地接受一个用于可变厚度的纹理或噪声节点,这是创建逼真、流动虹彩效果的关键。
常见用途
使用动画噪声或纹理贴图来模拟流动的肥皂泡或油膜。
使用常量浮点数创建均匀的镀膜效果(如镜头镀膜)。
通过使用纹理贴图来“绘制”厚度变化,从而渲染氧化的金属。
通过将 `TimerNode` 连接到厚度计算中来驱动程序化动画。
如何调整
为 `material.iridescenceThickness` 赋一个节点。一个 `float` 节点会根据该特定厚度创建一种均匀的颜色。一个 `texture` 或 `noise` 节点则会创建彩虹图案,其中灰度值映射到厚度,随着值的变化,颜色会按照牛顿色环的光谱顺序循环。
代码示例
1// 使用动画噪声纹理来模拟流动的、可变的厚度
2const thicknessMap = noise( uv().add( timer.mul( 0.1 ) ) );
3
4// 将动画贴图连接到材质的厚度属性
5material.iridescenceThickness = thicknessMap;