Task #94
Updated by Kenneth Schuetz 3 months ago
Intent: Allow the end users to change the settings for music and SFX volume Note on implementation: The easiest way to implement this is through setting up mixer groups and then routing the various audio sources in the game through the right mixer group (https://docs.unity3d.com/Manual/AudioMixer.html). Here are a couple a quick example of how this can be implemented https://youtu.be/MmWLK9sN3s8 https://johnleonardfrench.com/the-right-way-to-make-a-volume-slider-in-unity-using-logarithmic-conversion/ An issue from mixer groups though is that they take volume in Db rather than a scaler 0 to 1 so it has to be converted. To roughly convert from a scaler value of 0-1 into logarithmic value for the unity mixer group is to use "Mathf.Log10(volume) * 20" Note on estimation: Creating the menu doesn't take long. the difficulty and time involved on this one is in getting the mixer groups integrated in all of the audio sources in the game * [ ] *Dependencies** **Dependencies** * [ ] * [ ] Menus * [ ] Game objects (to play sounds) * [ ] *Test **Test Cases / Acceptance Criteria** * [ ] [ ] Does the game contain an options menu? * [ ] Does the games options menu have an option to change the music volume? * [ ] When changing the volume of music is there a preview of the audio level (preview audio played with the audio system)? * [ ] Does all of the music in the game use the volume defined from the music volume setting * [ ] Does the games options menu have an option to change the sound effect volume? * [ ] When changing the volume of sound effects is there a preview of the audio level (preview audio played with the audio system)? * [ ] Do all of the sound effects in the game use the volume defined from the sound effect volume setting * [ ] Does the options menu save the user’s configuration when the user exits the menu? * [ ] Does the game automatically load in the saved options when starting up? * [ ] When a volume setting is set at half is the volume audibly at half volume (unity can default to logarithmic scale rather than percentage)?