equirectUV
equirectUV
将一个三维方向向量转换为等距圆柱投影(全景)贴图的二维 UV 坐标。
核心优势
将复杂的三角函数(atan/asin)封装为单个语义清晰的节点,极大地提升了环境映射相关代码的可读性和可靠性。
常见用途
渲染天空盒/场景背景
实现环境反射
基于图像的照明 (IBL)
程序化扭曲天空效果
如何调整
该节点本身无法调整,其效果完全通过改变输入的 `directionNode`(三维方向向量)来控制。例如,将输入从 `reflectNode`(反射)切换到 `normalWorld`(法线)会将其用途从计算反射变为计算环境光。更高级的用法是通过噪波节点扰动输入的方向向量,从而在反射表面上模拟出水波涟漪等动态扭曲效果。
代码示例
1// 使用反射向量在等距圆柱投影环境贴图中查找颜色
2const reflectedColor = texture( envMap, equirectUV( reflectNode ) );