白噪波纹理#

Note

这个节点是由着色器节点移植过来的。手册和图片参考的是该节点的着色器版本。这个节点接受字段输入和输出。当没有连接时,矢量输入有一个隐含的 位置 属性值。

白噪波纹理 节点基于输入的 随机种 返回随机数。随机种可以是数字、二维、三维或四维矢量。取决于 维度 属性。输出数值介于 0 到 1 之间。

白噪波纹理节点。

输入#

输入是动态的,下面的输入端口会在选择的节点属性需要时出现。

矢量

用于二维、三维及四维随机种的矢量。

W

用于 1D 及 4D 随机种的数值。

属性#

维度

用于计算噪波的空间维度。

1D:

W 作为随机种。

2D:

输入 矢量 的 X 和 Y 分量用作随机种。

3D:

使用 矢量 作为随机种。

4D:

矢量 输入和 W 输入同时用作种子。

输出#

数值

输出随机值。

颜色

输出随机颜色。

注意#

随机种数值的微小差异将导致完全不同的输出。因此,不良精度可能会对输出产生重大影响。通常,我们可以通过下面的方法缓和这一问题:

  • 消除有问题的随机种数值。如果有问题的随机种是常数,则应通过选择较低的维度或将其乘以零来消除该问题。

  • 将随机种与任意数值相加。该问题可能只发生在特定边界(如单位边界)上,因此只需与任意数值相加即可解决问题。

  • 对随机种取绝对值。在计算中,零可能是正的或负的,因此取绝对值可统一为单一取值。

../../../_images/render_shader-nodes_textures_white-noise_issue.png

由于Z轴上有符号的零而导致的精度问题。#

../../../_images/render_shader-nodes_textures_white-noise_solution1.png

通过拿掉Z轴来缓和问题。#

../../../_images/render_shader-nodes_textures_white-noise_solution2.png

通过与任意数值相加来缓和问题。#

../../../_images/render_shader-nodes_textures_white-noise_solution3.png

通过取绝对值来缓和问题。#

示例#

../../../_images/render_shader-nodes_textures_white-noise_solution1.png

使用 吸附 矢量操作和 白噪波 节点生成格子噪波。#