diff options
author | Robert Adams | 2013-01-29 17:01:27 -0800 |
---|---|---|
committer | Robert Adams | 2013-01-29 17:04:28 -0800 |
commit | a61ecee227450ea81c9afe85a62b207fefa888a9 (patch) | |
tree | 8209ad276576a95e86d054f3e36c70b9ec5fb813 /OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | |
parent | minor: change name of json script tests to JsonStoreScriptModuleTests instead... (diff) | |
download | opensim-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.cs | 6 |
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; |