aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/PhysicsModules
diff options
context:
space:
mode:
authorUbitUmarov2016-08-02 21:08:22 +0100
committerUbitUmarov2016-08-02 21:08:22 +0100
commit2d8669ad398d90fdea9bf76a4e07707a75b9ff83 (patch)
treeef0c9dadcfc80e4fe8fe20100b1c485364a473b0 /OpenSim/Region/PhysicsModules
parent(mantis 7983) update local cache when storing a baked tex on assets server (diff)
downloadopensim-SC-2d8669ad398d90fdea9bf76a4e07707a75b9ff83.zip
opensim-SC-2d8669ad398d90fdea9bf76a4e07707a75b9ff83.tar.gz
opensim-SC-2d8669ad398d90fdea9bf76a4e07707a75b9ff83.tar.bz2
opensim-SC-2d8669ad398d90fdea9bf76a4e07707a75b9ff83.tar.xz
reduce ubOde walking super climbers
Diffstat (limited to 'OpenSim/Region/PhysicsModules')
-rw-r--r--OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs17
1 files changed, 17 insertions, 0 deletions
diff --git a/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs b/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs
index 7d855f1..49020e9 100644
--- a/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs
+++ b/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs
@@ -1108,7 +1108,24 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1108 vec.Z = depth * PID_P * 50; 1108 vec.Z = depth * PID_P * 50;
1109 1109
1110 if (!flying) 1110 if (!flying)
1111 {
1111 vec.Z += -vel.Z * PID_D; 1112 vec.Z += -vel.Z * PID_D;
1113 if(n.Z < 0.4f)
1114 {
1115 vec.X = depth * PID_P * 50 - vel.X * PID_D;
1116 vec.X *= n.X;
1117 vec.Y = depth * PID_P * 50 - vel.Y * PID_D;
1118 vec.Y *= n.Y;
1119 vec.Z *= n.Z;
1120 if(n.Z < 0.1f)
1121 {
1122 // cancel the slope pose
1123 n.X = 0f;
1124 n.Y = 0f;
1125 n.Z = 1.0f;
1126 }
1127 }
1128 }
1112 1129
1113 if (depth < 0.2f) 1130 if (depth < 0.2f)
1114 { 1131 {