aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorVegaslon2013-05-09 10:25:44 -0400
committerRobert Adams2013-05-14 18:45:17 -0700
commit00d125dada9fd25588e010d71dc055e13c402003 (patch)
tree298175a456f376bfc2dcd0034dad2d1f9ad90487
parentBulletSim: add a lock to try and catch a native shape creation/destruction (diff)
downloadopensim-SC_OLD-00d125dada9fd25588e010d71dc055e13c402003.zip
opensim-SC_OLD-00d125dada9fd25588e010d71dc055e13c402003.tar.gz
opensim-SC_OLD-00d125dada9fd25588e010d71dc055e13c402003.tar.bz2
opensim-SC_OLD-00d125dada9fd25588e010d71dc055e13c402003.tar.xz
BulletSim: Fix for mantis 6487, also minor adjustment to fix flying while you are running.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs7
1 files changed, 5 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
index 3671fc2..ff5b6ab 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
@@ -419,7 +419,7 @@ public sealed class BSCharacter : BSPhysObject
419 DetailLog("{0},BSCharacter.setTargetVelocity,call,vel={1}", LocalID, value); 419 DetailLog("{0},BSCharacter.setTargetVelocity,call,vel={1}", LocalID, value);
420 m_targetVelocity = value; 420 m_targetVelocity = value;
421 OMV.Vector3 targetVel = value; 421 OMV.Vector3 targetVel = value;
422 if (_setAlwaysRun) 422 if (_setAlwaysRun && !_flying)
423 targetVel *= new OMV.Vector3(BSParam.AvatarAlwaysRunFactor, BSParam.AvatarAlwaysRunFactor, 0f); 423 targetVel *= new OMV.Vector3(BSParam.AvatarAlwaysRunFactor, BSParam.AvatarAlwaysRunFactor, 0f);
424 424
425 if (m_moveActor != null) 425 if (m_moveActor != null)
@@ -481,7 +481,10 @@ public sealed class BSCharacter : BSPhysObject
481 _orientation = value; 481 _orientation = value;
482 PhysScene.TaintedObject("BSCharacter.setOrientation", delegate() 482 PhysScene.TaintedObject("BSCharacter.setOrientation", delegate()
483 { 483 {
484 ForceOrientation = _orientation; 484 // Bullet assumes we know what we are doing when forcing orientation
485 // so it lets us go against all the rules and just compensates for them later.
486 // This keeps us from flipping the capsule over which the veiwer does not understand.
487 ForceOrientation = new OMV.Quaternion(0, 0, _orientation.Z,0);
485 }); 488 });
486 } 489 }
487 } 490 }