cameraNear
cameraNear
在着色器中提供一个动态更新的变量,代表当前摄像机的近裁剪平面(near clipping plane)距离。
核心优势
自动化数据流,将摄像机的 .near 属性无缝同步到 GPU,开发者无需手动管理 uniform 更新,从而简化了着色器逻辑并提高了代码的模块化。
常见用途
防止摄像机穿模时的硬裁切(实现淡出效果)
重建线性深度值
创建近场触发的视觉特效(如能量护盾、扫描)
修正雾效或体积光的起始计算点
调试和可视化近裁剪平面的位置
如何调整
此节点的值直接反映了 JavaScript 中摄像机对象的 .near 属性。通过在 JS 中修改 camera.near 的值,可以动态调整所有依赖此节点的着色器效果的起始距离,例如改变物体在靠近摄像机时开始淡出的位置。
代码示例
1const fadeZoneStart = cameraNear;
2const fadeZoneEnd = cameraNear.add( 2.0 );
3const fadeAlpha = smoothstep( fadeZoneStart, fadeZoneEnd, distanceToCamera );