From d7e24542818ed3edfa57ce748ad2c0bad8f694f4 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Tue, 17 Apr 2012 14:24:13 +0100 Subject: [PATCH] ubitODE: - made avatar/ground collision pid servo a bit softer since seems a bit unstable with small avas in AVI even if fine on my testsite - Removed reading of PID parameters from config files since that only serves to mess things up and adds more unknowns --- OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs | 4 ++-- OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs | 9 +++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs index 9c1b87bea8..1c8de56a75 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs @@ -851,10 +851,10 @@ namespace OpenSim.Region.Physics.OdePlugin float depth = terrainheight - chrminZ; if (!flying) { - vec.Z = -vel.Z * PID_D * 1.5f + depth * PID_P * 50; + vec.Z = -vel.Z * PID_D * 1.5f + depth * PID_P * 30; } else - vec.Z = depth * PID_P * 50; + vec.Z = depth * PID_P * 30; /* Vector3 vtmp; diff --git a/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs b/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs index 7632e25530..837eae3ff9 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs @@ -455,15 +455,15 @@ namespace OpenSim.Region.Physics.OdePlugin geomDefaultDensity = physicsconfig.GetFloat("geometry_default_density", geomDefaultDensity); bodyFramesAutoDisable = physicsconfig.GetInt("body_frames_auto_disable", bodyFramesAutoDisable); - +/* bodyPIDD = physicsconfig.GetFloat("body_pid_derivative", bodyPIDD); bodyPIDG = physicsconfig.GetFloat("body_pid_gain", bodyPIDG); - +*/ forceSimplePrimMeshing = physicsconfig.GetBoolean("force_simple_prim_meshing", forceSimplePrimMeshing); meshSculptedPrim = physicsconfig.GetBoolean("mesh_sculpted_prim", meshSculptedPrim); meshSculptLOD = physicsconfig.GetFloat("mesh_lod", meshSculptLOD); MeshSculptphysicalLOD = physicsconfig.GetFloat("mesh_physical_lod", MeshSculptphysicalLOD); - +/* if (Environment.OSVersion.Platform == PlatformID.Unix) { avPIDD = physicsconfig.GetFloat("av_pid_derivative_linux", avPIDD); @@ -471,10 +471,11 @@ namespace OpenSim.Region.Physics.OdePlugin } else { + avPIDD = physicsconfig.GetFloat("av_pid_derivative_win", avPIDD); avPIDP = physicsconfig.GetFloat("av_pid_proportional_win", avPIDP); } - +*/ physics_logging = physicsconfig.GetBoolean("physics_logging", false); physics_logging_interval = physicsconfig.GetInt("physics_logging_interval", 0); physics_logging_append_existing_logfile = physicsconfig.GetBoolean("physics_logging_append_existing_logfile", false);