output
output
代表片元着色器的最终颜色输出,是所有颜色计算的终点,决定了屏幕上每个像素的最终颜色。
核心优势
它提供了一个标准化的输出通道,将底层的 GLSL 变量(如 `gl_FragColor`)抽象为统一的 `material.colorNode` 属性,并能无缝集成到 Three.js 的渲染管线中(如色调映射、颜色空间转换),极大地简化了开发。
常见用途
承载材质光照、纹理等计算后的最终颜色。
在后期处理中输出经过滤镜处理后的颜色。
用于调试,通过直接输出法线、UV等中间数据来可视化着色器状态。
如何调整
output 节点本身不可调整,其视觉效果完全由赋给 `material.colorNode` 的节点决定。例如,赋给它一个 `texture()` 节点会显示纹理;赋给它 `normalWorld` 节点会显示法线颜色以供调试;赋给它一个动态的 `timer()` 节点则可以创造动画效果。
代码示例
1// 将节点赋给 material.colorNode,TSL 会将其连接到最终的 'output'。
2// 此处为调试目的,将 UV 坐标可视化为颜色。
3material.colorNode = vec4( uv(), 0, 1 );