ehofman
af14d65a98
Fix a bug where a sample was removed from the sample list before it was stopped. Proper listener orientation when inside the airplane (need to find a good solution for outside view).
2009-10-28 23:16:19 +01:00
ehofman
9fe75dc521
also test for NaN in listener code
2009-10-27 22:15:11 +01:00
ehofman
0051bea034
small code reorganization and addition of debugging tests.
2009-10-27 22:15:11 +01:00
ehofman
76c79dba8e
FGViewer::recalcLookFrom turned out to be an excellent source of information for prosition and orientation
2009-10-26 23:07:47 +01:00
ehofman
84dc82506a
re-enable sound positioning and velocity, test for NaN's and print a message when it happens (debugging, should be removed later on).
2009-10-26 18:50:00 +01:00
ehofman
ae1625734c
move all isnan() declarations from sample_group.cxx to compiler.h since it's too important not to have available everywhere.
2009-10-26 18:49:57 +01:00
Tim Moore
e2ce4c0fa9
More include SGMath.hxx to keep MSVC happy
2009-10-26 18:37:27 +01:00
ehofman
a06a15e769
Use shared pointers for any reference to SGSoundSample, fix the constructor of SGSoundSample where data is supplied by the calling program.
2009-10-24 19:29:41 +02:00
ehofman
7c5de29b61
get rid of aut_ptr, it only works with objects that can destroyed with delete (and not even delete[]) which is too limited. take drastic actions to find the sound-not-playing-bug: set all positions and orientations to default all the time.
2009-10-24 19:29:41 +02:00
ehofman
5f9befebae
.. and remove some debugging code
2009-10-22 22:52:05 +02:00
ehofman
6a7b885891
revert some test code
2009-10-22 22:52:05 +02:00
ehofman
cd8e7bbdca
should use free instead of delete for malloced data.
2009-10-22 22:52:05 +02:00
ehofman
5d731ad8c3
a few more temporarty debugging statements
2009-10-22 22:52:05 +02:00
ehofman
7964270929
fix a memory leak and add some temporary debugging statements.
2009-10-22 22:52:05 +02:00
ehofman
ea513d392e
Updates to the test utilies.
2009-10-22 22:52:05 +02:00
ehofman
feba9024eb
Fix a pause situation where more code was executed than expected. Unbind an OpenAL buffer from an OpenAL source when requested to stop playing.
2009-10-21 16:25:29 +02:00
ehofman
b3e16ce8e0
use auto_ptr instead
2009-10-19 23:50:17 +02:00
ehofman
31dd77c694
do not yet add the relative sound position to the absolute position, it's generating NaN's at the moment. Fix a bunch of other small bugs
2009-10-19 23:50:17 +02:00
ehofman
ae58f89fbf
sigh, forgot another alut* at the wrong place.
2009-10-19 23:50:17 +02:00
ehofman
b3bc36b253
restore some part of the code to prevent an untwanted segmentationf fault.
2009-10-18 18:07:19 +02:00
ehofman
7287509fef
Start the sound manager in a deactived state. This means the code now has to activate it explicitly when desired. A non active state means the update function will no be executed.
2009-10-18 18:06:55 +02:00
Tim Moore
b1c49045a8
forward declare Point3D in sg_types.hxx
...
This avoids sucking in SGMath.hxx -- and therefore a bunch of OSG headers --
into many compilation units.
2009-10-18 12:11:13 +02:00
ehofman
0d5634475c
Don't delete the sample data if it wasn't constructed as a file. It's now deleted when calling free_data() by the owner or in the destructor.
2009-10-18 12:07:38 +02:00
ehofman
e6bfe7d40c
revert to previous version
2009-10-18 12:07:25 +02:00
ehofman
811cd0653f
make sure update_late isn't executed when dt=0
2009-10-17 23:47:20 +02:00
ehofman
e2b8a21ff5
documentation, licensing, copyright and small api updates.
2009-10-17 23:47:06 +02:00
ehofman
24c7941f65
convert _relative_pos to a vector of doubles and set the relative offset
2009-10-17 13:39:34 +02:00
ehofman
600a9ee4c5
_data is not an array of pointer
2009-10-17 13:39:34 +02:00
ehofman
fdfdfedf01
Alut < 1.0 fixes and finaly fix the sound orientation
2009-10-17 13:39:33 +02:00
ehofman
a67688322d
Initialization was done much earlier than expected resulting in some sample
...
groups not being activated (and sample loading using OpenAL/ALUT functions to
be scheduled before OpenAL was initilialized).
fix alutInit counter
remove left over static declaration fro SGSoundMgr::load
2009-10-16 11:14:05 +02:00
ehofman
6fe057e277
add a debugging statement
2009-10-16 11:14:05 +02:00
ehofman
f23e8bfb02
fix for latest changes
2009-10-16 11:14:05 +02:00
ehofman
eab9da98f2
give the sample class as much info as possible to properly position and orientate the sounds. unfortunately at this time orientation seems to be from straight behind which means that sounds that have outer-gain set to 0.0 will not be heard yet.
2009-10-16 11:14:05 +02:00
ehofman
f161992836
Alex Buzin:
...
I got an error with the Sunday CVS - FG crashed while exiting .
gdb reports SIGSEGV error at file soundmgr_openal.cxx, line 159.
Error was fixed by changing lines 157-159 from:
buffer_map_iterator buffers_current = _buffers.begin();
buffer_map_iterator buffers_end = _buffers.end();
for ( ; buffers_current != buffers_end; ++buffers_current ) {
to :
buffer_map_iterator buffers_current;
while(_buffers.size()){
buffers_current = _buffers.begin();
2009-10-14 00:34:39 +02:00
Tim Moore
40e13b91fe
Merge branches 'toresten/geofix', 'jmt/lcase', 'stuart/clouds' and 'jmt/dump'
2009-10-12 10:03:00 +02:00
ehofman
af6824605b
proper naming is everything
2009-10-12 00:01:42 +02:00
ehofman
babf58f8d2
Correct (and verrified) position, orientation and velocity vector. Todo: proper sound orientation (the all face forward using the airplane orientation now) and disabling doppler effect when tied to the listener
2009-10-12 00:01:07 +02:00
ehofman
968f5d7693
OpenAL buffer management; add a buffer cache to prevent loading the same sample in memory twice. Especially useful to save memory for multi-aircraft configurations and (later) for AI models.
2009-10-12 00:00:53 +02:00
ehofman
4cc6bd69ae
add the option to tie a SampleGroup to the listener position and orientation
2009-10-08 10:17:11 +02:00
ehofman
199437e859
alut pre-1.0 doesn't support aletGetError but then again, this function doesn't get called in that case either so just comment it out at build time
2009-10-08 10:17:11 +02:00
jmt
e5fac0a01d
Update the screen-dump code to use osgDB, and hence write out files in more common formats (PNG, JPEG, etc). The PPM writing code is retained for the moment, in case someone other than FG is relying upon it.
2009-10-07 08:20:50 +02:00
ehofman
5d14b84969
fix a typo
2009-10-07 08:19:47 +02:00
ehofman
bcccd06cee
(try to) properly align model and viewer
2009-10-07 08:19:33 +02:00
ehofman
6b0ab9a49a
default listener (master volume) default to 0.0 to save some ugly code in FlightGear
2009-10-06 07:22:06 +02:00
ehofman
023002ae73
add the alc.h header file vor OpenAL context related code
2009-10-06 07:22:06 +02:00
ehofman
579d384c04
Rename update() to update_late() for the sound manager to be able to initialize it before any other class that uses it. This will allow the SoundManager to be safely accessed in the constructor of those classes.
2009-10-06 07:22:06 +02:00
ehofman
e2e1524454
Initial commit of the new sound system, expect more updates to follow
2009-10-06 07:22:06 +02:00
durk
4a5853c1c2
Stuart Buchanan:
...
Improvements to the cloudsystem:
- A new xml format
- Texture indexing based on the position of the sprite in the cloud
mass, allowing more control over the texture set.
- Improved fog and shading
- Better sprite distribution
- A more natural distribution of clouds, so no more obvious grids.
2009-10-04 01:41:21 +02:00
Tim Moore
64756d14d0
Back out convertToLowerCase function
...
It brought in an OSG dependency; we'll just use boost::to_lower_copy instead.
2009-10-01 00:31:36 +02:00
Tim Moore
bac2ef601d
Merge branch 'jmt/lcase' into next
2009-09-28 23:51:07 +02:00