mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-03-03 19:49:41 +00:00
Avoid using loops to wrap angle values (Fixes #2882)
This commit is contained in:
parent
52d8bc555c
commit
ba8e4c22aa
1 changed files with 3 additions and 8 deletions
|
@ -1213,7 +1213,6 @@ namespace MWWorld
|
||||||
void World::rotateObjectImp (const Ptr& ptr, const osg::Vec3f& rot, bool adjust)
|
void World::rotateObjectImp (const Ptr& ptr, const osg::Vec3f& rot, bool adjust)
|
||||||
{
|
{
|
||||||
const float pi = static_cast<float>(osg::PI);
|
const float pi = static_cast<float>(osg::PI);
|
||||||
const float two_pi = pi*2.f;
|
|
||||||
|
|
||||||
ESM::Position pos = ptr.getRefData().getPosition();
|
ESM::Position pos = ptr.getRefData().getPosition();
|
||||||
float *objRot = pos.rot;
|
float *objRot = pos.rot;
|
||||||
|
@ -1243,15 +1242,11 @@ namespace MWWorld
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
while(objRot[0] < -pi) objRot[0] += two_pi;
|
wrap(objRot[0]);
|
||||||
while(objRot[0] > pi) objRot[0] -= two_pi;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
while(objRot[1] < -pi) objRot[1] += two_pi;
|
wrap(objRot[1]);
|
||||||
while(objRot[1] > pi) objRot[1] -= two_pi;
|
wrap(objRot[2]);
|
||||||
|
|
||||||
while(objRot[2] < -pi) objRot[2] += two_pi;
|
|
||||||
while(objRot[2] > pi) objRot[2] -= two_pi;
|
|
||||||
|
|
||||||
ptr.getRefData().setPosition(pos);
|
ptr.getRefData().setPosition(pos);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue