aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r--OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs5
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsScene.cs7
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs11
-rw-r--r--OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs5
4 files changed, 27 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
index 92b6929..c1ad555 100644
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
+++ b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
@@ -80,6 +80,11 @@ namespace OpenSim.Region.Physics.BasicPhysicsPlugin
80 return act; 80 return act;
81 } 81 }
82 82
83 public override void RemovePrim(PhysicsActor prim)
84 {
85
86 }
87
83 public override void RemoveAvatar(PhysicsActor actor) 88 public override void RemoveAvatar(PhysicsActor actor)
84 { 89 {
85 BasicActor act = (BasicActor)actor; 90 BasicActor act = (BasicActor)actor;
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
index 0e75b04..11789a2 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
@@ -44,6 +44,8 @@ namespace OpenSim.Physics.Manager
44 44
45 public abstract void RemoveAvatar(PhysicsActor actor); 45 public abstract void RemoveAvatar(PhysicsActor actor);
46 46
47 public abstract void RemovePrim(PhysicsActor prim);
48
47 public abstract PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation); 49 public abstract PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation);
48 50
49 public abstract void Simulate(float timeStep); 51 public abstract void Simulate(float timeStep);
@@ -74,6 +76,11 @@ namespace OpenSim.Physics.Manager
74 76
75 } 77 }
76 78
79 public override void RemovePrim(PhysicsActor prim)
80 {
81
82 }
83
77 public override PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation) 84 public override PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation)
78 { 85 {
79 MainLog.Instance.Verbose("NullPhysicsScene : AddPrim({0},{1})", position, size); 86 MainLog.Instance.Verbose("NullPhysicsScene : AddPrim({0},{1})", position, size);
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index f168340..420693b 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -143,7 +143,16 @@ namespace OpenSim.Region.Physics.OdePlugin
143 143
144 public override void RemoveAvatar(PhysicsActor actor) 144 public override void RemoveAvatar(PhysicsActor actor)
145 { 145 {
146
147 }
146 148
149 public override void RemovePrim(PhysicsActor prim)
150 {
151 if (prim is OdePrim)
152 {
153 d.GeomDestroy(((OdePrim)prim).prim_geom);
154 this._prims.Remove((OdePrim)prim);
155 }
147 } 156 }
148 157
149 public override PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation) 158 public override PhysicsActor AddPrim(PhysicsVector position, PhysicsVector size, Quaternion rotation)
@@ -397,7 +406,7 @@ namespace OpenSim.Region.Physics.OdePlugin
397 private PhysicsVector _size; 406 private PhysicsVector _size;
398 private PhysicsVector _acceleration; 407 private PhysicsVector _acceleration;
399 private Quaternion _orientation; 408 private Quaternion _orientation;
400 IntPtr prim_geom; 409 public IntPtr prim_geom;
401 410
402 public OdePrim(OdeScene parent_scene, PhysicsVector pos, PhysicsVector size, Quaternion rotation) 411 public OdePrim(OdeScene parent_scene, PhysicsVector pos, PhysicsVector size, Quaternion rotation)
403 { 412 {
diff --git a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
index f86eedf..ab7d5bc 100644
--- a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
+++ b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
@@ -98,6 +98,11 @@ namespace OpenSim.Region.Physics.PhysXPlugin
98 return act; 98 return act;
99 } 99 }
100 100
101 public override void RemovePrim(PhysicsActor prim)
102 {
103
104 }
105
101 public override void RemoveAvatar(PhysicsActor actor) 106 public override void RemoveAvatar(PhysicsActor actor)
102 { 107 {
103 108