aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs
diff options
context:
space:
mode:
authorRobert Adams2013-02-07 21:57:31 -0800
committerRobert Adams2013-02-08 16:29:29 -0800
commit1b203601f43662541526369f540dd04f5b485be6 (patch)
tree418bae04970c59ed4ab7653686843bc2e916b730 /OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs
parentBulletSim: reclass BSPrim into layers so linkset and physical world displacem... (diff)
downloadopensim-SC_OLD-1b203601f43662541526369f540dd04f5b485be6.zip
opensim-SC_OLD-1b203601f43662541526369f540dd04f5b485be6.tar.gz
opensim-SC_OLD-1b203601f43662541526369f540dd04f5b485be6.tar.bz2
opensim-SC_OLD-1b203601f43662541526369f540dd04f5b485be6.tar.xz
BulletSim: include the linkage to the layered prim implementation. Separate layers for physical (vs simulator) location displacement and linksets.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs')
-rwxr-xr-xOpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs21
1 files changed, 0 insertions, 21 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs
index 0d8bb03..e1d269a 100755
--- a/OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSPhysObject.cs
@@ -86,10 +86,6 @@ public abstract class BSPhysObject : PhysicsActor
86 PhysBody = new BulletBody(localID); 86 PhysBody = new BulletBody(localID);
87 PhysShape = new BulletShape(); 87 PhysShape = new BulletShape();
88 88
89 // A linkset of just me
90 Linkset = BSLinkset.Factory(PhysicsScene, this);
91 PositionDisplacement = OMV.Vector3.Zero;
92
93 LastAssetBuildFailed = false; 89 LastAssetBuildFailed = false;
94 90
95 // Default material type. Also sets Friction, Restitution and Density. 91 // Default material type. Also sets Friction, Restitution and Density.
@@ -117,8 +113,6 @@ public abstract class BSPhysObject : PhysicsActor
117 public string PhysObjectName { get; protected set; } 113 public string PhysObjectName { get; protected set; }
118 public string TypeName { get; protected set; } 114 public string TypeName { get; protected set; }
119 115
120 public BSLinkset Linkset { get; set; }
121 public BSLinksetInfo LinksetInfo { get; set; }
122 116
123 // Return the object mass without calculating it or having side effects 117 // Return the object mass without calculating it or having side effects
124 public abstract float RawMass { get; } 118 public abstract float RawMass { get; }
@@ -188,15 +182,6 @@ public abstract class BSPhysObject : PhysicsActor
188 public abstract OMV.Vector3 RawPosition { get; set; } 182 public abstract OMV.Vector3 RawPosition { get; set; }
189 public abstract OMV.Vector3 ForcePosition { get; set; } 183 public abstract OMV.Vector3 ForcePosition { get; set; }
190 184
191 // 'Position' and 'Orientation' is what the simulator thinks the positions of the prim is.
192 // Because Bullet needs the zero coordinate to be the center of mass of the linkset,
193 // sometimes it is necessary to displace the position the physics engine thinks
194 // the position is. PositionDisplacement must be added and removed from the
195 // position as the simulator position is stored and fetched from the physics
196 // engine. Similar to OrientationDisplacement.
197 public virtual OMV.Vector3 PositionDisplacement { get; set; }
198 public virtual OMV.Quaternion OrientationDisplacement { get; set; }
199
200 public abstract OMV.Quaternion RawOrientation { get; set; } 185 public abstract OMV.Quaternion RawOrientation { get; set; }
201 public abstract OMV.Quaternion ForceOrientation { get; set; } 186 public abstract OMV.Quaternion ForceOrientation { get; set; }
202 187
@@ -302,12 +287,6 @@ public abstract class BSPhysObject : PhysicsActor
302 CollidingObjectStep = PhysicsScene.SimulationStep; 287 CollidingObjectStep = PhysicsScene.SimulationStep;
303 } 288 }
304 289
305 // prims in the same linkset cannot collide with each other
306 if (collidee != null && (this.Linkset.LinksetID == collidee.Linkset.LinksetID))
307 {
308 return ret;
309 }
310
311 CollisionAccumulation++; 290 CollisionAccumulation++;
312 291
313 // For movement tests, remember if we are colliding with an object that is moving. 292 // For movement tests, remember if we are colliding with an object that is moving.