Fast Fourier Transform (FFT)
This Godot Engine plugin provides a Fast Fourier Transform (FFT) implementation in GDScript. It allows for forward and reverse transformations between data-space and Fourier-space, as well as utility functions for complex number manipulation.
https://github.com/tavurth/godot-fftPreview Images


Fast Fourier Transform (FFT) in Godot Engine
This plugin provides a Fast Fourier Transform (FFT) implementation in GDScript for the Godot Engine. FFT is a mathematical algorithm used to analyze the frequency components of a signal. This plugin offers methods for performing forward and inverse FFTs, as well as utility functions for working with complex numbers.
Key Features
-
Forward and Inverse FFT: Implements
fft
andifft
functions for transforming data between the time domain and frequency domain. - Complex Number Utilities: Includes functions for extracting real and imaginary parts of complex numbers, ensuring data is in complex number format, and conjugating complex amplitudes.
- GDScript Implementation: Written in GDScript, making it easy to understand and modify.
- Thread Safety: Designed to be thread-safe, allowing FFT calculations to be performed in the background.
Installation
To use this plugin, install it as a Godot addon and enable it in your project settings. The FFT
singleton is autoloaded, allowing you to call its static methods directly.
Performance Considerations
While functional, the GDScript implementation may not be the fastest. The plugin suggests converting it to C++ for improved performance or sampling data to reduce the number of calculations.