You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In my project I managed to meet some very specific conditions that break the audio system. This looks like engine bug, because it requires all of the specific steps and makes the audio die completely.
Here's the bug (I'm using debug teleport to move faster):
Output.mp4
Note how in 0:10 the video goes completely silent and then after the gate animation the sounds plays normally. During that silence, and audio track is supposed to play.
Here's video with the intended effects:
Output.mp4
Note that this is the exactly the same build! The silence is 100% reproducible and the correct sounds is also 100% reproducible. If you look closely, the only thing that changed is that in the second video I didn't touch the save point.
Now, this is the interesting part. In order to trigger the bug I need to:
start in the desert area. When I change areas, the music transition makes two music tracks play together and crossfade smoothly
touch the save point to play its opening and closing animation
when the gate closes, the music is silenced (I tween it to 0 volume)
If I skip any of these steps, the bug does not happen.
As for the bugged silence itself, it's not that the animation audio is not playing. All sound is completely disabled, I tried playing other sound affects at that moment and they are muted too.
EDIT:
After further investigation, silencing the music (Jukebox.silence() call) is the direct trigger of the bug, all other steps are just a setup. I tried silencing the music later and if I call the method mid-animation, the audio goes out immediately. Also it has something to do with 2 music players (see Jukebox.tscn). When I stop the unused one before calling silence() the bug does not happen.
Steps to reproduce
Start the MRP and repeat what I did in the first video. You can use F1 to teleport character to cursor.
Minimal reproduction project
Unfortunately, since the reproduction steps are extremely convoluted, I am not even sure how to extract it into a minimal project. I stripped down my game down to some essential files required to reproduce the bug. That's still 90MB though.
4.3 dev 6
While the symptoms were fixed, I wonder if it's user error or I did something that triggered engine bug. I don't even know where the error comes from.
Godot version
4.2 rc2 / 4.1
System information
Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (NVIDIA; 30.0.15.1403) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)
Issue description
In my project I managed to meet some very specific conditions that break the audio system. This looks like engine bug, because it requires all of the specific steps and makes the audio die completely.
Here's the bug (I'm using debug teleport to move faster):
Output.mp4
Note how in 0:10 the video goes completely silent and then after the gate animation the sounds plays normally. During that silence, and audio track is supposed to play.
Here's video with the intended effects:
Output.mp4
Note that this is the exactly the same build! The silence is 100% reproducible and the correct sounds is also 100% reproducible. If you look closely, the only thing that changed is that in the second video I didn't touch the save point.
Now, this is the interesting part. In order to trigger the bug I need to:
If I skip any of these steps, the bug does not happen.
As for the bugged silence itself, it's not that the animation audio is not playing. All sound is completely disabled, I tried playing other sound affects at that moment and they are muted too.
EDIT:
After further investigation, silencing the music (
Jukebox.silence()
call) is the direct trigger of the bug, all other steps are just a setup. I tried silencing the music later and if I call the method mid-animation, the audio goes out immediately. Also it has something to do with 2 music players (see Jukebox.tscn). When I stop the unused one before callingsilence()
the bug does not happen.Steps to reproduce
Start the MRP and repeat what I did in the first video. You can use F1 to teleport character to cursor.
Minimal reproduction project
Unfortunately, since the reproduction steps are extremely convoluted, I am not even sure how to extract it into a minimal project. I stripped down my game down to some essential files required to reproduce the bug. That's still 90MB though.
https://www.mediafire.com/file/pwz70vuxjtrqo86/repro_audio_oblivion.zip/file
The text was updated successfully, but these errors were encountered: