phetsims / wave-interference

"Wave Interference" is an educational simulation in HTML5, by PhET Interactive Simulations.
MIT License
19 stars 5 forks source link

Add a more "squishy" button sound to the wave generator button #480

Closed emily-phet closed 4 years ago

emily-phet commented 4 years ago

We discussed this in a meeting that @Ashton-Morris wasn't present for, and I think it got forgotten.

Currently, the common UI button sound feels discrepant with the squishy look to the button. I bet @Ashton-Morris might have some great squishy sounds in his sound library to use as a starting point!

samreid commented 4 years ago

@Ashton-Morris let me know if I can make any changes for this issue before the Thursday Feb 20 meeting.

Ashton-Morris commented 4 years ago

I have two variations for @emily-phet to hear squishy-button.mp3 flashlight-button.mp3

Is that more in the ballpark?

emily-phet commented 4 years ago

I like "squishy-button.mp3" a lot. @jbphet and @Ashton-Morris can you weigh in with thoughts on how this sounds within the context of the other UI sounds (does it sound like it "fits" in to you?).

"flashlight-button.mp3" sounds too physical or real life to me. I prefer the kind of...rounded or smooth...sounds for the UI sounds, particularly the most subtle ones.

jbphet commented 4 years ago

Both the squishy-button and flashlight-button files still include a pretty strong impact sort of sound, as though something is hitting something else. I think we're looking for a sound with a bit less of that, something a bit "gentler", for lack of a better term. I think the word "squishy" was used to connote something that was less of a switch being flipped and more like a rubbery dome was being pushed in.

Having said that, if we had to go with one of these, I agree with @emily-phet that squishy-button is the better of the two.

samreid commented 4 years ago

@Ashton-Morris please let me know if you would like to explore other sounds for this issue, or if I should integrate "squishy-button.mp3" into the sim.

arouinfar commented 4 years ago

I like squishy-button quite a lot. The flashlight-button reminds me too much of a regular mouse click.

emily-phet commented 4 years ago

@Ashton-Morris We spoke last week about wanting to see a few more variations, see https://github.com/phetsims/wave-interference/issues/480#issuecomment-590983282. It would be ideal if you had a few options ready by tomorrow's usual Tuesday Sound UI+ meeting to discuss.

Ashton-Morris commented 4 years ago

@emily-phet I will have a few variations to listen to by tomorrows meetings

emily-phet commented 4 years ago

@Ashton-Morris Sweet! Looking forward to hearing them.

Ashton-Morris commented 4 years ago

We have some new ones to review today

squishier-button-004.mp3 squishier-button-005.mp3 squishier-button-006.mp3 squishier-button-007.mp3 squishier-button-008.mp3

jbphet commented 4 years ago

@Ashton-Morris please let me know if you would like to explore other sounds for this issue, or if I should integrate "squishy-button.mp3" into the sim.

@samreid - @Ashton-Morris, @emily-phet, and I reviewed the current set of candidates in a sound design review meeting today, and suggest trying out squishier-button-007.mp3 in the context of the simulation. This is just for the faucet button.

samreid commented 4 years ago

I added the sound in the commit. Ready for review.

jbphet commented 4 years ago

Now that I listen to it In context, I don't love it. With the default reverb level from the sound manager, it sounds a lot like a clap sound from an eighties-era drum machine to me. I'd suggest two things:

samreid commented 4 years ago

I changed to 008.mp3 in the commit. However, after doing that, I noticed the sound in the sim didn't sound much like the sound when playing it in the browser (from googled docs). I noticed the outputLevel was set to 5.8, and when I turned it down it sounded more like expected. This may have affected 007.mp3 as well.

@jbphet can you please listen to this? It may also help with the reverb issue. But if you think we should additionally change the reverb level, can you please recommend a new level?

jbphet commented 4 years ago

Having the gain at 5.8 might explain the problem. It would have been clipping and sending a big value into the reverb effect. I don't think 008 is an improvement, so I'd suggest going back to 007 with a more reasonable gain setting.

samreid commented 4 years ago

OK we reverted to 007, still ready for review.

jbphet commented 4 years ago

That sounds much, much better. It seems pretty decent to me now. While I wouldn't use the adjective "squishy" to describe it, I think it works reasonably well in this context.

It struck me while testing this that the sound is the same for both transitions, i.e. unpressed-to-pressed and pressed-to-unpressed. This seems a little odd, and is contrary to how similar UI components, such as checkboxes, currently behave. So, while I know it's getting late in the game, I think we should consider having a variation of this sound for the pressed-to-unpressed transition. What say the others?

I'd also like to get @terracoda's input on this, since having two sounds instead of one might make it work better for a11y, so I'm adding her as an assignee.

emily-phet commented 4 years ago

In 3/24 meeting - we decided we'd like to hear either the option with less compression, or different options. The current sound as implemented felt too harsh as is.

We also agreed we would like a "pressed" and "unpressed" variation (similar to checkboxes, etc.).

