Conversation
|
Play this branch at https://play.threadbare.game/branches/endlessm/wjt/only-fade-background-music-when-changing-streams. (This launches the game from the start, not directly at the change(s) in this pull request.) |
|
Try playing from the second round of ink combat through to Fray's End: And compare it to the status quo:
Having implemented this, I'm not entirely sure it's an improvement, so I'm interested in other opinions.
|
|
I played it and overall I think it's an improvement. I love that the music keeps playing while the same level restarts, or when the next level has the same music and is related to the previous one (ink drinker rounds).
Yes, I could hear the stutter in my playtest. It was small but noticeable. Still I prefer the stutter than fading out/in the music in 1.
Yes exactly. Maybe this can be a parameter of the Cinematic node? I think we are detecting 2 kinds of ellipsis:
Besides music we could also make them different by changing the duration. A short ellipse could happen faster and a long one can last more time. Currently all last 1 second (the transition default value).
Agreed. |
I think I will readd the play/stop controls in the editor before marking this as not a draft.
OK, I'll file a bug about this problem if this PR lands. I wonder what causes the stutter…
We could also defer solving this until we redesign how the world fits together geographically. Maybe that cutscene at the end would become a playable scene with an opening line of dialogue, and then the player can walk off. We could work around this by making the AudioStream resource in Fray's End unique so that it is a different object and the fade is applied… :D |
Previously, the background music always faded out during the scene-exit
transition, then faded in during the scene-enter transition. This had:
two negative consequences:
1. It sounds bad when the successive scenes have the same music (e.g.
the three waves of ink combat);
2. It means the opening chord of each new piece of music is guaranteed
to be inaudible since the 1-second fade-in is still ongoing.
Instead:
- Do not fade the music when the scene fades out;
- When the new scene arrives, with a BackgroundMusic node:
- If the stream is the same, do nothing (fixing point 1 above);
- Else, fade out the old stream for 1 second, then start playing the
new stream at full volume (fixing point 2 above).
To do this, move most of the logic from BackgroundMusic to MusicPlayer.
Remove the ability to pause/resume BackgroundMusic in the editor for
simplicity, leaving only Play/Stop.
Improve documentation of the two cooperating scripts.
Resolves #637
25fd267 to
5868f49
Compare
|
I didn't solve the cutscene → fray's end problem for now. |
Previously, the background music always faded out during the scene-exit
transition, then faded in during the scene-enter transition. This had:
two negative consequences:
the three waves of ink combat);
to be inaudible since the 1-second fade-in is still ongoing.
Instead:
new stream at full volume (fixing point 2 above).
To do this, move most of the logic from BackgroundMusic to MusicPlayer.
Remove the ability to pause/resume BackgroundMusic in the editor for
simplicity, leaving only Play/Stop.
Improve documentation of the two cooperating scripts.
Resolves #637