1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 23:49:55 +00:00
Commit graph

182 commits

Author SHA1 Message Date
Chris Robinson
e48d125a84 Only allow one instance of a given tracked soundid
The untracked flag should probably be broken up and combined with the loop
boolean into a set of flags.
2012-03-31 05:57:03 -07:00
Chris Robinson
bfac946878 Finally "fix" --nosound
Expect degraded performance with it. Looping sounds are constantly checked to
see if they're playing, and try to play it again when it's not.
2012-03-31 03:31:41 -07:00
Chris Robinson
7541e08909 Don't reset the sound Output device if init fails 2012-03-31 02:48:14 -07:00
Chris Robinson
28378c063b Minor OpenAL_SoundStream cleanups 2012-03-31 02:22:23 -07:00
Chris Robinson
4e908aa095 Add a method to set the sound's position 2012-03-31 01:34:26 -07:00
Chris Robinson
b01289128b Split OpenAL_Sound into separate classes for 2D and 3D sounds 2012-03-31 01:15:27 -07:00
Chris Robinson
5adeee20fd Mute sounds that go outside the max distance 2012-03-31 00:57:29 -07:00
Chris Robinson
fc167dbc83 Pass Ogre Vector3s to playSound3D and updateListener 2012-03-30 11:42:11 -07:00
Chris Robinson
fefc8f86ab Remove the unused streamSound3D method 2012-03-30 11:11:07 -07:00
Chris Robinson
1ee8b963d0 Store the sound listener position as well 2012-03-30 07:30:17 -07:00
Chris Robinson
fad27d99e6 Update the actual sound volume with the position 2012-03-30 07:10:34 -07:00
Chris Robinson
479df78ea1 Update the actual sound position after the listener 2012-03-30 07:01:37 -07:00
Chris Robinson
71d9d7e943 Store the current sound position with the Sound object 2012-03-30 06:41:06 -07:00
Chris Robinson
de102cd274 Simplify broken OpenAL workaround 2012-03-30 06:28:40 -07:00
Chris Robinson
33a63d88a5 Merge remote branch 'zini/master' into sound 2012-03-30 06:22:19 -07:00
Nikolay Kasyanov
b6aa8925f4 (Temporary) workaround for broken OpenAL implementations that doesn't return meaningful max counts of sources 2012-03-30 00:12:38 +04:00
Chris Robinson
3d5384e2bb Remove some unneeded casts 2012-03-29 11:28:33 -07:00
Nikolay Kasyanov
20f976ddc7 probably openal initialization fix 2012-03-29 03:02:26 +04:00
Chris Robinson
bedf56a237 Merge remote branch 'zini/next' into sound 2012-03-28 06:27:34 -07:00
Chris Robinson
be337ef7cc Return SoundPtr objects from playSound[3D]
Note that each Sound object currently contains "precious" resources even after
the sound is stopped. The reference should be reliquished as soon as it's no
longer needed (the SoundManager will make sure the sound continues to play
until it's finished).
2012-03-28 06:08:25 -07:00
Chris Robinson
293f33914e Use a deque fpr OpenAL's free sources 2012-03-28 05:35:51 -07:00
Chris Robinson
a3291ef360 Add a sound method to update the volume 2012-03-28 05:19:35 -07:00
Chris Robinson
7008bd2fe1 Store some sound properties in the Sound class 2012-03-28 04:58:47 -07:00
Chris Robinson
c072babd17 Better handle bad OpenAL source counts 2012-03-28 04:56:40 -07:00
Chris Robinson
089c340935 Switch the map so the SoundPtr is used as a key 2012-03-28 04:37:00 -07:00
Marc Zinnschlag
a996cfed71 Merge remote branch 'ace/win-fixes' into next 2012-03-27 20:11:46 +02:00
Chris Robinson
c6c06f1140 Return SoundPtr objects from the playSound and streamSound methods 2012-03-27 05:59:09 -07:00
Chris Robinson
f0db2ab82f Split stopSound3D into separate functions to deal with stopping all sounds on an object 2012-03-27 03:20:50 -07:00
Chris Robinson
033faba9c4 Make a function parameter const 2012-03-27 03:00:04 -07:00
Chris Robinson
c2611d035c Use a pair to match the MWWorld::Ptr object and sound ID, instead of nested maps 2012-03-27 02:50:45 -07:00
Alexander "Ace" Olofsson
55f1053b4f Windows fixes for compiling and linking 2012-03-27 00:36:53 +02:00
Lukasz Gromanowski
be94da1527 Issue #225: Initialize class members in constructor. 2012-03-27 00:34:06 +02:00
Chris Robinson
0d552c10bc Use an empty MWWorld::Ptr object for non-3D sounds 2012-03-26 04:10:47 -07:00
Chris Robinson
7b3ecc290e Fix compilation with older OpenAL headers 2012-03-26 01:12:06 -07:00
Chris Robinson
3e98e28059 Use a better method to get a more even randomization 2012-03-24 21:05:03 -07:00
Chris Robinson
71d3f9bd51 Get the object reference's position once when updating its sounds 2012-03-24 08:12:04 -07:00
Chris Robinson
5cb90ab704 Add some dummy copy constructors and assignment operators to prevent implicit versions from being used 2012-03-24 03:49:03 -07:00
Chris Robinson
fa70a72b75 Remove some unused sound manager fields and constructor parameters 2012-03-24 00:22:54 -07:00
Chris Robinson
1ccddefe28 Properly report the default device when opening sound fails 2012-03-23 00:31:01 -07:00
Chris Robinson
2f0af42261 Use the ALC_ENUMERATE_ALL_EXT extension with OpenAL when available 2012-03-22 23:51:00 -07:00
Chris Robinson
277597c567 Fix DEFAULT_OUTPUT for OpenAL_Output 2012-03-22 18:44:55 -07:00
Chris Robinson
2e28819243 Avoid trying to play an ambient sound if there's no chance for any to play 2012-03-22 18:39:10 -07:00
Chris Robinson
bac6df5563 Avoid leaking an ffmpeg stream 2012-03-21 23:32:24 -07:00
Chris Robinson
15317796bf Handle the wav -> mp3 extension conversion in the sound output backend 2012-03-21 22:49:40 -07:00
Chris Robinson
f11e3e39a1 Add an enumerate method to the sound output interface 2012-03-21 20:15:01 -07:00
Chris Robinson
366c97c492 Use a separate method to check for finished sounds and update the listener 2012-03-21 19:24:38 -07:00
Chris Robinson
e6fe1c0261 Remove a mostly unneeded wrapper function 2012-03-21 19:08:11 -07:00
Chris Robinson
aecc77a73c Replace the sound file extension when opening fails
This should make it more efficient to lookup a sound instead of checking each
time it's played. A better method would perhaps be to check if the resource
exists when the ESM is loaded and replace it then as needed.
2012-03-21 18:42:48 -07:00
Chris Robinson
8056a7f20b Throw an exception when looking up a sound instead of returning an empty string 2012-03-21 18:20:32 -07:00
Chris Robinson
9a139f511f Avoid redefining SOUND_IN 2012-03-21 15:29:05 -07:00