diff --git a/OpenSim/Region/Physics/ChOdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/ChOdePlugin/OdePlugin.cs index 5f5d5470c8..05f6faec5f 100644 --- a/OpenSim/Region/Physics/ChOdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/ChOdePlugin/OdePlugin.cs @@ -72,6 +72,9 @@ namespace OpenSim.Region.Physics.OdePlugin { if (_mScene == null) { + if (Util.IsWindows()) + Util.LoadArchSpecificWindowsDll("ode.dll"); + // Initializing ODE only when a scene is created allows alternative ODE plugins to co-habit (according to // http://opensimulator.org/mantis/view.php?id=2750). d.InitODE(); diff --git a/OpenSim/Region/Physics/UbitOdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/UbitOdePlugin/OdePlugin.cs index 215d47a7ac..d32188edb9 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/OdePlugin.cs @@ -52,6 +52,9 @@ namespace OpenSim.Region.Physics.OdePlugin public bool Init() { + if (Util.IsWindows()) + Util.LoadArchSpecificWindowsDll("ode.dll"); + if (d.InitODE2(0) != 0) { if (d.AllocateODEDataForThread(~0U) == 0) @@ -68,6 +71,7 @@ namespace OpenSim.Region.Physics.OdePlugin { if (m_scene == null) { + m_scene = new OdeScene(sceneIdentifier); } return (m_scene);