positionWorldDirection
positionWorldDirection
提供一个从物体轴心指向其表面、并已正确变换到世界空间的方向向量。
核心优势
核心优势在于它能正确处理旋转和非均匀缩放,提供一个从物体自身出发、但在世界空间中表达的方向,极大地简化了“朝向相关”特效的实现。
常见用途
实现朝向相关的程序化着色,如让模型在世界中“朝上”的部分发光。
作为调试工具,通过将其可视化为颜色来直观检查模型的朝向。
如何调整
该节点为只读方向。效果调整来自于将它与另一个世界方向(如 `vec3(0,1,0)` 或一个 `uniform` 变量)进行点积,并调整后续处理(如 `pow` 指数)来改变高光的锐利度。
代码示例
1// 计算模型朝向与世界“上”方向的对齐程度
2const upFactor = positionWorldDirection.dot( vec3(0, 1, 0) ).saturate();
3
4// 基于该因子混合颜色,让朝上的部分发光
5output.color.rgb = mix( baseColor, highlightColor, upFactor );