Alexander "Ace" Olofsson
113457d934
Fixed some windows issues and got rid of a few tiny warnings while at it.
2012-07-07 01:14:18 +02:00
Marc Zinnschlag
4c39fefd1e
Issue #107 : World is accessed only through the interface class from now on; some include cleanup
2012-07-03 12:30:50 +02:00
Chris Robinson
05fd8f0211
Update the actual sounds and music volume when settings change
2012-05-24 05:30:22 -07:00
scrawl
cbe89f7e32
copy&paste mistake
2012-05-24 08:56:45 +02:00
scrawl
189b044392
small correction
2012-05-24 04:37:41 +02:00
scrawl
9b94edd561
audio tab with volume sliders
2012-05-24 04:34:53 +02:00
scrawl
c9aa0ca1f4
don't create terrain if there is no land data, also fixes a water disappearing issue and a sound exception if cells with no region
2012-05-17 19:54:09 +02:00
Chris Robinson
144d52cf49
Add voices to the chargen class questions
2012-05-01 20:30:31 -07:00
Marc Zinnschlag
35f478071e
Issue #255 : deleted the old environment class and using the new one instead
2012-04-23 15:27:03 +02:00
Chris Robinson
59ccab0b2c
Add sound volume settings
2012-04-07 16:00:30 -07:00
Chris Robinson
752e89a268
Add a setting to select the sound device name
2012-04-07 15:28:38 -07:00
Chris Robinson
87e8917c4d
Don't try to play sounds when no sound output is initialized
2012-04-06 10:43:14 -07:00
Chris Robinson
63e0e82049
Implement an Audiere-based decoder
2012-04-01 15:02:07 -07:00
Chris Robinson
2147210ad7
Don't set an underwater environment when there's no water
2012-04-01 12:46:49 -07:00
Chris Robinson
e8e8d3fb1b
Fully reset the music before starting the next track
2012-03-31 10:59:29 -07:00
Chris Robinson
3a57746ee4
Remove an unneeded volume special-case
2012-03-31 10:43:55 -07:00
Chris Robinson
4944a29b21
Keep track of the sound pitch
2012-03-31 10:41:12 -07:00
Chris Robinson
cbf6c0404a
Implement a basic underwater sound environment
2012-03-31 10:06:12 -07:00
Chris Robinson
575474ff69
Pass the mode flags to the sound output play methods
2012-03-31 08:14:39 -07:00
Chris Robinson
977e7ac9a3
Remove the Play_Single flag. It's not correct.
2012-03-31 07:41:26 -07:00
Chris Robinson
ae308b9b5f
Use a set of flags instead of separate booleans
2012-03-31 07:31:55 -07:00
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
4e908aa095
Add a method to set the sound's position
2012-03-31 01:34:26 -07:00
Chris Robinson
fc167dbc83
Pass Ogre Vector3s to playSound3D and updateListener
2012-03-30 11:42:11 -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
3d5384e2bb
Remove some unneeded casts
2012-03-29 11:28:33 -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
7008bd2fe1
Store some sound properties in the Sound class
2012-03-28 04:58:47 -07:00
Chris Robinson
089c340935
Switch the map so the SoundPtr is used as a key
2012-03-28 04:37:00 -07: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
Chris Robinson
0d552c10bc
Use an empty MWWorld::Ptr object for non-3D sounds
2012-03-26 04:10:47 -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
fa70a72b75
Remove some unused sound manager fields and constructor parameters
2012-03-24 00:22:54 -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
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
Chris Robinson
56c3b988cc
Avoid copying the region when looking for a sound to play
2012-03-21 15:19:40 -07:00
Chris Robinson
26a441f29a
Add a readAll method to the sound decoder, for potentially more efficient reading
2012-03-20 17:57:28 -07:00
Chris Robinson
e48745b68e
Fix streamMusic's path lookup
2012-03-20 12:39:49 -07:00