#include <simgear/debug/logstream.hxx>
#include <simgear/structure/exception.hxx>
#include <simgear/misc/sg_path.hxx>
-#include <simgear/math/SGQuat.hxx>
+#include <simgear/math/SGMath.hxx>
#include "soundmgr_openal.hxx"
#include "sample_openal.hxx"
// destructor
SGSoundSample::~SGSoundSample() {
- if (_data) free(_data);
+ if ( _data != NULL ) free(_data);
}
void SGSoundSample::update_pos_and_orientation() {
- // position is in basic view, no need to rotate
- // (proper alignment is set in xmlsound)
- _absolute_pos = _base_pos + _relative_pos;
+ _absolute_pos = _base_pos;
+ if (_relative_pos[0] || _relative_pos[1] || _relative_pos[2] ) {
+ _absolute_pos += _rotation.rotate( _relative_pos );
+ }
_orivec = SGVec3f::zeros();
if ( _direction[0] || _direction[1] || _direction[2] ) {