From 7512bc0fb21c70a9bc3ce6e2c1c157565c025370 Mon Sep 17 00:00:00 2001 From: Erik Hofman Date: Tue, 9 May 2017 10:57:31 +0200 Subject: [PATCH] Make position properties work for relative positions too --- simgear/sound/sample.cxx | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/simgear/sound/sample.cxx b/simgear/sound/sample.cxx index f9a5b63a..ba4ee6e7 100644 --- a/simgear/sound/sample.cxx +++ b/simgear/sound/sample.cxx @@ -167,15 +167,13 @@ SGSoundSample::~SGSoundSample() { void SGSoundSample::update_pos_and_orientation() { if (_use_pos_props) { - if (_pos_prop[0]) _absolute_pos[0] = _pos_prop[0]->getDoubleValue(); - if (_pos_prop[1]) _absolute_pos[1] = _pos_prop[1]->getDoubleValue(); - if (_pos_prop[2]) _absolute_pos[2] = _pos_prop[2]->getDoubleValue(); + if (_pos_prop[0]) _relative_pos[0] = _pos_prop[0]->getDoubleValue(); + if (_pos_prop[1]) _relative_pos[1] = _pos_prop[1]->getDoubleValue(); + if (_pos_prop[2]) _relative_pos[2] = _pos_prop[2]->getDoubleValue(); } - else { - _absolute_pos = _base_pos; - if (_relative_pos[0] || _relative_pos[1] || _relative_pos[2] ) { - _absolute_pos += _rotation.rotate( _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();