16/11/06 4.04.49 – Dev release update
- Added Channel::set3DDopplerLevel / get3DDopplerLevel. Set doppler shift
scale per voice.
- Event API – Sped up EventSystem::update considerably.
- Huge speedup in playing/stoping sounds, connecting channelgroups in
FMOD_SOFTWARE mode. Most noticable in event system.
Added FMOD_INIT_360_MUSICMUTENOTPAUSE for Xbox 360. If dashboard music is
played, FMOD based music tracks can now mute but keep playing, instead of
PS3 – Fixed virtual voices crash.
- Fixed output plugins from crashing upon init in plugin mode.
- Fixed FMOD_INIT_DISABLESOFTWARE making System::init return
FMOD_ERR_NEEDSSOFTWARE if System::setAdvancedSettings was called to enable
createcompressed codecs to be allocated.
- Xbox360 – improved support for nested channelgroups under the "music"
channelgroup when dashboard music is turned on and off.
- Fix geometry engine not updating, if geometry moved faster than the occlusion
fade in/out speed.
- Fixed issue with dsp unit added with addDSP being added(moved) to a different
channel and breaking the old channel (stopping it from playing).
Fixed virtual voices causing FMOD_ERR_NEEDS3D error and generally making
things go wrong between 2d/3d voices.
Event API – Fixed rare crash in EventGroup::freeEventData
This thread is for discussion / bugreports for the current release.
Download the current release from the front page at http://www.fmod.org
We are heading to 4.05.00 release now so no new stuff (of structural significance) will be added until all bugs are fixed in this branch.
Might just be me doing something fancy, but it seems that whenever I specify an end-delay other than 0 for a channel , the channel_end callback never gets called. Same problem with the previous version.
Also: did you happen to make changes to how "idle" channelgroups are processed? I just spent hours figuring out the reason for the garbled sound and came to the conclusion that having tons of channelgroups with dsps isn’t a good thing, even if they aren’t actively used. So, after adding and removing all dsps at every group when starting/stopping to play I noticed the update, tried it again and it seems to work fine without all the adding/removing of dsps. Except it simply works because it’s more efficient and the problem will reappear with more complex setups?
Scratch that. According to getPlayingChannels the channels with an end delay NEVER seem to stop, however Channel::isPlaying seems to work fine. Still a problem, because when I check the assigned channel indices they are counting down to 0, so I take it once it reaches the last channel it keeps reusing that one.
On Linux, I am getting the undefined symbol: __cxa_pure_virtual error reported and fixed in this older bug:
http://188.8.131.52/forum/viewtopic.php … 99d406cd56
The solution at the time was to build/link with g++, not gcc, when producing libfmodex.so. Can you please ensure the module is being built properly?
Please login first to submit.