aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/ScenePresence.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs15
1 files changed, 2 insertions, 13 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index dae20a5..7ed3a4b 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1652,20 +1652,9 @@ namespace OpenSim.Region.Framework.Scenes
1652 1652
1653 bool update_rotation = false; 1653 bool update_rotation = false;
1654 1654
1655 // Whilst not in mouselook, an avatar will transmit only the Z rotation as this is the only axis 1655 if (agentData.BodyRotation != Rotation)
1656 // it rotates around.
1657 // In mouselook, X and Y co-ordinate will also be sent but when used in Rotation, these cause unwanted
1658 // excessive up and down movements of the camera when looking up and down.
1659 // See http://opensimulator.org/mantis/view.php?id=3274
1660 // This does not affect head movement, since this is controlled entirely by camera movement rather than
1661 // body rotation. It does not affect sitting avatar since it's the sitting part rotation that takes
1662 // effect, not the avatar rotation.
1663 // However, if we do need to store X and Y rotations in the future, another solution needs to be found
1664 // for the mouselook bug. Possibly, one could strip out X and Y rotations before sending the avatar
1665 // update messages.
1666 if (agentData.BodyRotation.Z != Rotation.Z || agentData.BodyRotation.W != Rotation.W)
1667 { 1656 {
1668 Rotation = new Quaternion(0, 0, agentData.BodyRotation.Z, agentData.BodyRotation.W); 1657 Rotation = agentData.BodyRotation;
1669 update_rotation = true; 1658 update_rotation = true;
1670 } 1659 }
1671 1660