materialLineDashOffset
materialLineDashOffset
提供对当前材质虚线偏移量(dash offset)的访问,用于在 TSL 节点图中读取或驱动虚线图案的起始位置。
核心优势
将虚线偏移量暴露给 TSL 节点图,允许其由其他节点(如时间、噪声)在 GPU 端进行程序化控制,从而轻松实现动态、交互式的虚线动画,而无需在 CPU 端手动更新。
常见用途
通过连接时间节点创建滚动的虚线动画,用于表示数据流或行进路线。
根据用户交互状态(如悬停)改变偏移,提供视觉反馈。
结合加载进度值,模拟数据传输或加载动画。
通过连接噪声节点,为手绘风格的线条添加不规则的抖动效果。
如何调整
该节点本身是只读的。要控制虚线偏移,需在创建 `lineDashedMaterial` 时,为其 `dashOffset` 属性提供一个节点(如 `timerLocal`、`uniform`)。改变这个输入节点的值会使虚线图案沿着线条方向“滚动”或“移动”。
代码示例
1// 在材质定义中,将一个随时间变化的节点连接到 dashOffset 属性
2const animatedDashOffset = timerLocal( 1 ).mul( -2 ); // 每秒滚动2个单位
3
4const dashedMaterial = lineDashedMaterial( {
5 dashOffset: animatedDashOffset
6} );