diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs index 6bfce5c..6fcd416 100644 --- a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs | |||
@@ -94,6 +94,7 @@ public sealed class BSPrim : BSPhysObject | |||
94 | private int _nextCollisionOkTime = 0; | 94 | private int _nextCollisionOkTime = 0; |
95 | long _collidingStep; | 95 | long _collidingStep; |
96 | long _collidingGroundStep; | 96 | long _collidingGroundStep; |
97 | CollisionFlags m_currentCollisionFlags = 0; | ||
97 | 98 | ||
98 | public override BulletBody Body { get; set; } | 99 | public override BulletBody Body { get; set; } |
99 | 100 | ||
@@ -143,6 +144,7 @@ public sealed class BSPrim : BSPhysObject | |||
143 | // At the moment, we're still letting BulletSim manage the creation and destruction | 144 | // At the moment, we're still letting BulletSim manage the creation and destruction |
144 | // of the object. Someday we'll move that into the C# code. | 145 | // of the object. Someday we'll move that into the C# code. |
145 | Body = new BulletBody(LocalID, BulletSimAPI.GetBodyHandle2(_scene.World.Ptr, LocalID)); | 146 | Body = new BulletBody(LocalID, BulletSimAPI.GetBodyHandle2(_scene.World.Ptr, LocalID)); |
147 | m_currentCollisionFlags = BulletSimAPI.GetCollisionFlags2(Body.Ptr); | ||
146 | }); | 148 | }); |
147 | } | 149 | } |
148 | 150 | ||
@@ -483,8 +485,7 @@ public sealed class BSPrim : BSPhysObject | |||
483 | // recompute any linkset parameters | 485 | // recompute any linkset parameters |
484 | Linkset.Refresh(this); | 486 | Linkset.Refresh(this); |
485 | 487 | ||
486 | CollisionFlags cf = BulletSimAPI.GetCollisionFlags2(Body.Ptr); | 488 | DetailLog("{0},BSPrim.SetObjectDynamic,taint,static={1},solid={2},mass={3}, cf={4}", LocalID, IsStatic, IsSolid, mass, m_currentCollisionFlags); |
487 | DetailLog("{0},BSPrim.SetObjectDynamic,taint,static={1},solid={2},mass={3}, cf={4}", LocalID, IsStatic, IsSolid, mass, cf); | ||
488 | } | 489 | } |
489 | 490 | ||
490 | // prims don't fly | 491 | // prims don't fly |
@@ -644,7 +645,7 @@ public sealed class BSPrim : BSPhysObject | |||
644 | 645 | ||
645 | Scene.TaintedObject("BSPrim.SubscribeEvents", delegate() | 646 | Scene.TaintedObject("BSPrim.SubscribeEvents", delegate() |
646 | { | 647 | { |
647 | BulletSimAPI.AddToCollisionFlags2(Body.Ptr, CollisionFlags.BS_SUBSCRIBE_COLLISION_EVENTS); | 648 | m_currentCollisionFlags = BulletSimAPI.AddToCollisionFlags2(Body.Ptr, CollisionFlags.BS_SUBSCRIBE_COLLISION_EVENTS); |
648 | }); | 649 | }); |
649 | } | 650 | } |
650 | } | 651 | } |
@@ -652,7 +653,7 @@ public sealed class BSPrim : BSPhysObject | |||
652 | _subscribedEventsMs = 0; | 653 | _subscribedEventsMs = 0; |
653 | Scene.TaintedObject("BSPrim.UnSubscribeEvents", delegate() | 654 | Scene.TaintedObject("BSPrim.UnSubscribeEvents", delegate() |
654 | { | 655 | { |
655 | BulletSimAPI.RemoveFromCollisionFlags2(Body.Ptr, CollisionFlags.BS_SUBSCRIBE_COLLISION_EVENTS); | 656 | m_currentCollisionFlags = BulletSimAPI.RemoveFromCollisionFlags2(Body.Ptr, CollisionFlags.BS_SUBSCRIBE_COLLISION_EVENTS); |
656 | }); | 657 | }); |
657 | } | 658 | } |
658 | public override bool SubscribedEvents() { | 659 | public override bool SubscribedEvents() { |