Community Q&A

Where Wwise users help each other out!

Audiokinetic's Community Q&A is the forum where Wwise users ask and answer questions within the Wwise community. 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

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?


asked Jan 13 in General Discussion by Richard Y. (100 points)

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,

answered Jan 14 by Nathan H. (500 points)