Audiokinetic's Community Q&A is the forum where users can ask and answer questions within the Wwise and Strata communities. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

UE4 ObstructionService Terrible Performance

0 votes
Hi

On a couple of games we have found that the AkComponent.cpp ObstructionService causes terrible performance across all platforms due to massive amounts of raycasts (FAsyncTraceTask goes mad)

Changing the raycast settings etc, even "disabling" occlusion in the wwise settings in UE4 does not fix or alleviate the performance issue

The only way to fix the performance issues is by hardcoding the OcclusionRefreshInterval to 0.0 so it skips it entirely

Is this a known issue? Any suggestions?

Thanks

Rich
asked Jan 13, 2022 in General Discussion by Richard Y. (100 points)
Hello. Could you tell me how did you solve this problem?

1 Answer

0 votes
Hi Rich,

First, a clarification. The Unreal Wwise Integration casts rays using the unreal physics engine to drive the occlusion API in Wwise.  The sound engine is then presented with the results (a number between 0-1, indicating how occluded a sound is). The ObstructionService on the Unreal side is generally seperate from Wwise Spatial Audio. This system predates Spatial Audio diffraction, and is generally (at least without a bit of hacking) not compatible with the diffraction system.

If you are looking to get better performance out of the ray casts in unreal, it might be best to do a bit of digging into the Unreal docs (or maybe someone more knowledgeable in this area can chime in). I suspect it would start with reviewing your collision channels, and the complexity of the collision geometry.

The only control in the Wwise Integration is OcclusionRefreshInterval, which can be set to a larger number to reduce the frequency of the ray casts.

Hope that helps,

Nate
answered Jan 14, 2022 by Nathan H. (840 points)
...