![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <GPUFastFourierTransform.h>
Static Public Member Functions | |
| static void | MultiPass (FRDGBuilder &GraphBuilder, const FGlobalShaderMap *ShaderMap, const FFTDescription &FFTDesc, FRDGTextureSRVRef SrcTexture, const FIntRect &SrcWindow, FRDGTextureRef DstTexture, FRDGBufferRef PostFilterParameters=nullptr, const bool bScrubNaNs=false) |
|
static |
One Dimensional Fast Fourier Transform of two signals in a two dimensional buffer. The each scanline of the float4 buffer is interpreted as two complex signals (x+iy and z + iw).
On input a scanline (lenght N) contains 2 interlaced signals float4(r,g,b,a) = {z_n, q_n}. where z_n = r_n + i g_n and q_n = b_n + i a_n
On output a scanline will be N elements long with the following data layout Entries k = [0, N-1] hold float4(Z_k, Q_k) where the array {Z_k} is the transform of the signal {z_n}
| Context | - RHI and ShadersMap |
| FFTDesc | - Defines the scanline direction and count and transform type |
| SrcWindow | - Location of the data in the SrcTexture to be transformed. Zero values pad the data to fit the FFTDesc TrasformExtent. |
| SrcTexture | - The two dimensional float4 input buffer to transform |
| DstBuffer | - The buffer to be populated by the result of the transform. |
| TmpBuffer | - A temporary buffer used when ping-ponging between iterations. |
| bScrubNaNs | - A flag to replace NaNs and negative values with zero. This is for use when reading in real data as the first step in two-for-one multipass |
NB: This function does not transition resources. That must be done by the calling scope.