diff options
author | Robert Adams | 2012-09-21 10:40:14 -0700 |
---|---|---|
committer | Robert Adams | 2012-09-27 22:01:31 -0700 |
commit | 42802669dd8e2d574f9bbd25fbaa86b255fbe25b (patch) | |
tree | e125ec0ca849a34634fd761d732ceb8299f96eb2 /OpenSim/Region/Physics | |
parent | BulletSim: complete code for managed code shape and body tracking. Not debugged. (diff) | |
download | opensim-SC_OLD-42802669dd8e2d574f9bbd25fbaa86b255fbe25b.zip opensim-SC_OLD-42802669dd8e2d574f9bbd25fbaa86b255fbe25b.tar.gz opensim-SC_OLD-42802669dd8e2d574f9bbd25fbaa86b255fbe25b.tar.bz2 opensim-SC_OLD-42802669dd8e2d574f9bbd25fbaa86b255fbe25b.tar.xz |
BulletSim: fix regression that caused cylindar shapes to have a box collision shape
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r-- | OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs index 4d2c70c..b764379 100644 --- a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | |||
@@ -1091,7 +1091,14 @@ public sealed class BSPrim : BSPhysObject | |||
1091 | bool haveShape = false; | 1091 | bool haveShape = false; |
1092 | 1092 | ||
1093 | // If the prim attributes are simple, this could be a simple Bullet native shape | 1093 | // If the prim attributes are simple, this could be a simple Bullet native shape |
1094 | if ((_pbs.SculptEntry && !PhysicsScene.ShouldMeshSculptedPrim) | 1094 | if ( |
1095 | // if the basic shape is a cube or a sphere... | ||
1096 | ((_pbs.ProfileShape == ProfileShape.Square && _pbs.PathCurve == (byte)Extrusion.Straight) | ||
1097 | || (_pbs.ProfileShape == ProfileShape.HalfCircle && _pbs.PathCurve == (byte)Extrusion.Curve1 | ||
1098 | /* && _pbs.Scale.X == _pbs.Scale.Y && _pbs.Scale.Y == _pbs.Scale.Z */ )) | ||
1099 | // ... and we are not doing sculpty meshes... | ||
1100 | && (_pbs.SculptEntry && !PhysicsScene.ShouldMeshSculptedPrim) | ||
1101 | // ... or this is a 'simple' shape... | ||
1095 | || (_pbs.ProfileBegin == 0 && _pbs.ProfileEnd == 0 | 1102 | || (_pbs.ProfileBegin == 0 && _pbs.ProfileEnd == 0 |
1096 | && _pbs.ProfileHollow == 0 | 1103 | && _pbs.ProfileHollow == 0 |
1097 | && _pbs.PathTwist == 0 && _pbs.PathTwistBegin == 0 | 1104 | && _pbs.PathTwist == 0 && _pbs.PathTwistBegin == 0 |
@@ -1099,6 +1106,7 @@ public sealed class BSPrim : BSPhysObject | |||
1099 | && _pbs.PathTaperX == 0 && _pbs.PathTaperY == 0 | 1106 | && _pbs.PathTaperX == 0 && _pbs.PathTaperY == 0 |
1100 | && _pbs.PathScaleX == 100 && _pbs.PathScaleY == 100 | 1107 | && _pbs.PathScaleX == 100 && _pbs.PathScaleY == 100 |
1101 | && _pbs.PathShearX == 0 && _pbs.PathShearY == 0) ) | 1108 | && _pbs.PathShearX == 0 && _pbs.PathShearY == 0) ) |
1109 | // ... then this might be representable as a native Bullet collision shape | ||
1102 | { | 1110 | { |
1103 | if (_pbs.ProfileShape == ProfileShape.HalfCircle && _pbs.PathCurve == (byte)Extrusion.Curve1) | 1111 | if (_pbs.ProfileShape == ProfileShape.HalfCircle && _pbs.PathCurve == (byte)Extrusion.Curve1) |
1104 | { | 1112 | { |