sampler
sampler
将一个 THREE.Texture 或 TextureNode 转换为着色器内部可用的采样器(Sampler)类型,是进行纹理采样的前置步骤。
核心优势
通过统一和抽象不同来源的纹理,它实现了声明式的编程风格,让开发者无需关心底层的 GLSL sampler 声明和数据绑定,从而简化了节点图的构建。
常见用途
基础纹理贴图
程序化纹理的再利用
多纹理混合与分层
如何调整
该节点本身没有可调参数,其视觉效果完全通过改变提供给 `.uv()` 方法的 UV 坐标节点来调整。例如,将 UV 坐标乘以一个常数(`uv().mul(4)`)可以实现平铺;将时间变量添加到 UV 坐标(`uv().add(vec2(timer, 0))`)可以实现滚动动画;使用噪波节点扰动 UV 坐标(`uv().add(noise)`)则可以创造水波或热浪等失真效果。
代码示例
1// 将纹理转换为采样器,并用 uv() 节点进行采样
2const colorSample = sampler( myColorTexture ).uv( uv() );