diff options
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs')
-rw-r--r-- | OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs index d408be0..b26f049 100644 --- a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | |||
@@ -327,7 +327,7 @@ public sealed class BSPrim : BSPhysObject | |||
327 | // A version of the sanity check that also makes sure a new position value is | 327 | // A version of the sanity check that also makes sure a new position value is |
328 | // pushed back to the physics engine. This routine would be used by anyone | 328 | // pushed back to the physics engine. This routine would be used by anyone |
329 | // who is not already pushing the value. | 329 | // who is not already pushing the value. |
330 | private bool PositionSanityCheck2(bool atTaintTime) | 330 | private bool PositionSanityCheck2(bool inTaintTime) |
331 | { | 331 | { |
332 | bool ret = false; | 332 | bool ret = false; |
333 | if (PositionSanityCheck()) | 333 | if (PositionSanityCheck()) |
@@ -339,7 +339,7 @@ public sealed class BSPrim : BSPhysObject | |||
339 | DetailLog("{0},BSPrim.PositionSanityCheck,taint,pos={1},orient={2}", LocalID, _position, _orientation); | 339 | DetailLog("{0},BSPrim.PositionSanityCheck,taint,pos={1},orient={2}", LocalID, _position, _orientation); |
340 | BulletSimAPI.SetObjectTranslation(PhysicsScene.WorldID, LocalID, _position, _orientation); | 340 | BulletSimAPI.SetObjectTranslation(PhysicsScene.WorldID, LocalID, _position, _orientation); |
341 | }; | 341 | }; |
342 | if (atTaintTime) | 342 | if (inTaintTime) |
343 | sanityOperation(); | 343 | sanityOperation(); |
344 | else | 344 | else |
345 | PhysicsScene.TaintedObject("BSPrim.PositionSanityCheck", sanityOperation); | 345 | PhysicsScene.TaintedObject("BSPrim.PositionSanityCheck", sanityOperation); |
@@ -583,7 +583,7 @@ public sealed class BSPrim : BSPhysObject | |||
583 | // Set up the object physicalness (does gravity and collisions move this object) | 583 | // Set up the object physicalness (does gravity and collisions move this object) |
584 | MakeDynamic(IsStatic); | 584 | MakeDynamic(IsStatic); |
585 | 585 | ||
586 | // Update vehicle specific parameters | 586 | // Update vehicle specific parameters (after MakeDynamic() so can change physical parameters) |
587 | _vehicle.Refresh(); | 587 | _vehicle.Refresh(); |
588 | 588 | ||
589 | // Arrange for collision events if the simulator wants them | 589 | // Arrange for collision events if the simulator wants them |
@@ -606,7 +606,7 @@ public sealed class BSPrim : BSPhysObject | |||
606 | // Recompute any linkset parameters. | 606 | // Recompute any linkset parameters. |
607 | // When going from non-physical to physical, this re-enables the constraints that | 607 | // When going from non-physical to physical, this re-enables the constraints that |
608 | // had been automatically disabled when the mass was set to zero. | 608 | // had been automatically disabled when the mass was set to zero. |
609 | Linkset.Refresh(this); | 609 | Linkset.Refresh(this, true); |
610 | 610 | ||
611 | DetailLog("{0},BSPrim.UpdatePhysicalParameters,exit,static={1},solid={2},mass={3},collide={4},cf={5:X},body={6},shape={7}", | 611 | DetailLog("{0},BSPrim.UpdatePhysicalParameters,exit,static={1},solid={2},mass={3},collide={4},cf={5:X},body={6},shape={7}", |
612 | LocalID, IsStatic, IsSolid, _mass, SubscribedEvents(), CurrentCollisionFlags, BSBody, BSShape); | 612 | LocalID, IsStatic, IsSolid, _mass, SubscribedEvents(), CurrentCollisionFlags, BSBody, BSShape); |
@@ -1322,6 +1322,8 @@ public sealed class BSPrim : BSPhysObject | |||
1322 | 1322 | ||
1323 | PositionSanityCheck2(true); | 1323 | PositionSanityCheck2(true); |
1324 | 1324 | ||
1325 | Linkset.UpdateProperties(this); | ||
1326 | |||
1325 | DetailLog("{0},BSPrim.UpdateProperties,call,pos={1},orient={2},vel={3},accel={4},rotVel={5}", | 1327 | DetailLog("{0},BSPrim.UpdateProperties,call,pos={1},orient={2},vel={3},accel={4},rotVel={5}", |
1326 | LocalID, _position, _orientation, _velocity, _acceleration, _rotationalVelocity); | 1328 | LocalID, _position, _orientation, _velocity, _acceleration, _rotationalVelocity); |
1327 | 1329 | ||