aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r--OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs22
-rw-r--r--OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs32
-rw-r--r--OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETScene.cs10
-rw-r--r--OpenSim/Region/Physics/Meshing/SculptMesh.cs74
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs12
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEVehicleSettings.cs186
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs2
7 files changed, 168 insertions, 170 deletions
diff --git a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
index c0a016e..8da9687 100644
--- a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
+++ b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
@@ -60,7 +60,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
60 private btQuaternion m_bodyOrientation; 60 private btQuaternion m_bodyOrientation;
61 private btDefaultMotionState m_bodyMotionState; 61 private btDefaultMotionState m_bodyMotionState;
62 private btGeneric6DofConstraint m_aMotor; 62 private btGeneric6DofConstraint m_aMotor;
63 private PhysicsVector m_movementComparision; 63 // private PhysicsVector m_movementComparision;
64 private PhysicsVector m_position; 64 private PhysicsVector m_position;
65 private PhysicsVector m_zeroPosition; 65 private PhysicsVector m_zeroPosition;
66 private bool m_zeroFlag = false; 66 private bool m_zeroFlag = false;
@@ -95,15 +95,15 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
95 public bool m_tainted_isPhysical = false; // set when the physical status is tainted (false=not existing in physics engine, true=existing) 95 public bool m_tainted_isPhysical = false; // set when the physical status is tainted (false=not existing in physics engine, true=existing)
96 private float m_tainted_CAPSULE_LENGTH; // set when the capsule length changes. 96 private float m_tainted_CAPSULE_LENGTH; // set when the capsule length changes.
97 private bool m_taintRemove = false; 97 private bool m_taintRemove = false;
98 private bool m_taintedPosition = false; 98 // private bool m_taintedPosition = false;
99 private PhysicsVector m_taintedPosition_value; 99 // private PhysicsVector m_taintedPosition_value;
100 private PhysicsVector m_taintedForce; 100 private PhysicsVector m_taintedForce;
101 101
102 private float m_buoyancy = 0f; 102 private float m_buoyancy = 0f;
103 103
104 // private CollisionLocker ode; 104 // private CollisionLocker ode;
105 105
106 private string m_name = String.Empty; 106 // private string m_name = String.Empty;
107 107
108 private bool[] m_colliderarr = new bool[11]; 108 private bool[] m_colliderarr = new bool[11];
109 private bool[] m_colliderGroundarr = new bool[11]; 109 private bool[] m_colliderGroundarr = new bool[11];
@@ -113,7 +113,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
113 private BulletDotNETScene m_parent_scene; 113 private BulletDotNETScene m_parent_scene;
114 114
115 public int m_eventsubscription = 0; 115 public int m_eventsubscription = 0;
116 private CollisionEventUpdate CollisionEventsThisFrame = new CollisionEventUpdate(); 116 // private CollisionEventUpdate CollisionEventsThisFrame = new CollisionEventUpdate();
117 117
118 public BulletDotNETCharacter(string avName, BulletDotNETScene parent_scene, PhysicsVector pos, PhysicsVector size, float pid_d, float pid_p, float capsule_radius, float tensor, float density, float height_fudge_factor, float walk_divisor, float rundivisor) 118 public BulletDotNETCharacter(string avName, BulletDotNETScene parent_scene, PhysicsVector pos, PhysicsVector size, float pid_d, float pid_p, float capsule_radius, float tensor, float density, float height_fudge_factor, float walk_divisor, float rundivisor)
119 { 119 {
@@ -147,7 +147,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
147 147
148 m_parent_scene.AddPhysicsActorTaint(this); 148 m_parent_scene.AddPhysicsActorTaint(this);
149 149
150 m_name = avName; 150 // m_name = avName;
151 tempVector1 = new btVector3(0, 0, 0); 151 tempVector1 = new btVector3(0, 0, 0);
152 tempVector2 = new btVector3(0, 0, 0); 152 tempVector2 = new btVector3(0, 0, 0);
153 tempVector3 = new btVector3(0, 0, 0); 153 tempVector3 = new btVector3(0, 0, 0);
@@ -159,7 +159,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
159 159
160 tempQuat1 = new btQuaternion(0, 0, 0, 1); 160 tempQuat1 = new btQuaternion(0, 0, 0, 1);
161 tempTrans1 = new btTransform(tempQuat1, tempVector1); 161 tempTrans1 = new btTransform(tempQuat1, tempVector1);
162 m_movementComparision = new PhysicsVector(0, 0, 0); 162 // m_movementComparision = new PhysicsVector(0, 0, 0);
163 m_CapsuleOrientationAxis = new btVector3(1, 0, 1); 163 m_CapsuleOrientationAxis = new btVector3(1, 0, 1);
164 164
165 165
@@ -327,9 +327,9 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
327 get { return m_position; } 327 get { return m_position; }
328 set 328 set
329 { 329 {
330 m_taintedPosition_value = value; 330 // m_taintedPosition_value = value;
331 m_position = value; 331 m_position = value;
332 m_taintedPosition = true; 332 // m_taintedPosition = true;
333 } 333 }
334 } 334 }
335 335
@@ -772,7 +772,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
772 772
773 tempQuat1 = new btQuaternion(0, 0, 0, 1); 773 tempQuat1 = new btQuaternion(0, 0, 0, 1);
774 tempTrans1 = new btTransform(tempQuat1, tempVector1); 774 tempTrans1 = new btTransform(tempQuat1, tempVector1);
775 m_movementComparision = new PhysicsVector(0, 0, 0); 775 // m_movementComparision = new PhysicsVector(0, 0, 0);
776 m_CapsuleOrientationAxis = new btVector3(1, 0, 1); 776 m_CapsuleOrientationAxis = new btVector3(1, 0, 1);
777 } 777 }
778 778
@@ -803,7 +803,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
803 803
804 tempQuat1 = new btQuaternion(0, 0, 0, 1); 804 tempQuat1 = new btQuaternion(0, 0, 0, 1);
805 tempTrans1 = new btTransform(tempQuat1, tempVector1); 805 tempTrans1 = new btTransform(tempQuat1, tempVector1);
806 m_movementComparision = new PhysicsVector(0, 0, 0); 806 // m_movementComparision = new PhysicsVector(0, 0, 0);
807 m_CapsuleOrientationAxis = new btVector3(1, 0, 1); 807 m_CapsuleOrientationAxis = new btVector3(1, 0, 1);
808 808
809 AvatarGeomAndBodyCreation(m_position.X, m_position.Y, 809 AvatarGeomAndBodyCreation(m_position.X, m_position.Y,
diff --git a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
index ec982c6..0d61f72 100644
--- a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
+++ b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
@@ -62,7 +62,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
62 private Quaternion m_taintrot; 62 private Quaternion m_taintrot;
63 private PhysicsVector m_angularlock = new PhysicsVector(1f, 1f, 1f); 63 private PhysicsVector m_angularlock = new PhysicsVector(1f, 1f, 1f);
64 private PhysicsVector m_taintAngularLock = new PhysicsVector(1f, 1f, 1f); 64 private PhysicsVector m_taintAngularLock = new PhysicsVector(1f, 1f, 1f);
65 private btGeneric6DofConstraint Amotor; 65 // private btGeneric6DofConstraint Amotor;
66 66
67 private PhysicsVector m_PIDTarget = new PhysicsVector(0, 0, 0); 67 private PhysicsVector m_PIDTarget = new PhysicsVector(0, 0, 0);
68 private float m_PIDTau = 0f; 68 private float m_PIDTau = 0f;
@@ -75,8 +75,8 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
75 private float m_waterHeight = 0f; 75 private float m_waterHeight = 0f;
76 private float PID_D = 35f; 76 private float PID_D = 35f;
77 private float PID_G = 25f; 77 private float PID_G = 25f;
78 private float m_tensor = 5f; 78 // private float m_tensor = 5f;
79 private int body_autodisable_frames = 20; 79 // private int body_autodisable_frames = 20;
80 private IMesh primMesh = null; 80 private IMesh primMesh = null;
81 81
82 private bool m_usePID = false; 82 private bool m_usePID = false;
@@ -90,15 +90,15 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
90 90
91 private bool m_taintshape = false; 91 private bool m_taintshape = false;
92 private bool m_taintPhysics = false; 92 private bool m_taintPhysics = false;
93 private bool m_collidesLand = true; 93 // private bool m_collidesLand = true;
94 private bool m_collidesWater = false; 94 private bool m_collidesWater = false;
95 public bool m_returnCollisions = false; 95 public bool m_returnCollisions = false;
96 96
97 // Default we're a Geometry 97 // Default we're a Geometry
98 private CollisionCategories m_collisionCategories = (CollisionCategories.Geom); 98 // private CollisionCategories m_collisionCategories = (CollisionCategories.Geom);
99 99
100 // Default, Collide with Other Geometries, spaces and Bodies 100 // Default, Collide with Other Geometries, spaces and Bodies
101 private CollisionCategories m_collisionFlags = m_default_collisionFlags; 101 // private CollisionCategories m_collisionFlags = m_default_collisionFlags;
102 102
103 public bool m_taintremove = false; 103 public bool m_taintremove = false;
104 public bool m_taintdisable = false; 104 public bool m_taintdisable = false;
@@ -110,7 +110,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
110 public uint m_localID = 0; 110 public uint m_localID = 0;
111 111
112 //public GCHandle gc; 112 //public GCHandle gc;
113 private CollisionLocker ode; 113 // private CollisionLocker ode;
114 114
115 private bool m_taintforce = false; 115 private bool m_taintforce = false;
116 private bool m_taintaddangularforce = false; 116 private bool m_taintaddangularforce = false;
@@ -136,7 +136,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
136 internal bool m_isVolumeDetect = false; // If true, this prim only detects collisions but doesn't collide actively 136 internal bool m_isVolumeDetect = false; // If true, this prim only detects collisions but doesn't collide actively
137 137
138 private bool m_throttleUpdates = false; 138 private bool m_throttleUpdates = false;
139 private int throttleCounter = 0; 139 // private int throttleCounter = 0;
140 public int m_interpenetrationcount = 0; 140 public int m_interpenetrationcount = 0;
141 public float m_collisionscore = 0; 141 public float m_collisionscore = 0;
142 public int m_roundsUnderMotionThreshold = 0; 142 public int m_roundsUnderMotionThreshold = 0;
@@ -155,7 +155,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
155 private PhysicsVector _target_velocity; 155 private PhysicsVector _target_velocity;
156 156
157 public int m_eventsubscription = 0; 157 public int m_eventsubscription = 0;
158 private CollisionEventUpdate CollisionEventsThisFrame = null; 158 // private CollisionEventUpdate CollisionEventsThisFrame = null;
159 159
160 public volatile bool childPrim = false; 160 public volatile bool childPrim = false;
161 161
@@ -226,8 +226,8 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
226 PID_D = parent_scene.bodyPIDD; 226 PID_D = parent_scene.bodyPIDD;
227 PID_G = parent_scene.bodyPIDG; 227 PID_G = parent_scene.bodyPIDG;
228 m_density = parent_scene.geomDefaultDensity; 228 m_density = parent_scene.geomDefaultDensity;
229 m_tensor = parent_scene.bodyMotorJointMaxforceTensor; 229 // m_tensor = parent_scene.bodyMotorJointMaxforceTensor;
230 body_autodisable_frames = parent_scene.bodyFramesAutoDisable; 230 // body_autodisable_frames = parent_scene.bodyFramesAutoDisable;
231 231
232 prim_geom = null; 232 prim_geom = null;
233 Body = null; 233 Body = null;
@@ -2146,7 +2146,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
2146 } 2146 }
2147 else 2147 else
2148 { 2148 {
2149 bool hasTrimesh = false; 2149 // bool hasTrimesh = false;
2150 lock (childrenPrim) 2150 lock (childrenPrim)
2151 { 2151 {
2152 foreach (BulletDotNETPrim chld in childrenPrim) 2152 foreach (BulletDotNETPrim chld in childrenPrim)
@@ -2154,8 +2154,8 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
2154 if (chld == null) 2154 if (chld == null)
2155 continue; 2155 continue;
2156 2156
2157 if (chld.NeedsMeshing()) 2157 // if (chld.NeedsMeshing())
2158 hasTrimesh = true; 2158 // hasTrimesh = true;
2159 } 2159 }
2160 } 2160 }
2161 2161
@@ -2517,7 +2517,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
2517 base.RequestPhysicsterseUpdate(); 2517 base.RequestPhysicsterseUpdate();
2518 2518
2519 m_throttleUpdates = false; 2519 m_throttleUpdates = false;
2520 throttleCounter = 0; 2520 // throttleCounter = 0;
2521 _zeroFlag = true; 2521 _zeroFlag = true;
2522 //outofBounds = true; 2522 //outofBounds = true;
2523 } 2523 }
@@ -2556,7 +2556,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
2556 if (!m_lastUpdateSent) 2556 if (!m_lastUpdateSent)
2557 { 2557 {
2558 m_throttleUpdates = false; 2558 m_throttleUpdates = false;
2559 throttleCounter = 0; 2559 // throttleCounter = 0;
2560 m_rotationalVelocity = pv; 2560 m_rotationalVelocity = pv;
2561 2561
2562 if (_parent == null) 2562 if (_parent == null)
diff --git a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETScene.cs b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETScene.cs
index 0a375b2..f006cf1 100644
--- a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETScene.cs
+++ b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETScene.cs
@@ -44,7 +44,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
44 { 44 {
45 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 45 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
46 46
47 private string m_sceneIdentifier = string.Empty; 47 // private string m_sceneIdentifier = string.Empty;
48 48
49 private List<BulletDotNETCharacter> m_characters = new List<BulletDotNETCharacter>(); 49 private List<BulletDotNETCharacter> m_characters = new List<BulletDotNETCharacter>();
50 private List<BulletDotNETPrim> m_prims = new List<BulletDotNETPrim>(); 50 private List<BulletDotNETPrim> m_prims = new List<BulletDotNETPrim>();
@@ -76,7 +76,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
76 private float avMovementDivisorWalk = 1.8f; 76 private float avMovementDivisorWalk = 1.8f;
77 private float avMovementDivisorRun = 0.8f; 77 private float avMovementDivisorRun = 0.8f;
78 78
79 private float minimumGroundFlightOffset = 3f; 79 // private float minimumGroundFlightOffset = 3f;
80 80
81 public bool meshSculptedPrim = true; 81 public bool meshSculptedPrim = true;
82 82
@@ -98,7 +98,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
98 private float[] _origheightmap; // Used for Fly height. Kitto Flora 98 private float[] _origheightmap; // Used for Fly height. Kitto Flora
99 private bool usingGImpactAlgorithm = false; 99 private bool usingGImpactAlgorithm = false;
100 100
101 private IConfigSource m_config; 101 // private IConfigSource m_config;
102 private readonly btVector3 worldAabbMin = new btVector3(-10f, -10f, 0); 102 private readonly btVector3 worldAabbMin = new btVector3(-10f, -10f, 0);
103 private readonly btVector3 worldAabbMax = new btVector3((int)Constants.RegionSize + 10f, (int)Constants.RegionSize + 10f, 9000); 103 private readonly btVector3 worldAabbMax = new btVector3((int)Constants.RegionSize + 10f, (int)Constants.RegionSize + 10f, 9000);
104 104
@@ -107,7 +107,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
107 107
108 public BulletDotNETScene(string sceneIdentifier) 108 public BulletDotNETScene(string sceneIdentifier)
109 { 109 {
110 m_sceneIdentifier = sceneIdentifier; 110 // m_sceneIdentifier = sceneIdentifier;
111 VectorZero = new btVector3(0, 0, 0); 111 VectorZero = new btVector3(0, 0, 0);
112 QuatIdentity = new btQuaternion(0, 0, 0, 1); 112 QuatIdentity = new btQuaternion(0, 0, 0, 1);
113 TransZero = new btTransform(QuatIdentity, VectorZero); 113 TransZero = new btTransform(QuatIdentity, VectorZero);
@@ -119,7 +119,7 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
119 public override void Initialise(IMesher meshmerizer, IConfigSource config) 119 public override void Initialise(IMesher meshmerizer, IConfigSource config)
120 { 120 {
121 mesher = meshmerizer; 121 mesher = meshmerizer;
122 m_config = config; 122 // m_config = config;
123 /* 123 /*
124 if (Environment.OSVersion.Platform == PlatformID.Unix) 124 if (Environment.OSVersion.Platform == PlatformID.Unix)
125 { 125 {
diff --git a/OpenSim/Region/Physics/Meshing/SculptMesh.cs b/OpenSim/Region/Physics/Meshing/SculptMesh.cs
index 77e4459..946b7c6 100644
--- a/OpenSim/Region/Physics/Meshing/SculptMesh.cs
+++ b/OpenSim/Region/Physics/Meshing/SculptMesh.cs
@@ -46,42 +46,42 @@ namespace PrimMesher
46 46
47 public enum SculptType { sphere = 1, torus = 2, plane = 3, cylinder = 4 }; 47 public enum SculptType { sphere = 1, torus = 2, plane = 3, cylinder = 4 };
48 48
49 private Bitmap ScaleImage(Bitmap srcImage, float scale) 49 // private Bitmap ScaleImage(Bitmap srcImage, float scale)
50 { 50 // {
51 int sourceWidth = srcImage.Width; 51 // int sourceWidth = srcImage.Width;
52 int sourceHeight = srcImage.Height; 52 // int sourceHeight = srcImage.Height;
53 int sourceX = 0; 53 // int sourceX = 0;
54 int sourceY = 0; 54 // int sourceY = 0;
55 55
56 int destX = 0; 56 // int destX = 0;
57 int destY = 0; 57 // int destY = 0;
58 int destWidth = (int)(srcImage.Width * scale); 58 // int destWidth = (int)(srcImage.Width * scale);
59 int destHeight = (int)(srcImage.Height * scale); 59 // int destHeight = (int)(srcImage.Height * scale);
60 60
61 if (srcImage.PixelFormat == PixelFormat.Format32bppArgb) 61 // if (srcImage.PixelFormat == PixelFormat.Format32bppArgb)
62 for (int y = 0; y < srcImage.Height; y++) 62 // for (int y = 0; y < srcImage.Height; y++)
63 for (int x = 0; x < srcImage.Width; x++) 63 // for (int x = 0; x < srcImage.Width; x++)
64 { 64 // {
65 Color c = srcImage.GetPixel(x, y); 65 // Color c = srcImage.GetPixel(x, y);
66 srcImage.SetPixel(x, y, Color.FromArgb(255, c.R, c.G, c.B)); 66 // srcImage.SetPixel(x, y, Color.FromArgb(255, c.R, c.G, c.B));
67 } 67 // }
68 68
69 Bitmap scaledImage = new Bitmap(destWidth, destHeight, 69 // Bitmap scaledImage = new Bitmap(destWidth, destHeight,
70 PixelFormat.Format24bppRgb); 70 // PixelFormat.Format24bppRgb);
71 71
72 scaledImage.SetResolution(96.0f, 96.0f); 72 // scaledImage.SetResolution(96.0f, 96.0f);
73 73
74 Graphics grPhoto = Graphics.FromImage(scaledImage); 74 // Graphics grPhoto = Graphics.FromImage(scaledImage);
75 grPhoto.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Low; 75 // grPhoto.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Low;
76 76
77 grPhoto.DrawImage(srcImage, 77 // grPhoto.DrawImage(srcImage,
78 new Rectangle(destX, destY, destWidth, destHeight), 78 // new Rectangle(destX, destY, destWidth, destHeight),
79 new Rectangle(sourceX, sourceY, sourceWidth, sourceHeight), 79 // new Rectangle(sourceX, sourceY, sourceWidth, sourceHeight),
80 GraphicsUnit.Pixel); 80 // GraphicsUnit.Pixel);
81 81
82 grPhoto.Dispose(); 82 // grPhoto.Dispose();
83 return scaledImage; 83 // return scaledImage;
84 } 84 // }
85 85
86 public SculptMesh SculptMeshFromFile(string fileName, SculptType sculptType, int lod, bool viewerMode) 86 public SculptMesh SculptMeshFromFile(string fileName, SculptType sculptType, int lod, bool viewerMode)
87 { 87 {
@@ -283,7 +283,7 @@ namespace PrimMesher
283 viewerFaces = new List<ViewerFace>(); 283 viewerFaces = new List<ViewerFace>();
284 284
285 int width = sculptBitmap.Width / scale; 285 int width = sculptBitmap.Width / scale;
286 int height = sculptBitmap.Height / scale; 286 // int height = sculptBitmap.Height / scale;
287 287
288 int p1, p2, p3, p4; 288 int p1, p2, p3, p4;
289 289
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index 7b3d18f..419fb69 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -66,7 +66,7 @@ namespace OpenSim.Region.Physics.OdePlugin
66 private IntPtr Amotor = IntPtr.Zero; 66 private IntPtr Amotor = IntPtr.Zero;
67 67
68 private PhysicsVector m_PIDTarget = new PhysicsVector(0, 0, 0); 68 private PhysicsVector m_PIDTarget = new PhysicsVector(0, 0, 0);
69 private PhysicsVector m_taintPIDTarget = new PhysicsVector(0, 0, 0); 69 // private PhysicsVector m_taintPIDTarget = new PhysicsVector(0, 0, 0);
70 private float m_PIDTau = 0f; 70 private float m_PIDTau = 0f;
71 private float PID_D = 35f; 71 private float PID_D = 35f;
72 private float PID_G = 25f; 72 private float PID_G = 25f;
@@ -80,7 +80,7 @@ namespace OpenSim.Region.Physics.OdePlugin
80 private float m_groundHeight = 0f; 80 private float m_groundHeight = 0f;
81 private float m_waterHeight = 0f; 81 private float m_waterHeight = 0f;
82 82
83 private float m_tensor = 5f; 83 // private float m_tensor = 5f;
84 private int body_autodisable_frames = 20; 84 private int body_autodisable_frames = 20;
85 private IMesh primMesh = null; 85 private IMesh primMesh = null;
86 86
@@ -189,7 +189,7 @@ namespace OpenSim.Region.Physics.OdePlugin
189 PID_D = parent_scene.bodyPIDD; 189 PID_D = parent_scene.bodyPIDD;
190 PID_G = parent_scene.bodyPIDG; 190 PID_G = parent_scene.bodyPIDG;
191 m_density = parent_scene.geomDefaultDensity; 191 m_density = parent_scene.geomDefaultDensity;
192 m_tensor = parent_scene.bodyMotorJointMaxforceTensor; 192 // m_tensor = parent_scene.bodyMotorJointMaxforceTensor;
193 body_autodisable_frames = parent_scene.bodyFramesAutoDisable; 193 body_autodisable_frames = parent_scene.bodyFramesAutoDisable;
194 194
195 195
@@ -2746,11 +2746,9 @@ namespace OpenSim.Region.Physics.OdePlugin
2746 2746
2747 axisnum = (axisnum - (axis.X + axis.Y + axis.Z)); 2747 axisnum = (axisnum - (axis.X + axis.Y + axis.Z));
2748 2748
2749 PhysicsVector totalSize = new PhysicsVector(_size.X, _size.Y, _size.Z); 2749 // PhysicsVector totalSize = new PhysicsVector(_size.X, _size.Y, _size.Z);
2750 2750
2751 2751
2752
2753
2754 // Inverse Inertia Matrix, set the X, Y, and/r Z inertia to 0 then invert it again. 2752 // Inverse Inertia Matrix, set the X, Y, and/r Z inertia to 0 then invert it again.
2755 d.Mass objMass; 2753 d.Mass objMass;
2756 d.MassSetZero(out objMass); 2754 d.MassSetZero(out objMass);
@@ -2807,7 +2805,7 @@ namespace OpenSim.Region.Physics.OdePlugin
2807 2805
2808 if (axisnum <= 0) 2806 if (axisnum <= 0)
2809 return; 2807 return;
2810 int dAMotorEuler = 1; 2808 // int dAMotorEuler = 1;
2811 2809
2812 Amotor = d.JointCreateAMotor(_parent_scene.world, IntPtr.Zero); 2810 Amotor = d.JointCreateAMotor(_parent_scene.world, IntPtr.Zero);
2813 d.JointAttach(Amotor, Body, IntPtr.Zero); 2811 d.JointAttach(Amotor, Body, IntPtr.Zero);
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEVehicleSettings.cs b/OpenSim/Region/Physics/OdePlugin/ODEVehicleSettings.cs
index a4b93a0..e6b84ae 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEVehicleSettings.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEVehicleSettings.cs
@@ -50,39 +50,39 @@ namespace OpenSim.Region.Physics.OdePlugin
50 } 50 }
51 51
52 private int frcount = 0; 52 private int frcount = 0;
53 private float frmod = 3.0f; 53 // private float frmod = 3.0f;
54 54
55 private Vehicle m_type = Vehicle.TYPE_NONE; 55 private Vehicle m_type = Vehicle.TYPE_NONE;
56 private OdeScene m_parentScene = null; 56 // private OdeScene m_parentScene = null;
57 private IntPtr m_body = IntPtr.Zero; 57 private IntPtr m_body = IntPtr.Zero;
58 private IntPtr m_jointGroup = IntPtr.Zero; 58 private IntPtr m_jointGroup = IntPtr.Zero;
59 private IntPtr m_aMotor = IntPtr.Zero; 59 private IntPtr m_aMotor = IntPtr.Zero;
60 private IntPtr m_lMotor1 = IntPtr.Zero; 60 private IntPtr m_lMotor1 = IntPtr.Zero;
61 private IntPtr m_lMotor2 = IntPtr.Zero; 61 // private IntPtr m_lMotor2 = IntPtr.Zero;
62 private IntPtr m_lMotor3 = IntPtr.Zero; 62 // private IntPtr m_lMotor3 = IntPtr.Zero;
63 63
64 // Vehicle properties 64 // Vehicle properties
65 private Quaternion m_referenceFrame = Quaternion.Identity; 65 // private Quaternion m_referenceFrame = Quaternion.Identity;
66 private Vector3 m_angularFrictionTimescale = Vector3.Zero; 66 private Vector3 m_angularFrictionTimescale = Vector3.Zero;
67 private Vector3 m_angularMotorDirection = Vector3.Zero; 67 private Vector3 m_angularMotorDirection = Vector3.Zero;
68 private Vector3 m_angularMotorDirectionLASTSET = Vector3.Zero; 68 private Vector3 m_angularMotorDirectionLASTSET = Vector3.Zero;
69 private Vector3 m_linearFrictionTimescale = Vector3.Zero; 69 private Vector3 m_linearFrictionTimescale = Vector3.Zero;
70 private Vector3 m_linearMotorDirection = Vector3.Zero; 70 private Vector3 m_linearMotorDirection = Vector3.Zero;
71 private Vector3 m_linearMotorDirectionLASTSET = Vector3.Zero; 71 private Vector3 m_linearMotorDirectionLASTSET = Vector3.Zero;
72 private Vector3 m_linearMotorOffset = Vector3.Zero; 72 // private Vector3 m_linearMotorOffset = Vector3.Zero;
73 private float m_angularDeflectionEfficiency = 0; 73 // private float m_angularDeflectionEfficiency = 0;
74 private float m_angularDeflectionTimescale = 0; 74 // private float m_angularDeflectionTimescale = 0;
75 private float m_angularMotorDecayTimescale = 0; 75 private float m_angularMotorDecayTimescale = 0;
76 private float m_angularMotorTimescale = 0; 76 private float m_angularMotorTimescale = 0;
77 private float m_bankingEfficiency = 0; 77 // private float m_bankingEfficiency = 0;
78 private float m_bankingMix = 0; 78 // private float m_bankingMix = 0;
79 private float m_bankingTimescale = 0; 79 // private float m_bankingTimescale = 0;
80 private float m_buoyancy = 0; 80 // private float m_buoyancy = 0;
81 private float m_hoverHeight = 0; 81 // private float m_hoverHeight = 0;
82 private float m_hoverEfficiency = 0; 82 // private float m_hoverEfficiency = 0;
83 private float m_hoverTimescale = 0; 83 // private float m_hoverTimescale = 0;
84 private float m_linearDeflectionEfficiency = 0; 84 // private float m_linearDeflectionEfficiency = 0;
85 private float m_linearDeflectionTimescale = 0; 85 // private float m_linearDeflectionTimescale = 0;
86 private float m_linearMotorDecayTimescale = 0; 86 private float m_linearMotorDecayTimescale = 0;
87 private float m_linearMotorTimescale = 0; 87 private float m_linearMotorTimescale = 0;
88 private float m_verticalAttractionEfficiency = 0; 88 private float m_verticalAttractionEfficiency = 0;
@@ -91,7 +91,7 @@ namespace OpenSim.Region.Physics.OdePlugin
91 private Vector3 m_lastAngularVelocityVector = Vector3.Zero; 91 private Vector3 m_lastAngularVelocityVector = Vector3.Zero;
92 private VehicleFlag m_flags = (VehicleFlag) 0; 92 private VehicleFlag m_flags = (VehicleFlag) 0;
93 93
94 private bool m_LinearMotorSetLastFrame = false; 94 // private bool m_LinearMotorSetLastFrame = false;
95 95
96 96
97 97
@@ -102,11 +102,11 @@ namespace OpenSim.Region.Physics.OdePlugin
102 { 102 {
103 case Vehicle.ANGULAR_DEFLECTION_EFFICIENCY: 103 case Vehicle.ANGULAR_DEFLECTION_EFFICIENCY:
104 if (pValue < 0.01f) pValue = 0.01f; 104 if (pValue < 0.01f) pValue = 0.01f;
105 m_angularDeflectionEfficiency = pValue; 105 // m_angularDeflectionEfficiency = pValue;
106 break; 106 break;
107 case Vehicle.ANGULAR_DEFLECTION_TIMESCALE: 107 case Vehicle.ANGULAR_DEFLECTION_TIMESCALE:
108 if (pValue < 0.01f) pValue = 0.01f; 108 if (pValue < 0.01f) pValue = 0.01f;
109 m_angularDeflectionTimescale = pValue; 109 // m_angularDeflectionTimescale = pValue;
110 break; 110 break;
111 case Vehicle.ANGULAR_MOTOR_DECAY_TIMESCALE: 111 case Vehicle.ANGULAR_MOTOR_DECAY_TIMESCALE:
112 if (pValue < 0.01f) pValue = 0.01f; 112 if (pValue < 0.01f) pValue = 0.01f;
@@ -118,36 +118,36 @@ namespace OpenSim.Region.Physics.OdePlugin
118 break; 118 break;
119 case Vehicle.BANKING_EFFICIENCY: 119 case Vehicle.BANKING_EFFICIENCY:
120 if (pValue < 0.01f) pValue = 0.01f; 120 if (pValue < 0.01f) pValue = 0.01f;
121 m_bankingEfficiency = pValue; 121 // m_bankingEfficiency = pValue;
122 break; 122 break;
123 case Vehicle.BANKING_MIX: 123 case Vehicle.BANKING_MIX:
124 if (pValue < 0.01f) pValue = 0.01f; 124 if (pValue < 0.01f) pValue = 0.01f;
125 m_bankingMix = pValue; 125 // m_bankingMix = pValue;
126 break; 126 break;
127 case Vehicle.BANKING_TIMESCALE: 127 case Vehicle.BANKING_TIMESCALE:
128 if (pValue < 0.01f) pValue = 0.01f; 128 if (pValue < 0.01f) pValue = 0.01f;
129 m_bankingTimescale = pValue; 129 // m_bankingTimescale = pValue;
130 break; 130 break;
131 case Vehicle.BUOYANCY: 131 case Vehicle.BUOYANCY:
132 m_buoyancy = pValue; 132 // m_buoyancy = pValue;
133 break; 133 break;
134 case Vehicle.HOVER_EFFICIENCY: 134 case Vehicle.HOVER_EFFICIENCY:
135 m_hoverEfficiency = pValue; 135 // m_hoverEfficiency = pValue;
136 break; 136 break;
137 case Vehicle.HOVER_HEIGHT: 137 case Vehicle.HOVER_HEIGHT:
138 m_hoverHeight = pValue; 138 // m_hoverHeight = pValue;
139 break; 139 break;
140 case Vehicle.HOVER_TIMESCALE: 140 case Vehicle.HOVER_TIMESCALE:
141 if (pValue < 0.01f) pValue = 0.01f; 141 if (pValue < 0.01f) pValue = 0.01f;
142 m_hoverTimescale = pValue; 142 // m_hoverTimescale = pValue;
143 break; 143 break;
144 case Vehicle.LINEAR_DEFLECTION_EFFICIENCY: 144 case Vehicle.LINEAR_DEFLECTION_EFFICIENCY:
145 if (pValue < 0.01f) pValue = 0.01f; 145 if (pValue < 0.01f) pValue = 0.01f;
146 m_linearDeflectionEfficiency = pValue; 146 // m_linearDeflectionEfficiency = pValue;
147 break; 147 break;
148 case Vehicle.LINEAR_DEFLECTION_TIMESCALE: 148 case Vehicle.LINEAR_DEFLECTION_TIMESCALE:
149 if (pValue < 0.01f) pValue = 0.01f; 149 if (pValue < 0.01f) pValue = 0.01f;
150 m_linearDeflectionTimescale = pValue; 150 // m_linearDeflectionTimescale = pValue;
151 break; 151 break;
152 case Vehicle.LINEAR_MOTOR_DECAY_TIMESCALE: 152 case Vehicle.LINEAR_MOTOR_DECAY_TIMESCALE:
153 if (pValue < 0.01f) pValue = 0.01f; 153 if (pValue < 0.01f) pValue = 0.01f;
@@ -183,7 +183,7 @@ namespace OpenSim.Region.Physics.OdePlugin
183 m_linearMotorDirectionLASTSET = new Vector3(pValue, pValue, pValue); 183 m_linearMotorDirectionLASTSET = new Vector3(pValue, pValue, pValue);
184 break; 184 break;
185 case Vehicle.LINEAR_MOTOR_OFFSET: 185 case Vehicle.LINEAR_MOTOR_OFFSET:
186 m_linearMotorOffset = new Vector3(pValue, pValue, pValue); 186 // m_linearMotorOffset = new Vector3(pValue, pValue, pValue);
187 break; 187 break;
188 188
189 } 189 }
@@ -209,7 +209,7 @@ namespace OpenSim.Region.Physics.OdePlugin
209 m_linearMotorDirectionLASTSET = new Vector3(pValue.X, pValue.Y, pValue.Z); 209 m_linearMotorDirectionLASTSET = new Vector3(pValue.X, pValue.Y, pValue.Z);
210 break; 210 break;
211 case Vehicle.LINEAR_MOTOR_OFFSET: 211 case Vehicle.LINEAR_MOTOR_OFFSET:
212 m_linearMotorOffset = new Vector3(pValue.X, pValue.Y, pValue.Z); 212 // m_linearMotorOffset = new Vector3(pValue.X, pValue.Y, pValue.Z);
213 break; 213 break;
214 } 214 }
215 Reset(); 215 Reset();
@@ -220,7 +220,7 @@ namespace OpenSim.Region.Physics.OdePlugin
220 switch (pParam) 220 switch (pParam)
221 { 221 {
222 case Vehicle.REFERENCE_FRAME: 222 case Vehicle.REFERENCE_FRAME:
223 m_referenceFrame = pValue; 223 // m_referenceFrame = pValue;
224 break; 224 break;
225 } 225 }
226 Reset(); 226 Reset();
@@ -265,7 +265,7 @@ namespace OpenSim.Region.Physics.OdePlugin
265 return; 265 return;
266 266
267 m_body = pBody; 267 m_body = pBody;
268 m_parentScene = pParentScene; 268 // m_parentScene = pParentScene;
269 if (m_jointGroup == IntPtr.Zero) 269 if (m_jointGroup == IntPtr.Zero)
270 m_jointGroup = d.JointGroupCreate(3); 270 m_jointGroup = d.JointGroupCreate(3);
271 271
@@ -341,18 +341,18 @@ namespace OpenSim.Region.Physics.OdePlugin
341 m_angularMotorDirection = Vector3.Zero; 341 m_angularMotorDirection = Vector3.Zero;
342 m_angularMotorTimescale = 1000; 342 m_angularMotorTimescale = 1000;
343 m_angularMotorDecayTimescale = 120; 343 m_angularMotorDecayTimescale = 120;
344 m_hoverHeight = 0; 344 // m_hoverHeight = 0;
345 m_hoverEfficiency = 10; 345 // m_hoverEfficiency = 10;
346 m_hoverTimescale = 10; 346 // m_hoverTimescale = 10;
347 m_buoyancy = 0; 347 // m_buoyancy = 0;
348 m_linearDeflectionEfficiency = 1; 348 // m_linearDeflectionEfficiency = 1;
349 m_linearDeflectionTimescale = 1; 349 // m_linearDeflectionTimescale = 1;
350 m_angularDeflectionEfficiency = 1; 350 // m_angularDeflectionEfficiency = 1;
351 m_angularDeflectionTimescale = 1000; 351 // m_angularDeflectionTimescale = 1000;
352 m_bankingEfficiency = 0; 352 // m_bankingEfficiency = 0;
353 m_bankingMix = 1; 353 // m_bankingMix = 1;
354 m_bankingTimescale = 10; 354 // m_bankingTimescale = 10;
355 m_referenceFrame = Quaternion.Identity; 355 // m_referenceFrame = Quaternion.Identity;
356 m_flags &= 356 m_flags &=
357 ~(VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY | 357 ~(VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY |
358 VehicleFlag.HOVER_GLOBAL_HEIGHT | VehicleFlag.HOVER_UP_ONLY); 358 VehicleFlag.HOVER_GLOBAL_HEIGHT | VehicleFlag.HOVER_UP_ONLY);
@@ -367,20 +367,20 @@ namespace OpenSim.Region.Physics.OdePlugin
367 m_angularMotorDirection = Vector3.Zero; 367 m_angularMotorDirection = Vector3.Zero;
368 m_angularMotorTimescale = 1; 368 m_angularMotorTimescale = 1;
369 m_angularMotorDecayTimescale = 0.8f; 369 m_angularMotorDecayTimescale = 0.8f;
370 m_hoverHeight = 0; 370 // m_hoverHeight = 0;
371 m_hoverEfficiency = 0; 371 // // m_hoverEfficiency = 0;
372 m_hoverTimescale = 1000; 372 // // m_hoverTimescale = 1000;
373 m_buoyancy = 0; 373 // // m_buoyancy = 0;
374 m_linearDeflectionEfficiency = 1; 374 // // m_linearDeflectionEfficiency = 1;
375 m_linearDeflectionTimescale = 2; 375 // // m_linearDeflectionTimescale = 2;
376 m_angularDeflectionEfficiency = 0; 376 // // m_angularDeflectionEfficiency = 0;
377 m_angularDeflectionTimescale = 10; 377 // m_angularDeflectionTimescale = 10;
378 m_verticalAttractionEfficiency = 1; 378 m_verticalAttractionEfficiency = 1;
379 m_verticalAttractionTimescale = 10; 379 m_verticalAttractionTimescale = 10;
380 m_bankingEfficiency = -0.2f; 380 // m_bankingEfficiency = -0.2f;
381 m_bankingMix = 1; 381 // m_bankingMix = 1;
382 m_bankingTimescale = 1; 382 // m_bankingTimescale = 1;
383 m_referenceFrame = Quaternion.Identity; 383 // m_referenceFrame = Quaternion.Identity;
384 m_flags &= ~(VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY | VehicleFlag.HOVER_GLOBAL_HEIGHT); 384 m_flags &= ~(VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY | VehicleFlag.HOVER_GLOBAL_HEIGHT);
385 m_flags |= (VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.LIMIT_ROLL_ONLY | VehicleFlag.HOVER_UP_ONLY | 385 m_flags |= (VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.LIMIT_ROLL_ONLY | VehicleFlag.HOVER_UP_ONLY |
386 VehicleFlag.LIMIT_MOTOR_UP); 386 VehicleFlag.LIMIT_MOTOR_UP);
@@ -394,20 +394,20 @@ namespace OpenSim.Region.Physics.OdePlugin
394 m_angularMotorDirection = Vector3.Zero; 394 m_angularMotorDirection = Vector3.Zero;
395 m_angularMotorTimescale = 4; 395 m_angularMotorTimescale = 4;
396 m_angularMotorDecayTimescale = 4; 396 m_angularMotorDecayTimescale = 4;
397 m_hoverHeight = 0; 397 // m_hoverHeight = 0;
398 m_hoverEfficiency = 0.5f; 398 // m_hoverEfficiency = 0.5f;
399 m_hoverTimescale = 2; 399 // m_hoverTimescale = 2;
400 m_buoyancy = 1; 400 // m_buoyancy = 1;
401 m_linearDeflectionEfficiency = 0.5f; 401 // m_linearDeflectionEfficiency = 0.5f;
402 m_linearDeflectionTimescale = 3; 402 // m_linearDeflectionTimescale = 3;
403 m_angularDeflectionEfficiency = 0.5f; 403 // m_angularDeflectionEfficiency = 0.5f;
404 m_angularDeflectionTimescale = 5; 404 // m_angularDeflectionTimescale = 5;
405 m_verticalAttractionEfficiency = 0.5f; 405 m_verticalAttractionEfficiency = 0.5f;
406 m_verticalAttractionTimescale = 5; 406 m_verticalAttractionTimescale = 5;
407 m_bankingEfficiency = -0.3f; 407 // m_bankingEfficiency = -0.3f;
408 m_bankingMix = 0.8f; 408 // m_bankingMix = 0.8f;
409 m_bankingTimescale = 1; 409 // m_bankingTimescale = 1;
410 m_referenceFrame = Quaternion.Identity; 410 // m_referenceFrame = Quaternion.Identity;
411 m_flags &= ~( VehicleFlag.HOVER_TERRAIN_ONLY | VehicleFlag.LIMIT_ROLL_ONLY | VehicleFlag.HOVER_GLOBAL_HEIGHT); 411 m_flags &= ~( VehicleFlag.HOVER_TERRAIN_ONLY | VehicleFlag.LIMIT_ROLL_ONLY | VehicleFlag.HOVER_GLOBAL_HEIGHT);
412 m_flags |= (VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_UP_ONLY | 412 m_flags |= (VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_UP_ONLY |
413 VehicleFlag.LIMIT_MOTOR_UP); 413 VehicleFlag.LIMIT_MOTOR_UP);
@@ -421,20 +421,20 @@ namespace OpenSim.Region.Physics.OdePlugin
421 m_angularMotorDirection = Vector3.Zero; 421 m_angularMotorDirection = Vector3.Zero;
422 m_angularMotorTimescale = 4; 422 m_angularMotorTimescale = 4;
423 m_angularMotorDecayTimescale = 4; 423 m_angularMotorDecayTimescale = 4;
424 m_hoverHeight = 0; 424 // m_hoverHeight = 0;
425 m_hoverEfficiency = 0.5f; 425 // m_hoverEfficiency = 0.5f;
426 m_hoverTimescale = 1000; 426 // m_hoverTimescale = 1000;
427 m_buoyancy = 0; 427 // m_buoyancy = 0;
428 m_linearDeflectionEfficiency = 0.5f; 428 // m_linearDeflectionEfficiency = 0.5f;
429 m_linearDeflectionTimescale = 3; 429 // m_linearDeflectionTimescale = 3;
430 m_angularDeflectionEfficiency = 1; 430 // m_angularDeflectionEfficiency = 1;
431 m_angularDeflectionTimescale = 2; 431 // m_angularDeflectionTimescale = 2;
432 m_verticalAttractionEfficiency = 0.9f; 432 m_verticalAttractionEfficiency = 0.9f;
433 m_verticalAttractionTimescale = 2; 433 m_verticalAttractionTimescale = 2;
434 m_bankingEfficiency = 1; 434 // m_bankingEfficiency = 1;
435 m_bankingMix = 0.7f; 435 // m_bankingMix = 0.7f;
436 m_bankingTimescale = 2; 436 // m_bankingTimescale = 2;
437 m_referenceFrame = Quaternion.Identity; 437 // m_referenceFrame = Quaternion.Identity;
438 m_flags &= ~(VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY | 438 m_flags &= ~(VehicleFlag.NO_DEFLECTION_UP | VehicleFlag.HOVER_WATER_ONLY | VehicleFlag.HOVER_TERRAIN_ONLY |
439 VehicleFlag.HOVER_GLOBAL_HEIGHT | VehicleFlag.HOVER_UP_ONLY | VehicleFlag.LIMIT_MOTOR_UP); 439 VehicleFlag.HOVER_GLOBAL_HEIGHT | VehicleFlag.HOVER_UP_ONLY | VehicleFlag.LIMIT_MOTOR_UP);
440 m_flags |= (VehicleFlag.LIMIT_ROLL_ONLY); 440 m_flags |= (VehicleFlag.LIMIT_ROLL_ONLY);
@@ -448,20 +448,20 @@ namespace OpenSim.Region.Physics.OdePlugin
448 m_angularMotorDirection = Vector3.Zero; 448 m_angularMotorDirection = Vector3.Zero;
449 m_angularMotorTimescale = 6; 449 m_angularMotorTimescale = 6;
450 m_angularMotorDecayTimescale = 10; 450 m_angularMotorDecayTimescale = 10;
451 m_hoverHeight = 5; 451 // m_hoverHeight = 5;
452 m_hoverEfficiency = 0.8f; 452 // m_hoverEfficiency = 0.8f;
453 m_hoverTimescale = 10; 453 // m_hoverTimescale = 10;
454 m_buoyancy = 1; 454 // m_buoyancy = 1;
455 m_linearDeflectionEfficiency = 0; 455 // m_linearDeflectionEfficiency = 0;
456 m_linearDeflectionTimescale = 5; 456 // m_linearDeflectionTimescale = 5;
457 m_angularDeflectionEfficiency = 0; 457 // m_angularDeflectionEfficiency = 0;
458 m_angularDeflectionTimescale = 5; 458 // m_angularDeflectionTimescale = 5;
459 m_verticalAttractionEfficiency = 1; 459 m_verticalAttractionEfficiency = 1;
460 m_verticalAttractionTimescale = 1000; 460 m_verticalAttractionTimescale = 1000;
461 m_bankingEfficiency = 0; 461 // m_bankingEfficiency = 0;
462 m_bankingMix = 0.7f; 462 // m_bankingMix = 0.7f;
463 m_bankingTimescale = 5; 463 // m_bankingTimescale = 5;
464 m_referenceFrame = Quaternion.Identity; 464 // m_referenceFrame = Quaternion.Identity;
465 m_flags = (VehicleFlag)0; 465 m_flags = (VehicleFlag)0;
466 break; 466 break;
467 467
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index 178e6fd..713269c 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -1038,7 +1038,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1038 if (p2.PhysicsActorType == (int)ActorTypes.Prim && p1.PhysicsActorType == (int)ActorTypes.Prim) 1038 if (p2.PhysicsActorType == (int)ActorTypes.Prim && p1.PhysicsActorType == (int)ActorTypes.Prim)
1039 { 1039 {
1040 // prim prim contact 1040 // prim prim contact
1041 int pj294950 = 0; 1041 // int pj294950 = 0;
1042 int movintYN = 0; 1042 int movintYN = 0;
1043 // prim terrain contact 1043 // prim terrain contact
1044 if (Math.Abs(p2.Velocity.X) > 0.01f || Math.Abs(p2.Velocity.Y) > 0.01f) 1044 if (Math.Abs(p2.Velocity.X) > 0.01f || Math.Abs(p2.Velocity.Y) > 0.01f)