diff options
author | Teravus Ovares | 2008-09-06 07:52:41 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-09-06 07:52:41 +0000 |
commit | 7d89e122930be39e84a6d174548fa2d12ac0484a (patch) | |
tree | e5aa5752f988a9aba2a969f49e5e208985eda80c /OpenSim/Region/Physics/OdePlugin | |
parent | * minor: speculatively try a change to bamboo.build to see if this generates ... (diff) | |
download | opensim-SC-7d89e122930be39e84a6d174548fa2d12ac0484a.zip opensim-SC-7d89e122930be39e84a6d174548fa2d12ac0484a.tar.gz opensim-SC-7d89e122930be39e84a6d174548fa2d12ac0484a.tar.bz2 opensim-SC-7d89e122930be39e84a6d174548fa2d12ac0484a.tar.xz |
* This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle.
* This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big!
* Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin')
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/ODEPrim.cs | 96 | ||||
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/ODETestClass.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | 51 |
4 files changed, 74 insertions, 80 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs index 5d3e986..38d4060 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | |||
@@ -26,7 +26,7 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using Axiom.Math; | 29 | using OpenMetaverse; |
30 | using Ode.NET; | 30 | using Ode.NET; |
31 | using OpenSim.Framework; | 31 | using OpenSim.Framework; |
32 | using OpenSim.Region.Physics.Manager; | 32 | using OpenSim.Region.Physics.Manager; |
@@ -587,7 +587,6 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
587 | //Matrix3 or = Orientation.ToRotationMatrix(); | 587 | //Matrix3 or = Orientation.ToRotationMatrix(); |
588 | //d.Matrix3 ord = new d.Matrix3(or.m00, or.m10, or.m20, or.m01, or.m11, or.m21, or.m02, or.m12, or.m22); | 588 | //d.Matrix3 ord = new d.Matrix3(or.m00, or.m10, or.m20, or.m01, or.m11, or.m21, or.m02, or.m12, or.m22); |
589 | //d.BodySetRotation(Body, ref ord); | 589 | //d.BodySetRotation(Body, ref ord); |
590 | |||
591 | } | 590 | } |
592 | } | 591 | } |
593 | 592 | ||
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs index eafce5a..21e514b 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs | |||
@@ -30,8 +30,8 @@ using System.Collections.Generic; | |||
30 | using System.Reflection; | 30 | using System.Reflection; |
31 | using System.Runtime.InteropServices; | 31 | using System.Runtime.InteropServices; |
32 | using System.Threading; | 32 | using System.Threading; |
33 | using Axiom.Math; | ||
34 | using log4net; | 33 | using log4net; |
34 | using OpenMetaverse; | ||
35 | using Ode.NET; | 35 | using Ode.NET; |
36 | using OpenSim.Framework; | 36 | using OpenSim.Framework; |
37 | using OpenSim.Region.Physics.Manager; | 37 | using OpenSim.Region.Physics.Manager; |
@@ -294,10 +294,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
294 | setMass(); | 294 | setMass(); |
295 | d.BodySetPosition(Body, _position.X, _position.Y, _position.Z); | 295 | d.BodySetPosition(Body, _position.X, _position.Y, _position.Z); |
296 | d.Quaternion myrot = new d.Quaternion(); | 296 | d.Quaternion myrot = new d.Quaternion(); |
297 | myrot.W = _orientation.w; | 297 | myrot.X = _orientation.X; |
298 | myrot.X = _orientation.x; | 298 | myrot.Y = _orientation.Y; |
299 | myrot.Y = _orientation.y; | 299 | myrot.Z = _orientation.Z; |
300 | myrot.Z = _orientation.z; | 300 | myrot.W = _orientation.W; |
301 | d.BodySetQuaternion(Body, ref myrot); | 301 | d.BodySetQuaternion(Body, ref myrot); |
302 | d.GeomSetBody(prim_geom, Body); | 302 | d.GeomSetBody(prim_geom, Body); |
303 | m_collisionCategories |= CollisionCategories.Body; | 303 | m_collisionCategories |= CollisionCategories.Body; |
@@ -1021,10 +1021,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1021 | { | 1021 | { |
1022 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1022 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1023 | d.Quaternion myrot = new d.Quaternion(); | 1023 | d.Quaternion myrot = new d.Quaternion(); |
1024 | myrot.W = _orientation.w; | 1024 | myrot.X = _orientation.X; |
1025 | myrot.X = _orientation.x; | 1025 | myrot.Y = _orientation.Y; |
1026 | myrot.Y = _orientation.y; | 1026 | myrot.Z = _orientation.Z; |
1027 | myrot.Z = _orientation.z; | 1027 | myrot.W = _orientation.W; |
1028 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1028 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1029 | } | 1029 | } |
1030 | 1030 | ||
@@ -1220,10 +1220,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1220 | public void rotate(float timestep) | 1220 | public void rotate(float timestep) |
1221 | { | 1221 | { |
1222 | d.Quaternion myrot = new d.Quaternion(); | 1222 | d.Quaternion myrot = new d.Quaternion(); |
1223 | myrot.W = _orientation.w; | 1223 | myrot.X = _orientation.X; |
1224 | myrot.X = _orientation.x; | 1224 | myrot.Y = _orientation.Y; |
1225 | myrot.Y = _orientation.y; | 1225 | myrot.Z = _orientation.Z; |
1226 | myrot.Z = _orientation.z; | 1226 | myrot.W = _orientation.W; |
1227 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1227 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1228 | if (m_isphysical && Body != (IntPtr) 0) | 1228 | if (m_isphysical && Body != (IntPtr) 0) |
1229 | { | 1229 | { |
@@ -1339,10 +1339,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1339 | setMesh(_parent_scene, mesh); | 1339 | setMesh(_parent_scene, mesh); |
1340 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1340 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1341 | d.Quaternion myrot = new d.Quaternion(); | 1341 | d.Quaternion myrot = new d.Quaternion(); |
1342 | myrot.W = _orientation.w; | 1342 | myrot.X = _orientation.X; |
1343 | myrot.X = _orientation.x; | 1343 | myrot.Y = _orientation.Y; |
1344 | myrot.Y = _orientation.y; | 1344 | myrot.Z = _orientation.Z; |
1345 | myrot.Z = _orientation.z; | 1345 | myrot.W = _orientation.W; |
1346 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1346 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1347 | 1347 | ||
1348 | //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); | 1348 | //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); |
@@ -1388,10 +1388,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1388 | //prim_geom = d.CreateBox(m_targetSpace, _size.X, _size.Y, _size.Z); | 1388 | //prim_geom = d.CreateBox(m_targetSpace, _size.X, _size.Y, _size.Z); |
1389 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1389 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1390 | d.Quaternion myrot = new d.Quaternion(); | 1390 | d.Quaternion myrot = new d.Quaternion(); |
1391 | myrot.W = _orientation.w; | 1391 | myrot.X = _orientation.X; |
1392 | myrot.X = _orientation.x; | 1392 | myrot.Y = _orientation.Y; |
1393 | myrot.Y = _orientation.y; | 1393 | myrot.Z = _orientation.Z; |
1394 | myrot.Z = _orientation.z; | 1394 | myrot.W = _orientation.W; |
1395 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1395 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1396 | } | 1396 | } |
1397 | } | 1397 | } |
@@ -1452,9 +1452,9 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1452 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1452 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1453 | // d.Quaternion myrot = new d.Quaternion(); | 1453 | // d.Quaternion myrot = new d.Quaternion(); |
1454 | // myrot.W = _orientation.w; | 1454 | // myrot.W = _orientation.w; |
1455 | // myrot.X = _orientation.x; | 1455 | // myrot.X = _orientation.X; |
1456 | // myrot.Y = _orientation.y; | 1456 | // myrot.Y = _orientation.Y; |
1457 | // myrot.Z = _orientation.z; | 1457 | // myrot.Z = _orientation.Z; |
1458 | // d.GeomSetQuaternion(prim_geom, ref myrot); | 1458 | // d.GeomSetQuaternion(prim_geom, ref myrot); |
1459 | 1459 | ||
1460 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); | 1460 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); |
@@ -1512,9 +1512,9 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1512 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1512 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1513 | // d.Quaternion myrot = new d.Quaternion(); | 1513 | // d.Quaternion myrot = new d.Quaternion(); |
1514 | // myrot.W = _orientation.w; | 1514 | // myrot.W = _orientation.w; |
1515 | // myrot.X = _orientation.x; | 1515 | // myrot.X = _orientation.X; |
1516 | // myrot.Y = _orientation.y; | 1516 | // myrot.Y = _orientation.Y; |
1517 | // myrot.Z = _orientation.z; | 1517 | // myrot.Z = _orientation.Z; |
1518 | // d.GeomSetQuaternion(prim_geom, ref myrot); | 1518 | // d.GeomSetQuaternion(prim_geom, ref myrot); |
1519 | // } | 1519 | // } |
1520 | // } | 1520 | // } |
@@ -1553,9 +1553,9 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1553 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1553 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1554 | // d.Quaternion myrot = new d.Quaternion(); | 1554 | // d.Quaternion myrot = new d.Quaternion(); |
1555 | // myrot.W = _orientation.w; | 1555 | // myrot.W = _orientation.w; |
1556 | // myrot.X = _orientation.x; | 1556 | // myrot.X = _orientation.X; |
1557 | // myrot.Y = _orientation.y; | 1557 | // myrot.Y = _orientation.Y; |
1558 | // myrot.Z = _orientation.z; | 1558 | // myrot.Z = _orientation.Z; |
1559 | // d.GeomSetQuaternion(prim_geom, ref myrot); | 1559 | // d.GeomSetQuaternion(prim_geom, ref myrot); |
1560 | 1560 | ||
1561 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); | 1561 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); |
@@ -1626,10 +1626,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1626 | setMesh(_parent_scene, mesh); | 1626 | setMesh(_parent_scene, mesh); |
1627 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1627 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1628 | d.Quaternion myrot = new d.Quaternion(); | 1628 | d.Quaternion myrot = new d.Quaternion(); |
1629 | myrot.W = _orientation.w; | 1629 | myrot.X = _orientation.X; |
1630 | myrot.X = _orientation.x; | 1630 | myrot.Y = _orientation.Y; |
1631 | myrot.Y = _orientation.y; | 1631 | myrot.Z = _orientation.Z; |
1632 | myrot.Z = _orientation.z; | 1632 | myrot.W = _orientation.W; |
1633 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1633 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1634 | 1634 | ||
1635 | //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); | 1635 | //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); |
@@ -1684,10 +1684,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1684 | //prim_geom = d.CreateBox(m_targetSpace, _size.X, _size.Y, _size.Z); | 1684 | //prim_geom = d.CreateBox(m_targetSpace, _size.X, _size.Y, _size.Z); |
1685 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1685 | d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1686 | d.Quaternion myrot = new d.Quaternion(); | 1686 | d.Quaternion myrot = new d.Quaternion(); |
1687 | myrot.W = _orientation.w; | 1687 | myrot.X = _orientation.X; |
1688 | myrot.X = _orientation.x; | 1688 | myrot.Y = _orientation.Y; |
1689 | myrot.Y = _orientation.y; | 1689 | myrot.Z = _orientation.Z; |
1690 | myrot.Z = _orientation.z; | 1690 | myrot.W = _orientation.W; |
1691 | d.GeomSetQuaternion(prim_geom, ref myrot); | 1691 | d.GeomSetQuaternion(prim_geom, ref myrot); |
1692 | } | 1692 | } |
1693 | } | 1693 | } |
@@ -1726,9 +1726,9 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1726 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); | 1726 | // d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z); |
1727 | // d.Quaternion myrot = new d.Quaternion(); | 1727 | // d.Quaternion myrot = new d.Quaternion(); |
1728 | // myrot.W = _orientation.w; | 1728 | // myrot.W = _orientation.w; |
1729 | // myrot.X = _orientation.x; | 1729 | // myrot.X = _orientation.X; |
1730 | // myrot.Y = _orientation.y; | 1730 | // myrot.Y = _orientation.Y; |
1731 | // myrot.Z = _orientation.z; | 1731 | // myrot.Z = _orientation.Z; |
1732 | // d.GeomSetQuaternion(prim_geom, ref myrot); | 1732 | // d.GeomSetQuaternion(prim_geom, ref myrot); |
1733 | 1733 | ||
1734 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); | 1734 | // //d.GeomBoxSetLengths(prim_geom, _size.X, _size.Y, _size.Z); |
@@ -2106,9 +2106,9 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2106 | _acceleration.Z = 0; | 2106 | _acceleration.Z = 0; |
2107 | 2107 | ||
2108 | //_orientation.w = 0f; | 2108 | //_orientation.w = 0f; |
2109 | //_orientation.x = 0f; | 2109 | //_orientation.X = 0f; |
2110 | //_orientation.y = 0f; | 2110 | //_orientation.Y = 0f; |
2111 | //_orientation.z = 0f; | 2111 | //_orientation.Z = 0f; |
2112 | m_rotationalVelocity.X = 0; | 2112 | m_rotationalVelocity.X = 0; |
2113 | m_rotationalVelocity.Y = 0; | 2113 | m_rotationalVelocity.Y = 0; |
2114 | m_rotationalVelocity.Z = 0; | 2114 | m_rotationalVelocity.Z = 0; |
@@ -2154,10 +2154,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2154 | } | 2154 | } |
2155 | 2155 | ||
2156 | //System.Console.WriteLine("ODE: " + m_rotationalVelocity.ToString()); | 2156 | //System.Console.WriteLine("ODE: " + m_rotationalVelocity.ToString()); |
2157 | _orientation.w = ori.W; | 2157 | _orientation.X = ori.X; |
2158 | _orientation.x = ori.X; | 2158 | _orientation.Y = ori.Y; |
2159 | _orientation.y = ori.Y; | 2159 | _orientation.Z = ori.Z; |
2160 | _orientation.z = ori.Z; | 2160 | _orientation.W = ori.W; |
2161 | m_lastUpdateSent = false; | 2161 | m_lastUpdateSent = false; |
2162 | if (!m_throttleUpdates || throttleCounter > _parent_scene.geomUpdatesPerThrottledUpdate) | 2162 | if (!m_throttleUpdates || throttleCounter > _parent_scene.geomUpdatesPerThrottledUpdate) |
2163 | { | 2163 | { |
diff --git a/OpenSim/Region/Physics/OdePlugin/ODETestClass.cs b/OpenSim/Region/Physics/OdePlugin/ODETestClass.cs index 074170a..606134a 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODETestClass.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODETestClass.cs | |||
@@ -26,9 +26,9 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using Axiom.Math; | ||
30 | using Nini.Config; | 29 | using Nini.Config; |
31 | using NUnit.Framework; | 30 | using NUnit.Framework; |
31 | using OpenMetaverse; | ||
32 | using OpenSim.Framework; | 32 | using OpenSim.Framework; |
33 | using OpenSim.Region.Physics.Manager; | 33 | using OpenSim.Region.Physics.Manager; |
34 | 34 | ||
@@ -74,7 +74,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
74 | PrimitiveBaseShape newcube = PrimitiveBaseShape.CreateBox(); | 74 | PrimitiveBaseShape newcube = PrimitiveBaseShape.CreateBox(); |
75 | PhysicsVector position = new PhysicsVector(128, 128, 128); | 75 | PhysicsVector position = new PhysicsVector(128, 128, 128); |
76 | PhysicsVector size = new PhysicsVector(0.5f, 0.5f, 0.5f); | 76 | PhysicsVector size = new PhysicsVector(0.5f, 0.5f, 0.5f); |
77 | Quaternion rot = new Quaternion(1, 0, 0, 0); | 77 | Quaternion rot = Quaternion.Identity; |
78 | PhysicsActor prim = ps.AddPrimShape("CoolShape", newcube, position, size, rot, true); | 78 | PhysicsActor prim = ps.AddPrimShape("CoolShape", newcube, position, size, rot, true); |
79 | OdePrim oprim = (OdePrim)prim; | 79 | OdePrim oprim = (OdePrim)prim; |
80 | OdeScene pscene = (OdeScene) ps; | 80 | OdeScene pscene = (OdeScene) ps; |
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs index f285911..5a501ef 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | |||
@@ -31,13 +31,12 @@ using System.Reflection; | |||
31 | using System.Runtime.InteropServices; | 31 | using System.Runtime.InteropServices; |
32 | using System.Threading; | 32 | using System.Threading; |
33 | using System.IO; | 33 | using System.IO; |
34 | using Axiom.Math; | ||
35 | using log4net; | 34 | using log4net; |
36 | using Nini.Config; | 35 | using Nini.Config; |
37 | using Ode.NET; | 36 | using Ode.NET; |
38 | using OpenSim.Framework; | 37 | using OpenSim.Framework; |
39 | using OpenSim.Region.Physics.Manager; | 38 | using OpenSim.Region.Physics.Manager; |
40 | using libsecondlife; | 39 | using OpenMetaverse; |
41 | 40 | ||
42 | //using OpenSim.Region.Physics.OdePlugin.Meshing; | 41 | //using OpenSim.Region.Physics.OdePlugin.Meshing; |
43 | 42 | ||
@@ -1129,11 +1128,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1129 | siz.X = size.X; | 1128 | siz.X = size.X; |
1130 | siz.Y = size.Y; | 1129 | siz.Y = size.Y; |
1131 | siz.Z = size.Z; | 1130 | siz.Z = size.Z; |
1132 | Quaternion rot = new Quaternion(); | 1131 | Quaternion rot = rotation; |
1133 | rot.w = rotation.w; | ||
1134 | rot.x = rotation.x; | ||
1135 | rot.y = rotation.y; | ||
1136 | rot.z = rotation.z; | ||
1137 | 1132 | ||
1138 | OdePrim newPrim; | 1133 | OdePrim newPrim; |
1139 | lock (OdeLock) | 1134 | lock (OdeLock) |
@@ -1524,8 +1519,8 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1524 | // but we still need to check for sculptie meshing being enabled so this is the most | 1519 | // but we still need to check for sculptie meshing being enabled so this is the most |
1525 | // convenient place to do it for now... | 1520 | // convenient place to do it for now... |
1526 | 1521 | ||
1527 | // //if (pbs.PathCurve == (byte)LLObject.PathCurve.Circle && pbs.ProfileCurve == (byte)LLObject.ProfileCurve.Circle && pbs.PathScaleY <= 0.75f) | 1522 | // //if (pbs.PathCurve == (byte)Primitive.PathCurve.Circle && pbs.ProfileCurve == (byte)Primitive.ProfileCurve.Circle && pbs.PathScaleY <= 0.75f) |
1528 | // //Console.WriteLine("needsMeshing: " + " pathCurve: " + pbs.PathCurve.ToString() + " profileCurve: " + pbs.ProfileCurve.ToString() + " pathScaleY: " + LLObject.UnpackPathScale(pbs.PathScaleY).ToString()); | 1523 | // //Console.WriteLine("needsMeshing: " + " pathCurve: " + pbs.PathCurve.ToString() + " profileCurve: " + pbs.ProfileCurve.ToString() + " pathScaleY: " + Primitive.UnpackPathScale(pbs.PathScaleY).ToString()); |
1529 | if (pbs.SculptEntry && !meshSculptedPrim) | 1524 | if (pbs.SculptEntry && !meshSculptedPrim) |
1530 | { | 1525 | { |
1531 | return false; | 1526 | return false; |
@@ -1555,19 +1550,19 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1555 | // return true; | 1550 | // return true; |
1556 | 1551 | ||
1557 | // // test for torus | 1552 | // // test for torus |
1558 | // if (pbs.PathCurve == (byte)LLObject.PathCurve.Circle | 1553 | // if (pbs.PathCurve == (byte)Primitive.PathCurve.Circle |
1559 | // && (pbs.ProfileCurve & 0x07) == (byte)LLObject.ProfileCurve.Circle | 1554 | // && (pbs.ProfileCurve & 0x07) == (byte)Primitive.ProfileCurve.Circle |
1560 | // && LLObject.UnpackPathScale(pbs.PathScaleY) <= 0.75f) | 1555 | // && Primitive.UnpackPathScale(pbs.PathScaleY) <= 0.75f) |
1561 | // return true; | 1556 | // return true; |
1562 | 1557 | ||
1563 | // // test for tube | 1558 | // // test for tube |
1564 | // if (pbs.PathCurve == (byte)LLObject.PathCurve.Circle | 1559 | // if (pbs.PathCurve == (byte)Primitive.PathCurve.Circle |
1565 | // && (pbs.ProfileCurve & 0x07) == (byte)LLObject.ProfileCurve.EqualTriangle) | 1560 | // && (pbs.ProfileCurve & 0x07) == (byte)Primitive.ProfileCurve.EqualTriangle) |
1566 | // return true; | 1561 | // return true; |
1567 | 1562 | ||
1568 | // // test for ring | 1563 | // // test for ring |
1569 | // if (pbs.PathCurve == (byte)LLObject.PathCurve.Circle | 1564 | // if (pbs.PathCurve == (byte)Primitive.PathCurve.Circle |
1570 | // && (pbs.ProfileCurve & 0x07) == (byte)LLObject.ProfileCurve.EqualTriangle) | 1565 | // && (pbs.ProfileCurve & 0x07) == (byte)Primitive.ProfileCurve.EqualTriangle) |
1571 | // return true; | 1566 | // return true; |
1572 | 1567 | ||
1573 | // if (pbs.ProfileShape == ProfileShape.EquilateralTriangle) | 1568 | // if (pbs.ProfileShape == ProfileShape.EquilateralTriangle) |
@@ -2132,17 +2127,17 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2132 | 2127 | ||
2133 | d.Matrix3 R = new d.Matrix3(); | 2128 | d.Matrix3 R = new d.Matrix3(); |
2134 | 2129 | ||
2135 | Quaternion q1 = Quaternion.FromAngleAxis(1.5707f, new Vector3(1, 0, 0)); | 2130 | Quaternion q1 = Quaternion.CreateFromAxisAngle(new Vector3(1, 0, 0), 1.5707f); |
2136 | Quaternion q2 = Quaternion.FromAngleAxis(1.5707f, new Vector3(0, 1, 0)); | 2131 | Quaternion q2 = Quaternion.CreateFromAxisAngle(new Vector3(0, 1, 0), 1.5707f); |
2137 | //Axiom.Math.Quaternion q3 = Axiom.Math.Quaternion.FromAngleAxis(3.14f, new Axiom.Math.Vector3(0, 0, 1)); | 2132 | //Axiom.Math.Quaternion q3 = Axiom.Math.Quaternion.FromAngleAxis(3.14f, new Axiom.Math.Vector3(0, 0, 1)); |
2138 | 2133 | ||
2139 | q1 = q1*q2; | 2134 | q1 = q1*q2; |
2140 | //q1 = q1 * q3; | 2135 | //q1 = q1 * q3; |
2141 | Vector3 v3 = new Vector3(); | 2136 | Vector3 v3; |
2142 | float angle = 0; | 2137 | float angle; |
2143 | q1.ToAngleAxis(ref angle, ref v3); | 2138 | q1.GetAxisAngle(out v3, out angle); |
2144 | 2139 | ||
2145 | d.RFromAxisAndAngle(out R, v3.x, v3.y, v3.z, angle); | 2140 | d.RFromAxisAndAngle(out R, v3.X, v3.Y, v3.Z, angle); |
2146 | d.GeomSetRotation(LandGeom, ref R); | 2141 | d.GeomSetRotation(LandGeom, ref R); |
2147 | d.GeomSetPosition(LandGeom, 128, 128, 0); | 2142 | d.GeomSetPosition(LandGeom, 128, 128, 0); |
2148 | } | 2143 | } |
@@ -2197,17 +2192,17 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2197 | 2192 | ||
2198 | d.Matrix3 R = new d.Matrix3(); | 2193 | d.Matrix3 R = new d.Matrix3(); |
2199 | 2194 | ||
2200 | Quaternion q1 = Quaternion.FromAngleAxis(1.5707f, new Vector3(1, 0, 0)); | 2195 | Quaternion q1 = Quaternion.CreateFromAxisAngle(new Vector3(1, 0, 0), 1.5707f); |
2201 | Quaternion q2 = Quaternion.FromAngleAxis(1.5707f, new Vector3(0, 1, 0)); | 2196 | Quaternion q2 = Quaternion.CreateFromAxisAngle(new Vector3(0, 1, 0), 1.5707f); |
2202 | //Axiom.Math.Quaternion q3 = Axiom.Math.Quaternion.FromAngleAxis(3.14f, new Axiom.Math.Vector3(0, 0, 1)); | 2197 | //Axiom.Math.Quaternion q3 = Axiom.Math.Quaternion.FromAngleAxis(3.14f, new Axiom.Math.Vector3(0, 0, 1)); |
2203 | 2198 | ||
2204 | q1 = q1 * q2; | 2199 | q1 = q1 * q2; |
2205 | //q1 = q1 * q3; | 2200 | //q1 = q1 * q3; |
2206 | Vector3 v3 = new Vector3(); | 2201 | Vector3 v3; |
2207 | float angle = 0; | 2202 | float angle; |
2208 | q1.ToAngleAxis(ref angle, ref v3); | 2203 | q1.GetAxisAngle(out v3, out angle); |
2209 | 2204 | ||
2210 | d.RFromAxisAndAngle(out R, v3.x, v3.y, v3.z, angle); | 2205 | d.RFromAxisAndAngle(out R, v3.X, v3.Y, v3.Z, angle); |
2211 | d.GeomSetRotation(WaterGeom, ref R); | 2206 | d.GeomSetRotation(WaterGeom, ref R); |
2212 | d.GeomSetPosition(WaterGeom, 128, 128, 0); | 2207 | d.GeomSetPosition(WaterGeom, 128, 128, 0); |
2213 | } | 2208 | } |