Hello!
I tried to update a project from Wwise 2022.1.1 to 2023.1.0 / 2023.1.2 and found that performance in Spatial Audio on the same test cases became worse specifically on Portal Path Validation.
I made a simple isolated test case as well in UE5: 20 box shapes rooms 10x10x10 meters, each with 1 portal inside. All the rooms located close to each other (~1-2 meters a distance between walls) and spread in 5 columns, 4 rows. There're no emitters besides of the player footsteps. Each rooms has triangles enabled, acoustic texture is default, diffraction is enabled. The settings of spatial initialization are:
- max propagation path = 4
- movement threshold = 100
- number of primary rays = 30
- reflection order = 1
- diffraction order = 4
- max emitter room aux send = 1
- diffraction on reflection = 0
- max path length = 10000
- CPU limit = 20
- load balancing = 2
- enabled geometric diffraction / transmission = true
- calc emitter virtual pos = true
This test case always gives me ~30-40 % of CPU on portal path validation, especially when player moves behind all the rooms, therefore more geometric diffraction happens there.
The same test scenario works perfectrly with small amount of portal path validation CPU numbers (~0.02%) in Wwise 2021.1.1.
While profiling with external profiler I found that there's the most consumption on CAkStocjasticReflectionEngine::ComputePaths. I tried to disable reflections completely to see what will happen (reflection order = 0), but that suddenly made situation worse — with the reflection order of 1 the most consumption was when player's moving, but with 0 reflections it's a constant load on the portal path validation CPU with the same numbers. Also profiler still shows CAkStocjasticReflectionEngine::ComputePaths as working (with bigger numbers).
I'm wondering is that some bug there? Or if not are there any tips to make such test case working the same way as in the previous versions?
Thanks,
Alexey