白噪波纹理节点

Note

This node is ported from shader nodes. The manual and images are referencing the shader version of the node. This node accepts field inputs and outputs. When not connected the Vector input has an implicit position attribute value.

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

白噪波纹理节点。

输入

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

矢量

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

W

用于一维及四维随机种的数值。

属性

规格尺寸

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

  • 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

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