diff options
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin/OdePlugin.cs')
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs index 9da49f7..0dab05c 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | |||
@@ -59,7 +59,6 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
59 | 59 | ||
60 | public bool Init() | 60 | public bool Init() |
61 | { | 61 | { |
62 | d.InitODE(); | ||
63 | return true; | 62 | return true; |
64 | } | 63 | } |
65 | 64 | ||
@@ -67,6 +66,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
67 | { | 66 | { |
68 | if (_mScene == null) | 67 | if (_mScene == null) |
69 | { | 68 | { |
69 | // Initializing ODE only when a scene is created allows alternative ODE plugins to co-habit (according to | ||
70 | // http://opensimulator.org/mantis/view.php?id=2750). | ||
71 | d.InitODE(); | ||
72 | |||
70 | _mScene = new OdeScene(ode); | 73 | _mScene = new OdeScene(ode); |
71 | } | 74 | } |
72 | return (_mScene); | 75 | return (_mScene); |
@@ -260,7 +263,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
260 | /// These settings need to be tweaked 'exactly' right or weird stuff happens. | 263 | /// These settings need to be tweaked 'exactly' right or weird stuff happens. |
261 | /// </summary> | 264 | /// </summary> |
262 | public OdeScene(CollisionLocker dode) | 265 | public OdeScene(CollisionLocker dode) |
263 | { | 266 | { |
264 | OdeLock = new Object(); | 267 | OdeLock = new Object(); |
265 | ode = dode; | 268 | ode = dode; |
266 | nearCallback = near; | 269 | nearCallback = near; |