Volumetric Audio: Sounds played globally continue to behave like global sounds after being re-parented to a physical instance

Volumetric audio behaves correctly when sounds are parented to a BasePart or Attachment as long as they aren’t parented to another class. However, after parenting the sound to anything else, the sound will play globally and will continue to play without any sense of direction, even after being re-parented to the initial physical instance. The sound will play incorrectly until it is stopped and played again. Additionally, making the sound global from a previously directional state will cause the sound to play much louder than if it were to start in a global state.

To reproduce this issue, simply parent a sound to a BasePart or Attachment, set SoundService.VolumetricAudio to Enabled, and playtest the game. Then, move the sound to anything else that isn’t a BasePart or Attachment. Now, when the sound is re-parented to its original instance, the audio will play as if it were still global.

Here’s a video demonstrating the issue.
VolumetricAudio is set to Enabled


This is the place file used for the test:
soundbug.rbxl (55.3 KB)

Expected behavior

After re-parenting the sound, the audio output should switch back to directional. The volume also shouldn’t drastically increase when the sound becomes global.

Here’s a video demonstrating what should happen.
VolumetricAudio is set to Disabled (Automatic works too)


This test uses the same place file as the other. The only difference is VolumetricAudio being disabled.

1 Like