From 3e9a831e87432d971a6006966e35924df1ed855d Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Tue, 29 May 2012 19:13:27 +0100 Subject: fix physics not reporting collisions only with terrain --- OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs | 1 + 1 file changed, 1 insertion(+) (limited to 'OpenSim/Region/Physics/UbitOdePlugin') diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs index 093bc3c..6e4e41f 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs @@ -1118,6 +1118,7 @@ namespace OpenSim.Region.Physics.OdePlugin if (CollisionEventsThisFrame == null) CollisionEventsThisFrame = new CollisionEventUpdate(); CollisionEventsThisFrame.AddCollider(CollidedWith, contact); + _parent_scene.AddCollisionEventReporting(this); } public void SendCollisions() -- cgit v1.1 From 058707911551dd2f20740a636a8bb195623c2100 Mon Sep 17 00:00:00 2001 From: Melanie Date: Wed, 30 May 2012 19:25:52 +0200 Subject: Whitespace fix --- OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'OpenSim/Region/Physics/UbitOdePlugin') diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs index 5109a6a..628b727 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs @@ -4066,4 +4066,4 @@ namespace OpenSim.Region.Physics.OdePlugin public Vector3 value; } } -} \ No newline at end of file +} -- cgit v1.1 From c548f4879173ca63972eb09bcac76ca8b36e7108 Mon Sep 17 00:00:00 2001 From: Melanie Date: Wed, 30 May 2012 19:32:02 +0200 Subject: Guard setting the building flag --- OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'OpenSim/Region/Physics/UbitOdePlugin') diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs index 628b727..ac049b2 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs @@ -3320,6 +3320,10 @@ namespace OpenSim.Region.Physics.OdePlugin protected void changeBuilding(bool newbuilding) { + // Check if we need to do anything + if (newbuilding == m_building) + return; + if ((bool)newbuilding) { m_building = true; -- cgit v1.1 From cc903992dd3d74a7ff859f0e1a6363ac0c074520 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Wed, 30 May 2012 21:32:15 +0100 Subject: ubitode prim: if makebody() is called already having a body, do a full destrution so there are no 'leaks'. --- OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'OpenSim/Region/Physics/UbitOdePlugin') diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs index ac049b2..9a40ab5 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs @@ -1621,12 +1621,13 @@ namespace OpenSim.Region.Physics.OdePlugin if (Body != IntPtr.Zero) { - d.BodyDestroy(Body); - Body = IntPtr.Zero; +// d.BodyDestroy(Body); +// Body = IntPtr.Zero; + // do a more complet destruction + DestroyBody(); m_log.Warn("[PHYSICS]: MakeBody called having a body"); } - if (d.GeomGetBody(prim_geom) != IntPtr.Zero) { d.GeomSetBody(prim_geom, IntPtr.Zero); -- cgit v1.1