光程节点
光程 节点用于确定着色器正在计算何种入射光线;它特别适用于非物理依赖的光线制作。请参阅 光程 文件以查看每一种光程的含义。
输入
该节点没有输入项。
属性
这个节点没有属性。
输出
- 是相机射线
如果对摄像机射线执行着色,则为1.0,否则为0.0。
- 是阴影射线
如果对阴影射线执行着色,则为1.0,否则为0.0。
- 是漫射射线
如果对漫反射光线执行着色,则为1.0,否则为0.0。
- 是光泽射线
如果对光泽射线执行着色,则为1.0,否则为0.0。
- 是单一射线 仅适用于Cycles引擎
如果对奇数射线执行着色,则为1.0,否则为0.0。
- 是反射射线 仅适用于Cycles引擎
如果对反射光线执行着色,则为1.0,否则为0.0。
- 是透射射线 仅适用于Cycles引擎
如果对传输光线执行遮挡,则为1.0,否则为0.0。
- 射线长度 仅适用于Cycles引擎
最后一次反弹或相机拍摄的光线所经过的距离。
- 射线深度
射线在与表面相互作用时被反射或传输的次数。
Note
穿过透明着色器 不算是法向 "反弹".
- 漫射深度 仅适用于Cycles引擎
光线经过漫反射或透射的次数。
- 光泽深度 仅适用于Cycles引擎
光线经过光泽反射或透射的次数。
- 透明深度 仅适用于Cycles引擎
返回传递的透明曲面数。
- 透射深度 仅适用于Cycles引擎
在与其它着色器一起使用时,可以将经过N次反弹后的光线,替换为一束光线。由于最大反弹量较小,因此可用于避免黑色表面。
Eevee Support
Eevee has no real concept of rays. But in order to ease the workflow between Cycles and Eevee some of the outputs are only supported in particular cases. This node makes it possible to tweak indirect lighting in the shader.
Only a subset of the outputs are supported and the ray depth does not exactly have the same meaning. In order for the Is Camera, Is Shadow, Is Diffuse, and Is Glossy outputs to work, the object must be inside an Irradiance Volume and 间接光照明 must be baked.
是相机射线 : 支持。
是阴影射线 : 支持。
是漫射射线 : 支持。
是光泽射线 : 支持。
是单一射线 : 不支持。 与光泽度相同。
是反射射线 : 不支持。 与光泽度相同。
是透射射线 : 不支持。 与光泽度相同。
射线长度 : 不支持,默认1.0。
射线深度 : 表示烘焙光缓存时的反弹。
漫射尝试 : 与射线深度相同,但仅在烘焙漫反射光照时。
光泽深度 : 与射线深度相同,但仅在烘焙镜面光照时。
透明深度 : 不支持,默认0.
透射深度 : 不支持. 与光泽深度相同.
Note
Is Glossy does not work with Screen Space Reflections/Refractions but does work with reflection planes (whether used with SSR or not).