Learn how to play sounds and music
The Sound Manager
The Sound Manager is a component of your Scene Class that allows you to play any sounds and music loaded by the Engine. It can also be used to adjust the volumes of your sounds and music. You access the Sound Manager by calling the the nero::Scene method getSoundManager().
The Sound Manager offers several methods to interact with music. Each music is identified by its name (the name of music file inside the folder resource/music). The Engine plays one music at a time. When you call the method playMusic(name), the engine select and start playing the music. Once a music is being played you can pause it, resume it and stop it. By default Music are played in loop.
void playMusic(std::string name); //Select and play a music void pauseMusic(); //pause the selected music void resumeMusic(); //remuse the selected music after a pause void stopMusic(); //stop playing the selected music
Sound are relative short (a few seconds), so the Sound Manager only offers one method to play them. Once a sound finish to play, it stop automatically. The Engine can play ten (10) sounds at the same time, If you already have 10 sounds playing and you want to play another one, the Engine will stop the first of ten sound and play the new one. This mechanism is called Object pool pattern.
void playSound(std::string name);
Retrieve and Adjust Volume
whether a music or a sound is being played, you can retrieve or adjust the volumes with the methods below.
//get music volume float getMusicVolume(); //adjust music volume void setMusicVolume(float volume); float increaseMusicVolume(float offset = 1.f); float decreaseMusicVolume(float offset = 1.f);
//get sound volume float getSoundVolume(); //adjust sound volume void setSoundVolume(float volume); float increaseSoundVolume(float offset = 1.f); float decreaseSoundVolume(float offset = 1.f);