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.

+3 votes

We are using Wwise 2017.2.3.6575 and UE4.19.0. 

  • AkOcclusionObstructionService::CalculateObstructionOcclusionValues doesn't guarantee thread safety when doing its line traces.
  • When CurrentWorld->LineTraceSingleByChannel returns a hit actor that is a landscape with foliage, there's the potential that the async task for updating foliage instanced mesh components can happen at the same time as the call to OutHit.Actor->GetComponentsBoundingBox().
  • This causes a crash that is hard to give a specific reproduction map for due to the specific timing problems that can occur around this.
  • It's assumed that this can happen with other things return as the hit actor, but Landscape having frequent async updates, as well as having 60+ components in a normal situation make this a lot more common of an actor to crash against.
  • This is occurring for us on plugin version 2017.2.3.6575.917, but the changes for plugin version 2017.2.4.6590.933 don't appear to have addressed this at all.
in General Discussion by Mark M. (130 points)

1 Answer

0 votes

It seems changing line 167 of file AkOcclusionObstructionServer.cpp to 

CalculateObstructionOcclusionValues(in_Listeners, SourcePosition, Actor, RoomID, in_collisionChannel);

 can fix this issue temporarily.

by Di L. (140 points)
...