aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs')
-rw-r--r--OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs24
1 files changed, 12 insertions, 12 deletions
diff --git a/OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs b/OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs
index fa32441..63bef7c 100644
--- a/OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs
+++ b/OpenSim/Region/PhysicsModules/ubOde/ODEDynamics.cs
@@ -170,7 +170,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
170 m_type = vd.m_type; 170 m_type = vd.m_type;
171 m_flags = vd.m_flags; 171 m_flags = vd.m_flags;
172 172
173 173
174 // Linear properties 174 // Linear properties
175 m_linearMotorDirection = vd.m_linearMotorDirection; 175 m_linearMotorDirection = vd.m_linearMotorDirection;
176 176
@@ -761,8 +761,8 @@ namespace OpenSim.Region.PhysicsModule.ubOde
761 roll = (float)Math.Atan2(minuszY, zZ); 761 roll = (float)Math.Atan2(minuszY, zZ);
762 } 762 }
763 return ; 763 return ;
764 } 764 }
765 765
766 internal void Step() 766 internal void Step()
767 { 767 {
768 IntPtr Body = rootPrim.Body; 768 IntPtr Body = rootPrim.Body;
@@ -797,7 +797,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
797 Vector3 curLocalAngVel = curAngVel * irotq; // current angular velocity in local 797 Vector3 curLocalAngVel = curAngVel * irotq; // current angular velocity in local
798 798
799 float ldampZ = 0; 799 float ldampZ = 0;
800 800
801 bool mousemode = false; 801 bool mousemode = false;
802 bool mousemodebank = false; 802 bool mousemodebank = false;
803 803
@@ -852,7 +852,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
852 m_lmEfect = 0; 852 m_lmEfect = 0;
853 m_ffactor = 1f; 853 m_ffactor = 1f;
854 } 854 }
855 855
856 // hover 856 // hover
857 if (m_VhoverTimescale < 300 && rootPrim.prim_geom != IntPtr.Zero) 857 if (m_VhoverTimescale < 300 && rootPrim.prim_geom != IntPtr.Zero)
858 { 858 {
@@ -1001,7 +1001,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1001 if (broll > halfpi) 1001 if (broll > halfpi)
1002 broll = pi - broll; 1002 broll = pi - broll;
1003 else if (broll < -halfpi) 1003 else if (broll < -halfpi)
1004 broll = -pi - broll; 1004 broll = -pi - broll;
1005 */ 1005 */
1006 broll *= m_bankingEfficiency; 1006 broll *= m_bankingEfficiency;
1007 if (m_bankingMix != 0) 1007 if (m_bankingMix != 0)
@@ -1054,7 +1054,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1054 float invamts = 1.0f/m_angularMotorTimescale; 1054 float invamts = 1.0f/m_angularMotorTimescale;
1055 float tmp; 1055 float tmp;
1056 1056
1057 // get out of x == 0 plane 1057 // get out of x == 0 plane
1058 if(Math.Abs(dirv.X) < 0.001f) 1058 if(Math.Abs(dirv.X) < 0.001f)
1059 dirv.X = 0.001f; 1059 dirv.X = 0.001f;
1060 1060
@@ -1068,7 +1068,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1068 torque.Y += (tmp - curLocalAngVel.Y) * invamts; 1068 torque.Y += (tmp - curLocalAngVel.Y) * invamts;
1069 torque.Y -= curLocalAngVel.Y * m_amdampY; 1069 torque.Y -= curLocalAngVel.Y * m_amdampY;
1070 } 1070 }
1071 else 1071 else
1072 torque.Y -= curLocalAngVel.Y * m_invtimestep; 1072 torque.Y -= curLocalAngVel.Y * m_invtimestep;
1073 1073
1074 if (Math.Abs(dirv.Y) > 0.01) 1074 if (Math.Abs(dirv.Y) > 0.01)
@@ -1099,7 +1099,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1099 { 1099 {
1100 if(mousemodebank) 1100 if(mousemodebank)
1101 torque.X -= curLocalAngVel.X * m_invtimestep; 1101 torque.X -= curLocalAngVel.X * m_invtimestep;
1102 else 1102 else
1103 torque.Z -= curLocalAngVel.Z * m_invtimestep; 1103 torque.Z -= curLocalAngVel.Z * m_invtimestep;
1104 } 1104 }
1105 } 1105 }
@@ -1133,11 +1133,11 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1133 if (m_angularDeflectionEfficiency > 0) 1133 if (m_angularDeflectionEfficiency > 0)
1134 { 1134 {
1135 Vector3 dirv; 1135 Vector3 dirv;
1136 1136
1137 if (curLocalVel.X > 0.01f) 1137 if (curLocalVel.X > 0.01f)
1138 dirv = curLocalVel; 1138 dirv = curLocalVel;
1139 else if (curLocalVel.X < -0.01f) 1139 else if (curLocalVel.X < -0.01f)
1140 // use oposite 1140 // use oposite
1141 dirv = -curLocalVel; 1141 dirv = -curLocalVel;
1142 else 1142 else
1143 { 1143 {
@@ -1167,7 +1167,7 @@ namespace OpenSim.Region.PhysicsModule.ubOde
1167 torque.Z -= curLocalAngVel.Z * m_amdampZ; 1167 torque.Z -= curLocalAngVel.Z * m_amdampZ;
1168 } 1168 }
1169 } 1169 }
1170 1170
1171 force *= dmass.mass; 1171 force *= dmass.mass;
1172 1172
1173 force += rootPrim.m_force; 1173 force += rootPrim.m_force;