aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs')
-rwxr-xr-xOpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs9
1 files changed, 3 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
index b84ccdc..43b1262 100755
--- a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
@@ -165,13 +165,11 @@ public class BSLinkset
165 // May be called at runtime or taint-time (just pass the appropriate flag). 165 // May be called at runtime or taint-time (just pass the appropriate flag).
166 public void Refresh(BSPhysObject requestor, bool inTaintTime) 166 public void Refresh(BSPhysObject requestor, bool inTaintTime)
167 { 167 {
168 // If there are no children, there can't be any constraints to recompute 168 // If there are no children, not physical or not root, I am not the one that recomputes the constraints
169 if (!HasAnyChildren) 169 // (For the moment, static linksets do create constraints so remove the test for physical.)
170 if (!HasAnyChildren || /*!requestor.IsPhysical ||*/ !IsRoot(requestor))
170 return; 171 return;
171 172
172 // Only the root does the recomputation
173 if (IsRoot(requestor))
174 {
175 BSScene.TaintCallback refreshOperation = delegate() 173 BSScene.TaintCallback refreshOperation = delegate()
176 { 174 {
177 RecomputeLinksetConstraintVariables(); 175 RecomputeLinksetConstraintVariables();
@@ -182,7 +180,6 @@ public class BSLinkset
182 refreshOperation(); 180 refreshOperation();
183 else 181 else
184 PhysicsScene.TaintedObject("BSLinkSet.Refresh", refreshOperation); 182 PhysicsScene.TaintedObject("BSLinkSet.Refresh", refreshOperation);
185 }
186 } 183 }
187 184
188 // The object is going dynamic (physical). Do any setup necessary 185 // The object is going dynamic (physical). Do any setup necessary