lightTargetDirection
lightTargetDirection
计算从光源目标(Target)指向光源本身的方向向量,并将其从世界空间转换到视图空间。
核心优势
高度抽象了方向光的向量计算,自动处理了从世界空间到视图空间的坐标变换,保证了光照计算中坐标系的正确性,避免了手动的多步计算和矩阵变换。
常见用途
为平行光和聚光灯提供视图空间下的光照方向,用于计算漫反射和高光。
作为卡通渲染中判断光照色阶的依据。
在各向异性等高级着色模型中提供核心光照向量。
用于调试,将光线方向可视化为颜色。
如何调整
其效果通过在 JavaScript 中移动光源对象或其 `target` 对象来调整。移动 `target` 会改变光束的朝向;而固定 `target` 并移动光源,则会改变光线照射到物体表面的角度。
代码示例
1// 获取一个有目标的光源(如聚光灯)在视图空间下的方向向量
2const lightDirectionInView = lightTargetDirection( mySpotLight );