![]() |
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 TransformedKernel, FRDGTextureRef DstTexture) |
|
static |
One Dimensional convolution against a pre-convolved texture: does two complex signals at once.
The each scanline of the float4 buffer is interpreted as two complex signals (x+iy and z + iw).
---------------—Breakdown of the convolution---------------------------------— On input: Each scanline (length N) of the SrcTexture contains 2 interlaced signals float4(a,b,c,d) = {z_n, q_n} where z_n = a_n + i b_n and q_n = c_n + i d_n
Each scanline (length N) of the TransformedKernel contains 2 interlaced, pre-transformed
signals float4( TK1, TK2)
This function transforms the Src scanline to give two interlaced frequency signals float4(Z_k, Q_k)
The convolution is affected as a multiplication in frequency space: float4( ComplexMult(Z_k, TK1_k), ComplexMult(Q_k, TK2_k))
| Context | - RHI and ShadersMap |
| FFTDesc | - Defines the scanline direction and count and transform type |
| TransformedKernel | - A texture that contains a transformed convolution kernel. |
| SrcTexture | - The two dimensional float4 input buffer to transform |
| SrcWindow | - Location of the data in the SrcTexture to be transformed. Zero values pad the data to fit the FFTDesc TrasformExtent. |
| DstBuffer | - The buffer to be populated by the result of the transform. |
| TmpBuffer | - A temporary buffer used in the multi-pass formulation. |
NB: This function does not transition resources. That must be done by the calling scope.