<!--
{
  "availability" : [
    "iOS: 17.0.0 -",
    "iPadOS: 17.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ShaderGraph-Docs",
  "identifier" : "/documentation/ShaderGraph/3D-Procedural/Worley-Noise-3D",
  "metadataVersion" : "0.1.0",
  "role" : "ShaderGraph Node",
  "symbol" : {
    "kind" : "ShaderGraph Node",
    "modules" : [
      "ShaderGraph"
    ],
    "preciseIdentifier" : "Shader_ND_worleynoise3d_float"
  },
  "title" : "Worley Noise 3D"
}
-->

# Worley Noise 3D

A 3D Worley noise generator.

## Parameter Types

**Worley Noise 3D (float):**

|Input     |Type    |
                |----------|--------|
                |`Position`|Vector3f|
                |`Jitter`  |Float   |

|Output|Type |
                |------|-----|
                |`Out` |Float|

**Worley Noise 3D (vector3f):**

|Input     |Type    |
                |----------|--------|
                |`Position`|Vector3f|
                |`Jitter`  |Float   |

|Output|Type    |
                |------|--------|
                |`Out` |Vector3f|

**Worley Noise 3D (vector2f):**

|Input     |Type    |
                |----------|--------|
                |`Position`|Vector3f|
                |`Jitter`  |Float   |

|Output|Type    |
                |------|--------|
                |`Out` |Vector2f|

## Parameter descriptions

- `Position`: The 3D coordinates at which the node reads the data for mapping a texture to a surface. The default uses the current 3D object-space coordinates.
- `Jitter`: The amount of *jitter* or shift the center of each cell experiences. The default value is `1.0`. A smaller value creates a more regular pattern, and `0` creates perfect squares.

## Discussion

The `Worley Noise 3D` node procedurally generates nonuniform cellular regions. The node creates a finite number of center points, and each region is a polygon that surrounds the points closest to each center point.
Because this node generates noise in 3D, the texture doesn’t repeat in the Z direction but rather continues as depth changes.
Below is an example of a simple node graph that uses the `Worley Noise 3D` node to generate a black and white pattern procedurally:

![](images/ShaderGraph-Docs/WorleyNoise3dGraph~dark.png)

Multiply the incoming texture coordinates with a constant float, which changes the frequency of the generated noise. A higher value corresponds to the pattern repeating more often.
Then run the output through a convert node to change it to a black and white color value.  Below, the resulting texture applies to a cube:

![](images/ShaderGraph-Docs/WorleyNoise3dMaterial~dark.png)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)