aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin
diff options
context:
space:
mode:
authorTeravus Ovares2007-12-30 06:18:17 +0000
committerTeravus Ovares2007-12-30 06:18:17 +0000
commit32438ab1b9a5c270e0a4a2d708f8c7730dc7e617 (patch)
tree21595ce38d7a9474c1b3f3eb71c8d50a2763039a /OpenSim/Region/Physics/OdePlugin
parent* Applied Melanie's same instance IM fix. This will make IMs work within the... (diff)
downloadopensim-SC_OLD-32438ab1b9a5c270e0a4a2d708f8c7730dc7e617.zip
opensim-SC_OLD-32438ab1b9a5c270e0a4a2d708f8c7730dc7e617.tar.gz
opensim-SC_OLD-32438ab1b9a5c270e0a4a2d708f8c7730dc7e617.tar.bz2
opensim-SC_OLD-32438ab1b9a5c270e0a4a2d708f8c7730dc7e617.tar.xz
* This update rolls back the packetpool and LibSL changes. Please retest and then patch these changes back in. Currently it's not quite ready for 0.5. The down side to this action, is that we loose some performance to the garbage collector for now. Given that the target date for 0.5 is *Two days* from now, I'm taking the initiative to work towards a real stable version.
* This update also fixes scripting and some weird physics reactions
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODECharacter.cs18
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs16
2 files changed, 17 insertions, 17 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
index a118e7c..335c3fc 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
@@ -404,18 +404,18 @@ namespace OpenSim.Region.Physics.OdePlugin
404 // ok -- let's stand up straight! 404 // ok -- let's stand up straight!
405 //d.Matrix3 StandUpRotationalMatrix = new d.Matrix3(0.8184158f, -0.5744568f, -0.0139677f, 0.5744615f, 0.8185215f, -0.004074608f, 0.01377355f, -0.004689182f, 0.9998941f); 405 //d.Matrix3 StandUpRotationalMatrix = new d.Matrix3(0.8184158f, -0.5744568f, -0.0139677f, 0.5744615f, 0.8185215f, -0.004074608f, 0.01377355f, -0.004689182f, 0.9998941f);
406 //d.BodySetRotation(Body, ref StandUpRotationalMatrix); 406 //d.BodySetRotation(Body, ref StandUpRotationalMatrix);
407 d.BodySetRotation(Body, ref m_StandUpRotation); 407 //d.BodySetRotation(Body, ref m_StandUpRotation);
408 // The above matrix was generated with the amazing standup routine below by danX0r *cheer* 408 // The above matrix was generated with the amazing standup routine below by danX0r *cheer*
409 //d.Vector3 feet; 409 d.Vector3 feet;
410 //d.Vector3 head; 410 d.Vector3 head;
411 //d.BodyGetRelPointPos(Body, 0.0f, 0.0f, -1.0f, out feet); 411 d.BodyGetRelPointPos(Body, 0.0f, 0.0f, -1.0f, out feet);
412 //d.BodyGetRelPointPos(Body, 0.0f, 0.0f, 1.0f, out head); 412 d.BodyGetRelPointPos(Body, 0.0f, 0.0f, 1.0f, out head);
413 //float posture = head.Z - feet.Z; 413 float posture = head.Z - feet.Z;
414 414
415 // restoring force proportional to lack of posture: 415 // restoring force proportional to lack of posture:
416 //float servo = (2.5f - posture) * POSTURE_SERVO; 416 float servo = (2.5f - posture) * POSTURE_SERVO;
417 //d.BodyAddForceAtRelPos(Body, 0.0f, 0.0f, servo, 0.0f, 0.0f, 1.0f); 417 d.BodyAddForceAtRelPos(Body, 0.0f, 0.0f, servo, 0.0f, 0.0f, 1.0f);
418 //d.BodyAddForceAtRelPos(Body, 0.0f, 0.0f, -servo, 0.0f, 0.0f, -1.0f); 418 d.BodyAddForceAtRelPos(Body, 0.0f, 0.0f, -servo, 0.0f, 0.0f, -1.0f);
419 419
420 //m_lastUpdateSent = false; 420 //m_lastUpdateSent = false;
421 } 421 }
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index 006d829..f8ab8e7 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -300,11 +300,11 @@ namespace OpenSim.Region.Physics.OdePlugin
300 { 300 {
301 if (p2.PhysicsActorType == (int) ActorTypes.Agent) 301 if (p2.PhysicsActorType == (int) ActorTypes.Agent)
302 { 302 {
303 p2.CollidingObj = true; 303 //p2.CollidingObj = true;
304 //contacts[i].depth = 0.003f; 304 //contacts[i].depth = 0.003f;
305 p2.Velocity = p2.Velocity + new PhysicsVector(0, 0, 2.5f); 305 //p2.Velocity = p2.Velocity + new PhysicsVector(0, 0, 2.5f);
306 OdeCharacter character = (OdeCharacter) p2; 306 //OdeCharacter character = (OdeCharacter) p2;
307 character.SetPidStatus(true); 307 //character.SetPidStatus(true);
308 //contacts[i].pos = new d.Vector3(contacts[i].pos.X + (p1.Size.X / 2), contacts[i].pos.Y + (p1.Size.Y / 2), contacts[i].pos.Z + (p1.Size.Z / 2)); 308 //contacts[i].pos = new d.Vector3(contacts[i].pos.X + (p1.Size.X / 2), contacts[i].pos.Y + (p1.Size.Y / 2), contacts[i].pos.Z + (p1.Size.Z / 2));
309 309
310 } 310 }
@@ -316,12 +316,12 @@ namespace OpenSim.Region.Physics.OdePlugin
316 if (p1.PhysicsActorType == (int) ActorTypes.Agent) 316 if (p1.PhysicsActorType == (int) ActorTypes.Agent)
317 { 317 {
318 318
319 p1.CollidingObj = true; 319 //p1.CollidingObj = true;
320 //contacts[i].depth = 0.003f; 320 //contacts[i].depth = 0.003f;
321 p1.Velocity = p1.Velocity + new PhysicsVector(0, 0, 2.5f); 321 //p1.Velocity = p1.Velocity + new PhysicsVector(0, 0, 2.5f);
322 //contacts[i].pos = new d.Vector3(contacts[i].pos.X + (p2.Size.X / 2), contacts[i].pos.Y + (p2.Size.Y / 2), contacts[i].pos.Z + (p2.Size.Z / 2)); 322 //contacts[i].pos = new d.Vector3(contacts[i].pos.X + (p2.Size.X / 2), contacts[i].pos.Y + (p2.Size.Y / 2), contacts[i].pos.Z + (p2.Size.Z / 2));
323 OdeCharacter character = (OdeCharacter)p1; 323 //OdeCharacter character = (OdeCharacter)p1;
324 character.SetPidStatus(true); 324 //character.SetPidStatus(true);
325 } 325 }
326 else 326 else
327 { 327 {