
UE 5.6 MetaSounds의 Delay만으로 Reverb 효과를 만들었다.
말 그대로 오디오 신호에 delay를 주는 이펙트.
원본 신호에 delay된 신호를 더해주는 이펙트.
짧은 시간의 Echo에 대해 나타나는 Filter 현상. 짧은 시간의 위상 차이로 인해 주파수마다 보강/상쇄 간섭이 일어나 스펙트럼에서 빗처럼 나타나는 현상을 말한다.

아래 첫번째는 일반적인 백색소음의 선형 스펙트럼, 두번째는 백색소음에 1ms의 Echo를 주었을 때의 스펙트럼이다.


Reverb는 Delay, Echo와도 비슷하지만, 앞의 2개가 원음과 확연히 구분되는 소리인 데 비해 Reverb는 공간에 의한 잔향에 가까워 원음과 명확히 구분되지 않는다.
현실에서 Reverb가 형성되는 원리는 수많은 Indirect Sound (반사 및 굴절 소리)가 Direct Sound 대비 약간의 시간차와 감쇠를 가지며 들리기 때문이다.

때문에 정확히 Reverb를 구현하려면 가능한 많은 방향으로 Ray를 쏘고, Ray가 반사 또는 굴절되더라도 수 초 ~ 수십 초간 유지되어야 한다. 이러한 방식을 Image Source Method라고 한다.
문제는 이를 계산하기엔 현대 컴퓨터로도 부담스럽다는 점이다. Ray가 최소 10, 최대 100회까지 반사되어야 한다는 듯 하다.
그래서 대부분의 Reverb 이펙터는 초반의 반사와 잔향 (Reverb tail)을 구분해서 시뮬레이션한다.

이 잔향은 여러 Feedback Delay를 병행하여 (동시에 각 Feedback을 섞어주면서) 자연스럽게 표현할 수 있다. 이러한 방식을 FDN(Feedback Delay Networks) 이라고 한다.
이와는 전혀 다른 방식으로 실제 공간에서 녹음한 Impulse Response 파형과 합성곱을 하여 Reverb를 시뮬레이션하는 방식도 있다.
Impulse Response가 정확하다면 그것을 녹음한 공간에서 Reverb를 그대로 재현할 수 있다는 점에서 가장 실제에 가깝지만, 음원이나 listener 그리고 공간이 고정되어 있다는 가정에서 이루어져야 한다.

여러 Comb Filter (또는 Feedback Delay, Echo 이펙터)를 병행하여 Reverb를 시뮬레이션하는 방식이다. 위는 3개의 Delay 이펙터를 사용한 모습으로, 이펙터의 출력이 행렬 와 Gain 를 곱한 채로 다시 입력에 들어가고 있다.
는 각 이펙터의 결과를 자신에게 전달할 뿐만 아니라 다른 이펙터에도 일부 전달하고자 사용한다. 이때 는 직교 행렬이어야 한다.
Gain , 즉 피드백 크기는 Reverb tail의 길이를 결정하는 중요한 요소가 된다. 대개 RT60의 값과 각 Delay Effector의 Delay 값 를 통해 계산한다.

일단 Noise Osillicator와 ADSR로 소리를 만든다. Reverb의 효과를 비교하기 쉽게 Release Time을 최대한 짧게 잡았다.

Delay는 Stereo Delay를 사용한다. UE 5.6 기준으로 그냥 Delay는 Feedback에서 보정값이 먹는 것 같아서 Stereo Delay를 사용하였다.
Dry와 Wet을 분리하고자 Dry값을 0으로 설정하고, Feedback과 더해서 상대적 크기가 1이 되기 위해 Wet 값을 0.5로 설정한다.

또한 미리 설정된 delay값을 넣어주고, delay 값과 RT60 그리고 위 식을 사용해 Feedback 크기를 계산한다. 미리 설정된 delay값은 아래에서 상단 4개의 값이며, 공배수가 가능한 없도록 되어 있다. (GPT가 추천해 줬다)
이렇게 Stereo Delay를 4개 만들어주고 각각 0.25의 크기로 더해준다. 실제 FDN은 각 피드백을 서로 다른 이펙터에 넣어주는 과정 (를 곱하는 과정)이 있는데, 여기서는 그냥 자기 자신에게만 넣어주고 있다. (즉 가 항등행렬)

마지막으로 원음과 reverb의 크기를 각각 dry, wet으로 조정하여 더한다.

Ray Tracing으론 Reverb Tail까지 구현하긴 어려울 듯 하다. 실제 그래픽 처리에서 Ray 반사는 많아야 4회 정도로 상한을 두는데, 작은 공간에서 이 정도의 반사로는 Reverb가 전혀 느껴지지 않을 것이다.