aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorCharles Krinke2008-07-12 17:08:34 +0000
committerCharles Krinke2008-07-12 17:08:34 +0000
commitbdec1aea92ad5a385a3f9bd38f37f24cdb54e121 (patch)
tree5fcde8e4a10439b4cc9677bc9cfd32f34c11e581
parentMantis#1691. Thank you kindly, Phrearch for a pactch that: (diff)
downloadopensim-SC_OLD-bdec1aea92ad5a385a3f9bd38f37f24cdb54e121.zip
opensim-SC_OLD-bdec1aea92ad5a385a3f9bd38f37f24cdb54e121.tar.gz
opensim-SC_OLD-bdec1aea92ad5a385a3f9bd38f37f24cdb54e121.tar.bz2
opensim-SC_OLD-bdec1aea92ad5a385a3f9bd38f37f24cdb54e121.tar.xz
Mantis#1716. Thank you kindly, Nlin for a patch that:
Addresses the Gap when sitting on single prims with a sit target (discrepancy with SL)
-rw-r--r--OpenSim/Region/Environment/Scenes/ScenePresence.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
index a0a76cf..cfda41e 100644
--- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
@@ -98,6 +98,14 @@ namespace OpenSim.Region.Environment.Scenes
98 private LLVector3 m_LastFinitePos = new LLVector3(); 98 private LLVector3 m_LastFinitePos = new LLVector3();
99 99
100 private float m_sitAvatarHeight = 2.0f; 100 private float m_sitAvatarHeight = 2.0f;
101
102 // experimentally determined "fudge factor" to make sit-target positions
103 // the same as in SecondLife. Fudge factor was tested for 36 different
104 // test cases including prims of type box, sphere, cylinder, and torus,
105 // with varying parameters for sit target location, prim size, prim
106 // rotation, prim cut, prim twist, prim taper, and prim shear. See mantis
107 // issue #1716
108 private static readonly LLVector3 m_sitTargetCorrectionOffset = new LLVector3(0.1f, 0.0f, 0.3f);
101 private float m_godlevel = 0; 109 private float m_godlevel = 0;
102 110
103 private bool m_attachmentsTransported = false; 111 private bool m_attachmentsTransported = false;
@@ -1231,6 +1239,7 @@ namespace OpenSim.Region.Environment.Scenes
1231 //Quaternion result = (sitTargetOrient * vq) * nq; 1239 //Quaternion result = (sitTargetOrient * vq) * nq;
1232 1240
1233 m_pos = new LLVector3(sitTargetPos.x, sitTargetPos.y, sitTargetPos.z); 1241 m_pos = new LLVector3(sitTargetPos.x, sitTargetPos.y, sitTargetPos.z);
1242 m_pos += m_sitTargetCorrectionOffset;
1234 m_bodyRot = sitTargetOrient; 1243 m_bodyRot = sitTargetOrient;
1235 //Rotation = sitTargetOrient; 1244 //Rotation = sitTargetOrient;
1236 m_parentPosition = part.AbsolutePosition; 1245 m_parentPosition = part.AbsolutePosition;