anisotropy
anisotropy
在 TSL 着色器中创建一个名为 `Anisotropy` 的浮点型参数,用于控制材质高光的拉伸程度,以模拟拉丝金属、头发或丝绸等各向异性表面的独特光泽。
核心优势
将极其复杂的各向异性光照物理模型,抽象为一个从 0 (各向同性) 到 1 (完全各向异性) 的直观参数,极大地简化了高级真实感材质的创建。
常见用途
渲染拉丝金属表面,如不锈钢厨具或电子产品外壳。
为角色创建逼真的头发或毛发,其高光呈条状而非点状。
模拟丝绸、天鹅绒等高级织物随光线流动的光泽。
为带有清漆的木纹或碳纤维表面增加点睛的、被拉伸的高光效果。
如何调整
在 JavaScript 中修改 `material.anisotropy` 的值(范围 0-1)。值为 0 时,高光是标准的圆形;随着值增加,高光被逐渐拉伸成椭圆;当值为 1 时,高光会变成一条锐利的长条光带,呈现出典型的拉丝金属效果。
代码示例
1// 将 anisotropy 节点连接到材质的各向异性输入端
2// 其值将由 JS 端的 material.anisotropy 控制
3material.anisotropyNode = anisotropy;