aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
diff options
context:
space:
mode:
authorRobert Adams2012-11-20 08:34:18 -0800
committerRobert Adams2012-11-21 16:42:34 -0800
commit2f5fe4b88e8eb0388cc2138c48a941b1317ed560 (patch)
tree47040fe6c84d9584306c7807a8a98217acfb9045 /OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
parentIf GetAgents() is called with an empty userIDs array then don't bother with a... (diff)
downloadopensim-SC-2f5fe4b88e8eb0388cc2138c48a941b1317ed560.zip
opensim-SC-2f5fe4b88e8eb0388cc2138c48a941b1317ed560.tar.gz
opensim-SC-2f5fe4b88e8eb0388cc2138c48a941b1317ed560.tar.bz2
opensim-SC-2f5fe4b88e8eb0388cc2138c48a941b1317ed560.tar.xz
BulletSim: tweek avatar capsule parameters so avatar feet don't go below ground. This solves the bouncing, short avatar problem (Mantis 6403).
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs7
1 files changed, 4 insertions, 3 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
index 3c48dcc..fa1a23f 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
@@ -184,8 +184,8 @@ public sealed class BSCharacter : BSPhysObject
184 _size = value; 184 _size = value;
185 ComputeAvatarScale(_size); 185 ComputeAvatarScale(_size);
186 ComputeAvatarVolumeAndMass(); 186 ComputeAvatarVolumeAndMass();
187 DetailLog("{0},BSCharacter.setSize,call,scale={1},density={2},volume={3},mass={4}", 187 DetailLog("{0},BSCharacter.setSize,call,size={1},scale={2},density={3},volume={4},mass={5}",
188 LocalID, Scale, _avatarDensity, _avatarVolume, RawMass); 188 LocalID, _size, Scale, _avatarDensity, _avatarVolume, RawMass);
189 189
190 PhysicsScene.TaintedObject("BSCharacter.setSize", delegate() 190 PhysicsScene.TaintedObject("BSCharacter.setSize", delegate()
191 { 191 {
@@ -619,7 +619,8 @@ public sealed class BSCharacter : BSPhysObject
619 newScale.Y = PhysicsScene.Params.avatarCapsuleRadius; 619 newScale.Y = PhysicsScene.Params.avatarCapsuleRadius;
620 620
621 // From the total height, remove the capsule half spheres that are at each end 621 // From the total height, remove the capsule half spheres that are at each end
622 newScale.Z = size.Z - (newScale.X + newScale.Y); 622 // The 1.15f came from ODE. Not sure what this factors in.
623 newScale.Z = (size.Z * 1.15f) - (newScale.X + newScale.Y);
623 Scale = newScale; 624 Scale = newScale;
624 } 625 }
625 626