diff options
Diffstat (limited to '')
-rwxr-xr-x | OpenSim/Region/Physics/BulletSPlugin/BSShapes.cs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSShapes.cs b/OpenSim/Region/Physics/BulletSPlugin/BSShapes.cs index 046c12c..395dbe3 100755 --- a/OpenSim/Region/Physics/BulletSPlugin/BSShapes.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSShapes.cs | |||
@@ -580,7 +580,6 @@ public class BSShapeHull : BSShape | |||
580 | PrimitiveBaseShape pbs, OMV.Vector3 size, float lod) | 580 | PrimitiveBaseShape pbs, OMV.Vector3 size, float lod) |
581 | { | 581 | { |
582 | BulletShape newShape = new BulletShape(); | 582 | BulletShape newShape = new BulletShape(); |
583 | newShape.shapeKey = newHullKey; | ||
584 | 583 | ||
585 | IMesh meshData = null; | 584 | IMesh meshData = null; |
586 | List<List<OMV.Vector3>> allHulls = null; | 585 | List<List<OMV.Vector3>> allHulls = null; |
@@ -784,6 +783,7 @@ public class BSShapeHull : BSShape | |||
784 | // create the hull data structure in Bullet | 783 | // create the hull data structure in Bullet |
785 | newShape = physicsScene.PE.CreateHullShape(physicsScene.World, hullCount, convHulls); | 784 | newShape = physicsScene.PE.CreateHullShape(physicsScene.World, hullCount, convHulls); |
786 | } | 785 | } |
786 | newShape.shapeKey = newHullKey; | ||
787 | return newShape; | 787 | return newShape; |
788 | } | 788 | } |
789 | // Callback from convex hull creater with a newly created hull. | 789 | // Callback from convex hull creater with a newly created hull. |
@@ -908,6 +908,7 @@ public class BSShapeCompound : BSShape | |||
908 | } | 908 | } |
909 | else | 909 | else |
910 | { | 910 | { |
911 | // Didn't find it in the lists of specific types. It could be compound. | ||
911 | if (physicsScene.PE.IsCompound(pShape)) | 912 | if (physicsScene.PE.IsCompound(pShape)) |
912 | { | 913 | { |
913 | BSShapeCompound recursiveCompound = new BSShapeCompound(pShape); | 914 | BSShapeCompound recursiveCompound = new BSShapeCompound(pShape); |
@@ -915,6 +916,7 @@ public class BSShapeCompound : BSShape | |||
915 | } | 916 | } |
916 | else | 917 | else |
917 | { | 918 | { |
919 | // If none of the above, maybe it is a simple native shape. | ||
918 | if (physicsScene.PE.IsNativeShape(pShape)) | 920 | if (physicsScene.PE.IsNativeShape(pShape)) |
919 | { | 921 | { |
920 | BSShapeNative nativeShape = new BSShapeNative(pShape); | 922 | BSShapeNative nativeShape = new BSShapeNative(pShape); |
@@ -1054,6 +1056,7 @@ public class BSShapeGImpact : BSShape | |||
1054 | 1056 | ||
1055 | // Check to see if mesh was created (might require an asset). | 1057 | // Check to see if mesh was created (might require an asset). |
1056 | newShape = VerifyMeshCreated(physicsScene, newShape, prim); | 1058 | newShape = VerifyMeshCreated(physicsScene, newShape, prim); |
1059 | newShape.shapeKey = newMeshKey; | ||
1057 | if (!newShape.isNativeShape || prim.PrimAssetState == BSPhysObject.PrimAssetCondition.Failed) | 1060 | if (!newShape.isNativeShape || prim.PrimAssetState == BSPhysObject.PrimAssetCondition.Failed) |
1058 | { | 1061 | { |
1059 | // If a mesh was what was created, remember the built shape for later sharing. | 1062 | // If a mesh was what was created, remember the built shape for later sharing. |