mx_transform_uv
mx_transform_uv
对 UV 坐标进行二维的缩放和偏移变换,是实现纹理平铺、位移和图集选择的基础节点。
核心优势
将常见的 UV 变换(`uv * scale + offset`)封装为标准节点,允许在着色器中程序化地控制纹理映射,极大地提升了材质的灵活性和复用性。
常见用途
纹理平铺(Tiling)
纹理图集(Atlas)的局部选取
创建动态滚动纹理
如何调整
调整 `uv_scale` 参数可以控制平铺密度,例如 `vec2(5, 1)` 会在水平方向平铺5次。调整 `uv_offset` 参数可以平移纹理的位置。将 `uv_offset` 连接到一个 `timer` 节点可以创建持续滚动的动画效果。
代码示例
1// 创建一个 3x3 的平铺效果
2const transformedUV = mx_transform_uv( vec2( 3, 3 ) );
3const tiledColor = texture( myTexture, transformedUV );