From d199767e6991d6f368661fce9c5a072e564b8a4b Mon Sep 17 00:00:00 2001 From: John Hurliman Date: Sun, 25 Oct 2009 23:16:12 -0700 Subject: Experimental change of PhysicsVector to Vector3. Untested --- .../Region/Physics/BulletXPlugin/BulletXPlugin.cs | 158 ++++++++++----------- 1 file changed, 79 insertions(+), 79 deletions(-) (limited to 'OpenSim/Region/Physics/BulletXPlugin') diff --git a/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs b/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs index abed8df..cbe73bb 100644 --- a/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs +++ b/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs @@ -52,14 +52,14 @@ namespace OpenSim.Region.Physics.BulletXPlugin //private static readonly log4net.ILog m_log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //Vector3 - public static Vector3 PhysicsVectorToXnaVector3(PhysicsVector physicsVector) + public static Vector3 PhysicsVectorToXnaVector3(OpenMetaverse.Vector3 physicsVector) { return new Vector3(physicsVector.X, physicsVector.Y, physicsVector.Z); } - public static PhysicsVector XnaVector3ToPhysicsVector(Vector3 xnaVector3) + public static OpenMetaverse.Vector3 XnaVector3ToPhysicsVector(Vector3 xnaVector3) { - return new PhysicsVector(xnaVector3.X, xnaVector3.Y, xnaVector3.Z); + return new OpenMetaverse.Vector3(xnaVector3.X, xnaVector3.Y, xnaVector3.Z); } //Quaternion @@ -349,7 +349,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin vertexBase = new Vector3[iVertexCount]; for (int i = 0; i < iVertexCount; i++) { - PhysicsVector v = mesh.getVertexList()[i]; + OpenMetaverse.Vector3 v = mesh.getVertexList()[i]; if (v != null) // Note, null has special meaning. See meshing code for details vertexBase[i] = BulletXMaths.PhysicsVectorToXnaVector3(v); else @@ -392,7 +392,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin private int preCheckCollision(BulletXActor actA, Vector3 vNormal, float fDist) { float fstartSide; - PhysicsVector v = actA.Position; + OpenMetaverse.Vector3 v = actA.Position; Vector3 v3 = BulletXMaths.PhysicsVectorToXnaVector3(v); fstartSide = Vector3.Dot(vNormal, v3) - fDist; @@ -404,7 +404,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin { Vector3 perPlaneNormal; float fPerPlaneDist; - PhysicsVector v = actA.Position; + OpenMetaverse.Vector3 v = actA.Position; Vector3 v3 = BulletXMaths.PhysicsVectorToXnaVector3(v); //check AB Vector3 v1; @@ -573,9 +573,9 @@ namespace OpenSim.Region.Physics.BulletXPlugin } - public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size, bool isFlying) + public override PhysicsActor AddAvatar(string avName, OpenMetaverse.Vector3 position, OpenMetaverse.Vector3 size, bool isFlying) { - PhysicsVector pos = new PhysicsVector(); + OpenMetaverse.Vector3 pos = OpenMetaverse.Vector3.Zero; pos.X = position.X; pos.Y = position.Y; pos.Z = position.Z + 20; @@ -611,14 +611,14 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, - PhysicsVector size, OpenMetaverse.Quaternion rotation) + public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, OpenMetaverse.Vector3 position, + OpenMetaverse.Vector3 size, OpenMetaverse.Quaternion rotation) { return AddPrimShape(primName, pbs, position, size, rotation, false); } - public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, - PhysicsVector size, OpenMetaverse.Quaternion rotation, bool isPhysical) + public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, OpenMetaverse.Vector3 position, + OpenMetaverse.Vector3 size, OpenMetaverse.Quaternion rotation, bool isPhysical) { PhysicsActor result; @@ -645,7 +645,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin return result; } - public PhysicsActor AddPrim(String name, PhysicsVector position, PhysicsVector size, OpenMetaverse.Quaternion rotation, + public PhysicsActor AddPrim(String name, OpenMetaverse.Vector3 position, OpenMetaverse.Vector3 size, OpenMetaverse.Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool isPhysical) { BulletXPrim newPrim = null; @@ -879,12 +879,12 @@ namespace OpenSim.Region.Physics.BulletXPlugin { protected bool flying = false; protected bool _physical = false; - protected PhysicsVector _position; - protected PhysicsVector _velocity; - protected PhysicsVector _size; - protected PhysicsVector _acceleration; + protected OpenMetaverse.Vector3 _position; + protected OpenMetaverse.Vector3 _velocity; + protected OpenMetaverse.Vector3 _size; + protected OpenMetaverse.Vector3 _acceleration; protected OpenMetaverse.Quaternion _orientation; - protected PhysicsVector m_rotationalVelocity = PhysicsVector.Zero; + protected OpenMetaverse.Vector3 m_rotationalVelocity; protected RigidBody rigidBody; protected int m_PhysicsActorType; private Boolean iscolliding = false; @@ -900,7 +900,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin get { return false; } } - public override PhysicsVector Position + public override OpenMetaverse.Vector3 Position { get { return _position; } set @@ -913,13 +913,13 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - public override PhysicsVector RotationalVelocity + public override OpenMetaverse.Vector3 RotationalVelocity { get { return m_rotationalVelocity; } set { m_rotationalVelocity = value; } } - public override PhysicsVector Velocity + public override OpenMetaverse.Vector3 Velocity { get { return _velocity; } set @@ -934,7 +934,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin } else { - _velocity = new PhysicsVector(); + _velocity = OpenMetaverse.Vector3.Zero; } } } @@ -944,7 +944,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin get { return 0f; } set { } } - public override PhysicsVector Size + public override OpenMetaverse.Vector3 Size { get { return _size; } set @@ -956,9 +956,9 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - public override PhysicsVector Force + public override OpenMetaverse.Vector3 Force { - get { return PhysicsVector.Zero; } + get { return OpenMetaverse.Vector3.Zero; } set { return; } } @@ -973,7 +973,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin } - public override void VehicleVectorParam(int param, PhysicsVector value) + public override void VehicleVectorParam(int param, OpenMetaverse.Vector3 value) { } @@ -988,14 +988,14 @@ namespace OpenSim.Region.Physics.BulletXPlugin } - public override PhysicsVector CenterOfMass + public override OpenMetaverse.Vector3 CenterOfMass { - get { return PhysicsVector.Zero; } + get { return OpenMetaverse.Vector3.Zero; } } - public override PhysicsVector GeometricCenter + public override OpenMetaverse.Vector3 GeometricCenter { - get { return PhysicsVector.Zero; } + get { return OpenMetaverse.Vector3.Zero; } } public override PrimitiveBaseShape Shape @@ -1009,7 +1009,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { return; } } - public override PhysicsVector Acceleration + public override OpenMetaverse.Vector3 Acceleration { get { return _acceleration; } } @@ -1036,7 +1036,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin } - public override void LockAngularMotion(PhysicsVector axis) + public override void LockAngularMotion(OpenMetaverse.Vector3 axis) { } @@ -1129,7 +1129,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { return; } } - public virtual void SetAcceleration(PhysicsVector accel) + public virtual void SetAcceleration(OpenMetaverse.Vector3 accel) { lock (BulletXScene.BulletXLock) { @@ -1143,19 +1143,19 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { } } - public override void AddForce(PhysicsVector force, bool pushforce) + public override void AddForce(OpenMetaverse.Vector3 force, bool pushforce) { } - public override PhysicsVector Torque + public override OpenMetaverse.Vector3 Torque { - get { return PhysicsVector.Zero; } + get { return OpenMetaverse.Vector3.Zero; } set { return; } } - public override void AddAngularForce(PhysicsVector force, bool pushforce) + public override void AddAngularForce(OpenMetaverse.Vector3 force, bool pushforce) { } - public override void SetMomentum(PhysicsVector momentum) + public override void SetMomentum(OpenMetaverse.Vector3 momentum) { } @@ -1174,7 +1174,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin Translate(_position); } - protected internal void Translate(PhysicsVector _newPos) + protected internal void Translate(OpenMetaverse.Vector3 _newPos) { Vector3 _translation; _translation = BulletXMaths.PhysicsVectorToXnaVector3(_newPos) - rigidBody.CenterOfMassPosition; @@ -1186,7 +1186,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin Speed(_velocity); } - protected internal void Speed(PhysicsVector _newSpeed) + protected internal void Speed(OpenMetaverse.Vector3 _newSpeed) { Vector3 _speed; _speed = BulletXMaths.PhysicsVectorToXnaVector3(_newSpeed); @@ -1212,7 +1212,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin ReSize(_size); } - protected internal virtual void ReSize(PhysicsVector _newSize) + protected internal virtual void ReSize(OpenMetaverse.Vector3 _newSize) { } @@ -1227,7 +1227,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin { } - public override PhysicsVector PIDTarget { set { return; } } + public override OpenMetaverse.Vector3 PIDTarget { set { return; } } public override bool PIDActive { set { return; } } public override float PIDTau { set { return; } } @@ -1256,19 +1256,19 @@ namespace OpenSim.Region.Physics.BulletXPlugin /// public class BulletXCharacter : BulletXActor { - public BulletXCharacter(BulletXScene parent_scene, PhysicsVector pos) + public BulletXCharacter(BulletXScene parent_scene, OpenMetaverse.Vector3 pos) : this(String.Empty, parent_scene, pos) { } - public BulletXCharacter(String avName, BulletXScene parent_scene, PhysicsVector pos) - : this(avName, parent_scene, pos, new PhysicsVector(), new PhysicsVector(), new PhysicsVector(), + public BulletXCharacter(String avName, BulletXScene parent_scene, OpenMetaverse.Vector3 pos) + : this(avName, parent_scene, pos, OpenMetaverse.Vector3.Zero, OpenMetaverse.Vector3.Zero, OpenMetaverse.Vector3.Zero, OpenMetaverse.Quaternion.Identity) { } - public BulletXCharacter(String avName, BulletXScene parent_scene, PhysicsVector pos, PhysicsVector velocity, - PhysicsVector size, PhysicsVector acceleration, OpenMetaverse.Quaternion orientation) + public BulletXCharacter(String avName, BulletXScene parent_scene, OpenMetaverse.Vector3 pos, OpenMetaverse.Vector3 velocity, + OpenMetaverse.Vector3 size, OpenMetaverse.Vector3 acceleration, OpenMetaverse.Quaternion orientation) : base(avName) { //This fields will be removed. They're temporal @@ -1323,25 +1323,25 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { return; } } - public override PhysicsVector Position + public override OpenMetaverse.Vector3 Position { get { return base.Position; } set { base.Position = value; } } - public override PhysicsVector Velocity + public override OpenMetaverse.Vector3 Velocity { get { return base.Velocity; } set { base.Velocity = value; } } - public override PhysicsVector Size + public override OpenMetaverse.Vector3 Size { get { return base.Size; } set { base.Size = value; } } - public override PhysicsVector Acceleration + public override OpenMetaverse.Vector3 Acceleration { get { return base.Acceleration; } } @@ -1370,17 +1370,17 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { base.Kinematic = value; } } - public override void SetAcceleration(PhysicsVector accel) + public override void SetAcceleration(OpenMetaverse.Vector3 accel) { base.SetAcceleration(accel); } - public override void AddForce(PhysicsVector force, bool pushforce) + public override void AddForce(OpenMetaverse.Vector3 force, bool pushforce) { base.AddForce(force, pushforce); } - public override void SetMomentum(PhysicsVector momentum) + public override void SetMomentum(OpenMetaverse.Vector3 momentum) { base.SetMomentum(momentum); } @@ -1430,7 +1430,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin m.Translation = v3; rigidBody.WorldTransform = m; //When an Avie touch the ground it's vertical velocity it's reduced to ZERO - Speed(new PhysicsVector(rigidBody.LinearVelocity.X, rigidBody.LinearVelocity.Y, 0.0f)); + Speed(new OpenMetaverse.Vector3(rigidBody.LinearVelocity.X, rigidBody.LinearVelocity.Y, 0.0f)); } } @@ -1452,7 +1452,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin //For now all prims have the same density, all prims are made of water. Be water my friend! :D private const float _density = 1000.0f; private BulletXScene _parent_scene; - private PhysicsVector m_prev_position = new PhysicsVector(0, 0, 0); + private OpenMetaverse.Vector3 m_prev_position; private bool m_lastUpdateSent = false; //added by jed zhu private IMesh _mesh; @@ -1460,17 +1460,17 @@ namespace OpenSim.Region.Physics.BulletXPlugin - public BulletXPrim(String primName, BulletXScene parent_scene, PhysicsVector pos, PhysicsVector size, + public BulletXPrim(String primName, BulletXScene parent_scene, OpenMetaverse.Vector3 pos, OpenMetaverse.Vector3 size, OpenMetaverse.Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool isPhysical) : this( - primName, parent_scene, pos, new PhysicsVector(), size, new PhysicsVector(), rotation, mesh, pbs, + primName, parent_scene, pos, OpenMetaverse.Vector3.Zero, size, OpenMetaverse.Vector3.Zero, rotation, mesh, pbs, isPhysical) { } - public BulletXPrim(String primName, BulletXScene parent_scene, PhysicsVector pos, PhysicsVector velocity, - PhysicsVector size, - PhysicsVector acceleration, OpenMetaverse.Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, + public BulletXPrim(String primName, BulletXScene parent_scene, OpenMetaverse.Vector3 pos, OpenMetaverse.Vector3 velocity, + OpenMetaverse.Vector3 size, + OpenMetaverse.Vector3 acceleration, OpenMetaverse.Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool isPhysical) : base(primName) { @@ -1481,7 +1481,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin _position = pos; _physical = isPhysical; - _velocity = _physical ? velocity : new PhysicsVector(); + _velocity = _physical ? velocity : OpenMetaverse.Vector3.Zero; _size = size; _acceleration = acceleration; _orientation = rotation; @@ -1497,19 +1497,19 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { return; } } - public override PhysicsVector Position + public override OpenMetaverse.Vector3 Position { get { return base.Position; } set { base.Position = value; } } - public override PhysicsVector Velocity + public override OpenMetaverse.Vector3 Velocity { get { return base.Velocity; } set { base.Velocity = value; } } - public override PhysicsVector Size + public override OpenMetaverse.Vector3 Size { get { return _size; } set @@ -1522,7 +1522,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - public override PhysicsVector Acceleration + public override OpenMetaverse.Vector3 Acceleration { get { return base.Acceleration; } } @@ -1583,7 +1583,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin set { base.Kinematic = value; } } - public override void SetAcceleration(PhysicsVector accel) + public override void SetAcceleration(OpenMetaverse.Vector3 accel) { lock (BulletXScene.BulletXLock) { @@ -1591,12 +1591,12 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - public override void AddForce(PhysicsVector force, bool pushforce) + public override void AddForce(OpenMetaverse.Vector3 force, bool pushforce) { base.AddForce(force,pushforce); } - public override void SetMomentum(PhysicsVector momentum) + public override void SetMomentum(OpenMetaverse.Vector3 momentum) { base.SetMomentum(momentum); } @@ -1613,7 +1613,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin //When a Prim touch the ground it's vertical velocity it's reduced to ZERO //Static objects don't have linear velocity if (_physical) - Speed(new PhysicsVector(rigidBody.LinearVelocity.X, rigidBody.LinearVelocity.Y, 0.0f)); + Speed(new OpenMetaverse.Vector3(rigidBody.LinearVelocity.X, rigidBody.LinearVelocity.Y, 0.0f)); } } @@ -1632,7 +1632,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin { if (!m_lastUpdateSent) { - _velocity = new PhysicsVector(0, 0, 0); + _velocity = OpenMetaverse.Vector3.Zero; base.ScheduleTerseUpdate(); m_lastUpdateSent = true; } @@ -1654,8 +1654,8 @@ namespace OpenSim.Region.Physics.BulletXPlugin #region Methods for updating values of RigidBody - protected internal void CreateRigidBody(BulletXScene parent_scene, IMesh mesh, PhysicsVector pos, - PhysicsVector size) + protected internal void CreateRigidBody(BulletXScene parent_scene, IMesh mesh, OpenMetaverse.Vector3 pos, + OpenMetaverse.Vector3 size) { //For RigidBody Constructor. The next values might change float _linearDamping = 0.0f; @@ -1683,7 +1683,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin Vector3[] v3Vertices = new Vector3[iVertexCount]; for (int i = 0; i < iVertexCount; i++) { - PhysicsVector v = mesh.getVertexList()[i]; + OpenMetaverse.Vector3 v = mesh.getVertexList()[i]; if (v != null) // Note, null has special meaning. See meshing code for details v3Vertices[i] = BulletXMaths.PhysicsVectorToXnaVector3(v); else @@ -1709,7 +1709,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin } } - protected internal void ReCreateRigidBody(PhysicsVector size) + protected internal void ReCreateRigidBody(OpenMetaverse.Vector3 size) { //There is a bug when trying to remove a rigidBody that is colliding with something.. try @@ -1729,7 +1729,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin GC.Collect(); } - protected internal override void ReSize(PhysicsVector _newSize) + protected internal override void ReSize(OpenMetaverse.Vector3 _newSize) { //I wonder to know how to resize with a simple instruction in BulletX. It seems that for now there isn't //so i have to do it manually. That's recreating rigidbody @@ -1744,8 +1744,8 @@ namespace OpenSim.Region.Physics.BulletXPlugin /// internal class BulletXPlanet { - private PhysicsVector _staticPosition; -// private PhysicsVector _staticVelocity; + private OpenMetaverse.Vector3 _staticPosition; +// private Vector3 _staticVelocity; // private OpenMetaverse.Quaternion _staticOrientation; private float _mass; // private BulletXScene _parentscene; @@ -1759,7 +1759,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin internal BulletXPlanet(BulletXScene parent_scene, float[] heightField) { - _staticPosition = new PhysicsVector(BulletXScene.MaxXY/2, BulletXScene.MaxXY/2, 0); + _staticPosition = new OpenMetaverse.Vector3(BulletXScene.MaxXY / 2, BulletXScene.MaxXY / 2, 0); // _staticVelocity = new PhysicsVector(); // _staticOrientation = OpenMetaverse.Quaternion.Identity; _mass = 0; //No active -- cgit v1.1