ehofman
6ccad91537
proper orientation(?) and comment out relative position and direction code since it messes with OpenAL in such a way that volume doesn't work properly anymore
2009-11-01 21:52:37 +01:00
ehofman
c89db53ebf
another attempt at getting something useful without any result.
2009-10-31 22:55:32 +01:00
ehofman
4ffd70a42a
fix a typo
2009-10-31 22:55:26 +01:00
ehofman
bbeb48a60d
fix a gcc version test
2009-10-31 22:55:18 +01:00
ehofman
aefe9bc116
MacOS X fix
2009-10-31 22:54:46 +01:00
ehofman
bcb95f647d
add relative pos back in
2009-10-31 00:03:27 +01:00
ehofman
145a7fa146
pass the float pointer to the isNaN function instead of the SGVec3 type
2009-10-29 23:04:17 +01:00
ehofman
06f0b6030a
multiply quats in the right order
2009-10-29 23:04:17 +01:00
ehofman
191ee3a0ed
Commit the current state of affairs to see if it fixes the position code for others
2009-10-29 23:04:17 +01:00
ehofman
f6358694ae
another test program, using real world locations
2009-10-29 23:04:17 +01:00
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