Gyroid Noise*

Noise Preview

Gyroid Noise produces a naturally isotropic 3D pattern with smooth, continuous contours reminiscent of organic cellular structures, foams, or marble veins. Built upon the mathematical "Gyroid" minimal surface function, this noise is analytic and continuous everywhere. Unlike lattice-based noises (like Perlin or Simplex), it produces no grid artifacts and features a distinct "feedback warping" mechanism that creates complex, self-intersecting organic shapes.

Performance Cost 🟢 Low
Space 2D/3D - UV/World/Object
Implementation Native Compiled C++
Devices (Cycles) CPU / GPU (1:1)

Usage & Behavior

With default values
With NoiseTweaker

This noise excels at creating "porous" or "connected" textures. Because the Gyroid function defines a surface that divides space into two infinite, non-intersecting labyrinths, it is perfect for creating biologic tissues, bone structures, or complex marble veining. The built-in feedback loop (controlled by Distortion) allows the pattern to warp itself recursively.

Best Used For: Bone interiors, sea sponges, Swiss cheese, marble veins, alien organic tissue, and abstract porous geometry.

Key Features

  • Minimal Surface: Based on the triply periodic Gyroid math function.
  • Isotropic: No grid artifacts; looks consistent from all angles.
  • Feedback Warping: Iterative distortion creates unique flowing turbulence.

Parameters

Invert (bool, default: false)
Inverts the final output. Useful for swapping the "solid" and "void" parts of the gyroid structure (e.g., turning holes into islands).
Coords Vector
The input texture coordinates.
Scale Vector (default: 4.0, 4.0, 4.0)
Global scale of the pattern.
Distortion (default: 1.0)
Controls the intensity of the feedback loop.
- Low values: Create clean, smooth, regular gyroid shapes.
- High values: Introduce turbulence, causing the pattern to twist and fold like liquid.
Lacunarity (default: 2.0)
Controls the scale reduction per iteration. In this implementation, it also affects the amplitude decay. Higher values make the detail layers smaller and tighter.
Offset (default: 0.0)
Shifts the pattern along the Z-axis within the feedback loop. Animate this value to make the veins or pores "grow" or "flow" organically without moving the object.
Coverage (default: 1.0)
Controls the thickness or solidity of the pattern.
- 1.0: Full dynamic range (standard noise).
- Low values: Cuts away the values, leaving only thin, sharp lines (perfect for lightning or cracks).
Transition (default: 0.25)
Controls the softness of the edges when Coverage is used.
- Low values: Hard, sharp cutouts.
- High values: Smooth, blurred gradients.

Quick Recipes

Use these settings for organic porous materials.

Bone Structure

Distortion: 0.5
Coverage: 0.6
Transition: 0.1
Invert: False
Low distortion and medium coverage create the classic porous look of spongy bone marrow.

Marble Veins

Distortion: 1.5
Coverage: 0.2
Transition: 0.4
Scale: 2.0
High distortion twists the pattern; low coverage isolates thin, flowing lines.

Alien Flesh

Distortion: 1.8
Offset: (Animate)
Lacunarity: 1.5
High distortion and animated offset create a writhing, living tissue effect.
Technical Note: The core function is based on the approximation dot(sin(p), cos(p.yzx)). The noise implementation runs a fixed loop of 4 iterations, feeding the accumulated result back into the Z coordinate (pp.z += offset + result * distortion) to create the domain warping.
↑ Back to Top

Leave a Reply