vec2
vec2
vec2 是着色器编程的基础节点,用于创建和表示由两个浮点数组成的二维向量。它主要用于处理 UV 纹理坐标、屏幕空间位置、2D 偏移或方向等数据。
核心优势
灵活的数据构造。vec2 节点能以多种方式创建二维向量:可以将两个独立的浮点数合并,也可以从单个浮点数扩展(如 `vec2(0.5)` 生成 `vec2(0.5, 0.5)`),或从更高维度的向量中提取分量,是构建和转换二维数据的核心工具。
常见用途
UV 坐标操作(平移、缩放)
程序化 2D 图案与 SDF (有向距离场)
构建更高维度的向量
如何调整
调整 `vec2` 的构造参数会直接改变其 x 和 y 的输出值。这个向量的用途决定了最终效果。例如,若该向量用作 UV 偏移,将 `vec2(0.1, 0)` 改为 `vec2(0, 0.1)` 会使纹理的移动从水平方向变为垂直方向。
代码示例
1// 从两个独立的 float 节点创建一个 vec2 偏移向量
2const offset = vec2( offsetX, offsetY );
3
4// 将创建的向量应用到 UV 坐标上以实现平移
5const pannedUVs = uv().add( offset );