normalLocal
normalLocal
提供在模型局部空间(Local Space)中原始、未经变换的顶点法线。它能安全地处理几何体缺少法线数据的情况。
核心优势
核心优势在于其鲁棒性。当几何体缺少法线数据时,它不会导致着色器崩溃,而是返回一个默认的向上向量 (0, 1, 0) 并发出警告,极大地简化了调试过程。
常见用途
作为所有光照计算的起点,用于推导世界空间或视图空间法线。
实现依赖于模型自身坐标系的程序化效果,如积雪效果。
通过其内置警告快速调试和定位缺少法线属性的模型数据问题。
如何调整
该节点是只读输入,但可通过其他节点(如 `abs()`)处理其输出,以创造对称的水晶般视觉效果,或通过 `mix()` 与其他向量混合以实现风格化着色。
代码示例
1// 将局部法线映射到颜色范围以进行可视化
2output.color.rgb = normalLocal.mul( 0.5 ).add( 0.5 );