aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
diff options
context:
space:
mode:
authorRobert Adams2013-01-29 17:01:27 -0800
committerRobert Adams2013-01-29 17:04:28 -0800
commita61ecee227450ea81c9afe85a62b207fefa888a9 (patch)
tree8209ad276576a95e86d054f3e36c70b9ec5fb813 /OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
parentminor: change name of json script tests to JsonStoreScriptModuleTests instead... (diff)
downloadopensim-SC-a61ecee227450ea81c9afe85a62b207fefa888a9.zip
opensim-SC-a61ecee227450ea81c9afe85a62b207fefa888a9.tar.gz
opensim-SC-a61ecee227450ea81c9afe85a62b207fefa888a9.tar.bz2
opensim-SC-a61ecee227450ea81c9afe85a62b207fefa888a9.tar.xz
BulletSim: fix physics repositioning when under ground to only happen
for physical objects. Non-physical objects can go anywhere they want.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs')
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
index 2b0a539..b5dd131 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
@@ -344,6 +344,10 @@ public sealed class BSPrim : BSPhysObject
344 { 344 {
345 bool ret = false; 345 bool ret = false;
346 346
347 // We don't care where non-physical items are placed
348 if (!IsPhysicallyActive)
349 return ret;
350
347 if (!PhysicsScene.TerrainManager.IsWithinKnownTerrain(RawPosition)) 351 if (!PhysicsScene.TerrainManager.IsWithinKnownTerrain(RawPosition))
348 { 352 {
349 // The physical object is out of the known/simulated area. 353 // The physical object is out of the known/simulated area.
@@ -1643,7 +1647,7 @@ public sealed class BSPrim : BSPhysObject
1643 // DetailLog("{0},BSPrim.UpdateProperties,afterAssign,entprop={1}", LocalID, entprop); // DEBUG DEBUG 1647 // DetailLog("{0},BSPrim.UpdateProperties,afterAssign,entprop={1}", LocalID, entprop); // DEBUG DEBUG
1644 1648
1645 // The sanity check can change the velocity and/or position. 1649 // The sanity check can change the velocity and/or position.
1646 if (IsPhysical && PositionSanityCheck(true /* inTaintTime */ )) 1650 if (PositionSanityCheck(true /* inTaintTime */ ))
1647 { 1651 {
1648 entprop.Position = _position; 1652 entprop.Position = _position;
1649 entprop.Velocity = _velocity; 1653 entprop.Velocity = _velocity;