This week we have looked deeper into what external libraries to use for this project, this post will focus on the sound library we chose.
Since we did not want to program the sound functionality ourselves we decided to use an external library for this part of the engine and just write a wrapper class for the library into the engine.
After some looking around we decided to use the library irrKlang (link provided below). It’s a free-to-use sound library for non-commercial projects, which suits us perfectly. If we hypothetically want to take the engine further there is room for upgrade with the irrKlang Pro licence which is for commercial products.
The library itself has a simple API for 2D sound playback, which is the only type of playback we have decided to support in the engine currently. We felt the need for 3D sound would be too situational to outweigh the time that would be spent implementing it.
We wrote the actual wrapper class for the sound library and made a little test environment for it to test the various features. Everything went well, we have the sound prototype ready for milestone 2 and the SoundManager class ready to be implemented in the engine structure.
irrKlang webpage: http://www.ambiera.com/irrklang/