← All ideas
  • Published 9 Feb 2026

Fourier Transform and Complex Numbers

The Problem Currently, Geometry Nodes is incredibly powerful for spatial manipulation, but it lacks tools for frequency-domain operations. While artists can hack together "fake" waves using sine/cosine combinations, they cannot perform global frequency analysis or manipulation. This makes tasks like realistic ocean synthesis, advanced signal processing, and certain types of procedural pattern generation (like Gabor noise or complex fractals) computationally expensive or impossible.

The Solution Introduce a native Complex Number socket type and a suite of Fourier Transform (FFT) nodes capable of 1D, 2D, and maybe 3D operations.

  1. New Data Type & Math Nodes
  • To support FFT, we first need the underlying math.Complex Number Socket: A new socket type (represented as a + bi). Internally, this is a 2D vector, but with specific math rules.
  • Complex Math Node: Operations including:
    • Add/Subtract/Multiply/Divide (using complex algebraic rules).
    • Conjugate: Flips the imaginary sign.
    • Magnitude & Phase: Essential for converting frequency data back into visible heightmaps or displacements.
    • Euler’s Form: Convert from Cartesian (a + bi) to Polar (re^{i\theta}).
  1. The Fourier Transform Nodes

These nodes would allow the conversion of spatial data (like a grid’s Z-position) into a frequency spectrum. Also integrated for grid nodes.

100%

Development Status: Open

Upvote 10 Downvote 0
hoyun
9 Feb 2026

1 Comment

samueloates

Gabor noise is included with blender, with the Gabor Texture node.