_direction(SGVec3d::zeros()),
_velocity(SGVec3f::zeros()),
_orientation(SGQuatd::zeros()),
- _rotation(SGQuatd::zeros()),
_orivec(SGVec3f::zeros()),
_base_pos(SGVec3d::zeros()),
+ _rotation(SGQuatd::zeros()),
_refname(random_string()),
_data(NULL),
_format(AL_FORMAT_MONO8),
_direction(SGVec3d::zeros()),
_velocity(SGVec3f::zeros()),
_orientation(SGQuatd::zeros()),
- _rotation(SGQuatd::zeros()),
_orivec(SGVec3f::zeros()),
_base_pos(SGVec3d::zeros()),
+ _rotation(SGQuatd::zeros()),
_refname(file),
_data(NULL),
_format(AL_FORMAT_MONO8),
_direction(SGVec3d::zeros()),
_velocity(SGVec3f::zeros()),
_orientation(SGQuatd::zeros()),
- _rotation(SGQuatd::zeros()),
_orivec(SGVec3f::zeros()),
_base_pos(SGVec3d::zeros()),
+ _rotation(SGQuatd::zeros()),
_refname(random_string()),
_format(format),
_size(len),
_direction(SGVec3d::zeros()),
_velocity(SGVec3f::zeros()),
_orientation(SGQuatd::zeros()),
- _rotation(SGQuatd::zeros()),
_orivec(SGVec3f::zeros()),
_base_pos(SGVec3d::zeros()),
+ _rotation(SGQuatd::zeros()),
_refname(random_string()),
_format(format),
_size(len),
// destructor
SGSoundSample::~SGSoundSample() {
- if (_data) free(_data);
+ if ( _data != NULL ) free(_data);
}
void SGSoundSample::update_pos_and_orientation() {
_absolute_pos = _base_pos;
- if ( _relative_pos[0] || _relative_pos[1] || _relative_pos[2] ) {
- _absolute_pos += _rotation.backTransform(_relative_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] ) {
- _orivec = toVec3f( _rotation.rotate(_direction) );
+ _orivec = toVec3f( _rotation.rotate( _direction ) );
}
- else
- _orivec = SGVec3f::zeros();
}
string SGSoundSample::random_string() {