aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
authorMelanie2013-01-11 23:52:48 +0100
committerMelanie2013-01-11 23:52:48 +0100
commit6e9092421b2f047dca26fc560d12a629f1177319 (patch)
tree80b847237c67810798d1b8c852b61f543ee290b2 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
parentChange IsRoot to use ReferenceEquals to prevent operator == messiness (diff)
parentmake sure keyframe rotations are normalized (diff)
downloadopensim-SC-6e9092421b2f047dca26fc560d12a629f1177319.zip
opensim-SC-6e9092421b2f047dca26fc560d12a629f1177319.tar.gz
opensim-SC-6e9092421b2f047dca26fc560d12a629f1177319.tar.bz2
opensim-SC-6e9092421b2f047dca26fc560d12a629f1177319.tar.xz
Merge branch 'ubitwork' into avination
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs19
1 files changed, 3 insertions, 16 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 4ad8b11..b008e66 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -307,9 +307,6 @@ namespace OpenSim.Region.Framework.Scenes
307 get { return RootPart.VolumeDetectActive; } 307 get { return RootPart.VolumeDetectActive; }
308 } 308 }
309 309
310 private Vector3 lastPhysGroupPos;
311 private Quaternion lastPhysGroupRot;
312
313 private bool m_isBackedUp; 310 private bool m_isBackedUp;
314 311
315 public bool IsBackedUp 312 public bool IsBackedUp
@@ -2525,6 +2522,7 @@ namespace OpenSim.Region.Framework.Scenes
2525 2522
2526 #endregion 2523 #endregion
2527 2524
2525
2528 public override void Update() 2526 public override void Update()
2529 { 2527 {
2530 // Check that the group was not deleted before the scheduled update 2528 // Check that the group was not deleted before the scheduled update
@@ -2543,19 +2541,8 @@ namespace OpenSim.Region.Framework.Scenes
2543 // check to see if the physical position or rotation warrant an update. 2541 // check to see if the physical position or rotation warrant an update.
2544 if (m_rootPart.UpdateFlag == UpdateRequired.NONE) 2542 if (m_rootPart.UpdateFlag == UpdateRequired.NONE)
2545 { 2543 {
2546 bool UsePhysics = ((RootPart.Flags & PrimFlags.Physics) != 0); 2544 // rootpart SendScheduledUpdates will check if a update is needed
2547 2545 m_rootPart.UpdateFlag = UpdateRequired.TERSE;
2548 if (UsePhysics && !AbsolutePosition.ApproxEquals(lastPhysGroupPos, 0.02f))
2549 {
2550 m_rootPart.UpdateFlag = UpdateRequired.TERSE;
2551 lastPhysGroupPos = AbsolutePosition;
2552 }
2553
2554 if (UsePhysics && !GroupRotation.ApproxEquals(lastPhysGroupRot, 0.1f))
2555 {
2556 m_rootPart.UpdateFlag = UpdateRequired.TERSE;
2557 lastPhysGroupRot = GroupRotation;
2558 }
2559 } 2546 }
2560 2547
2561 SceneObjectPart[] parts = m_parts.GetArray(); 2548 SceneObjectPart[] parts = m_parts.GetArray();