Ashton-Morris commented 4 years ago

I added some sounds and this time rendered them at 196kbps incase the reason the other sounds weren't sounding right was because they were at 49k.

squishier-button-v3-008.mp3 squishier-button-v3-007.mp3 squishier-button-v3-006.mp3 squishier-button-v3-005.mp3 squishier-button-v3-004.mp3 squishier-button-v3-003.mp3

emily-phet commented 4 years ago

@jbphet how much time would it take to put in three options (008, 007, and 005) into either Waves Intro or the general button demo thing? I think once we can 'feel' these in context it will be more clear which one is the winner.

Ashton-Morris commented 4 years ago

I really like 7 personally

emily-phet commented 4 years ago

Also - just so it doesn't get lost - whatever sound is the final selection, it would be good to have a "press" and "unpress" version.

jbphet commented 4 years ago

I've added an Options dialog to the PhET menu that allows the user to choose between several of the options that we've identified. You can try it out at https://phet-dev.colorado.edu/html/waves-intro/1.1.0-dev.18/phet/waves-intro_en_phet.html.

jbphet commented 4 years ago

Reminder:

terracoda commented 4 years ago

I liked, 7, 8, and 4. (4 didn't make the options cut) So, I like 7 and 8. If 8 is chosen, I think it would need to be louder as it seems super short.

jbphet commented 4 years ago

@Ashton-Morris and I discussed this sound today and decided to try playing the press sound one semitone or a whole tone lower for the unpress sound.

jbphet commented 4 years ago

@samreid - I added support for playing a unique sound corresponding the the un-pressing of the buttons. I took my best shot at how to approach it, but I wasn't at all sure if having a parameter for pressed (which is what I did) was preferable to having separate methods for playing the press versus unpress sound. Some of what I did is temporary, since it involves multiple sounds, but the basic approach will need to be permanent if we want to be able to support different sounds for press versus unpress. Please have a look and make whatever changes you feel are necessary given your greater understanding of this code.

samreid commented 4 years ago

We agreed that a suitable API for Checkbox was:

    // {Playable|null} - sound generators, if set to null defaults will be used, set to Playable.NO_SOUND to disable
    checkedSoundPlayer: null,
    uncheckedSoundPlayer: null,

Can we use the same strategy for buttons that use StickyToggleButtonModel?

    pressedSoundPlayer: null,
    unpressedSoundPlayer: null,
jbphet commented 4 years ago

@samreid - yes, I think that's a good approach for sticky toggle buttons.

jbphet commented 4 years ago

We (@emily-phet, @Ashton-Morris, and I) discussed the latest sounds in today's meeting and we're good with sound 7 and with it being a step lower for the pop out. The next step will be to eliminate the option dialog and make the sound essentially permanent. I'll do this before the next review meeting.

jbphet commented 4 years ago

I've removed the options dialog and the alternative sounds, so this is essentially finalized.

@samreid - two requests:

  1. Can you review the button sound generation code and make sure it matches the style and spirit of the rest of the code for this sim?
  2. In my opinion, the sound is succinct enough that it wouldn't interfere with the sound effects used on screens 2 and 3, and it seems odd that the sound isn't played in these cases. Would you be okay with playing the sound in all cases where wave generation is turned on and off? I'll try to remember to ask about this at tomorrow's sound design meeting and garner input from the rest of the sound design team too.
emily-phet commented 4 years ago

@jbphet - I requested that the squishy button sound not play when other sounds play immediately on button press. The squishy button sound is only for feedback, and when there is other feedback I don't believe it is needed. I'd like to avoid any chance of the squishy button interfering with focusing or interpreting the more pedagogically relevant sounds. If someone notices that there's not a squishy button sound, that's less problematic than if they spend any time at all attending to the squishy button sound while more important sounds are playing.

If you like, and can do this quickly - we can take a listen to sim later today with squishy sound on other screens. We have had button sounds on those screens previously, though, and I asked for them to be removed when other sounds are playing. Note, the button sound should still play on those other screens when no other sounds are (i.e., on the light screen, when "sound effect" checkbox is unchecked).

Also, @BLFiedler is doing some more interviews. We can ask him to interview on this sim, and one of the things we can ask him to attend to is if anyone notices the button sound difference across screens.

jbphet commented 4 years ago

The sound itself was approved in today's sound design meeting.

We also discussed whether to have the sound play in cases where the sound effect is on for the 2nd and 3rd screens, which is a question I raised in https://github.com/phetsims/wave-interference/issues/480#issuecomment-613148983 item 2. @emily-phet said she would prefer to leave it as is for now, i.e. the button sound doesn't play if the sound effect is on. We may reconsider if we get feedback from interviews that users find this confusing.

There may need to be some volume adjustment before this is considered final, but that can be done as part of the mixing process. @samreid - we could either close this now and do any followup, if any, in separate issues, or leave it open until all decisions and volume levels are finalized - up to you.

samreid commented 4 years ago

Let's close and balance volumes in other issues, thanks! Closing.