FFT: Does UE4 use real input FFT? Is this why output of FFT is size of (N/2 + 1) * 2?

Hello,

I have questions about UE4’s FFT details.

I have noticed that UE4’s Bloom post-process is using FFT.

I saw two-for-one trick which transforms ‘r & b’ channels into one complex signal ‘r + i * g’.

So I thought This FFT module’s input would be a complex number.

But the output of the FFT is the size of (N/2 + 1) * 2.

I am not sure how UE4’s FFT module works.

Could anyone help me with this?

I am trying to implement a post-processing shader that ought to calculate in the spectral domain and make a summation of multiple results of calculation and then IFFT.

To do that I should be able to make FFT which could get an input of a complex number.

Thank you.

Never mind, I misunderstood. FFT two-for-one trick makes complex input FFT into two real input DFT. Although I am not sure how to make this normal complex input FFT.