FMODAudioComponent occlusion

Hi,

I’ve been trying to get Unreal 5’s FMODAudioComponent occlusion to work, but have come across a small problem. It seems that the line which detects whether or not something is occluded starts from the FMODAudioComponent’s owner’s location, and not from the component’s location. Even if I move the fmod component into clear view of the player on a specific instance of a blueprint, its Occlusion parameter will still be set to 1 if the line of sight to the root component of the blueprint is blocked by something, creating an unrealistic occlusion situation.

For example, if I have a large blueprint where only one part of it emits a sound, placing a volume between the listener and the sound-making part itself doesn’t change the occlusion parameter. Instead, placing it between the blueprint instance’s location and the listener does.

If this is intended behaviour, would you mind explaining why? A programmer has just looked at the code with me, and it seems that for measuring attenuation, the owner’s location is indeed used, so perhaps this is what is causing the problem. Hopefully we can change the code ourselves to use just the correct component’s location, but to me it seems like this should be the default behaviour.

Thanks!

This appears to be a bug, it should be using the position of the FMODAudioComponent instead of the owner’s location.

I have created a task to address this for an upcoming release, but in the meantime it does look to be just a small change required to address it.

1 Like

Thanks for the response - much appreciated.