* Releases the inter-region thread synchronization between physics in ODE on the same instance.
* If you are hosting many regions on a single instance, you will probably notice a decrease in region startup time and maybe a slight increase in performance. * Single regions won't notice anything different0.6.0-stable
parent
641de2f404
commit
68d85497ad
|
@ -147,7 +147,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
}
|
||||
CAPSULE_LENGTH = (size.Z - ((size.Z * height_fudge_factor)));
|
||||
|
||||
lock (OdeScene.OdeLock)
|
||||
lock (_parent_scene.OdeLock)
|
||||
{
|
||||
AvatarGeomAndBodyCreation(pos.X, pos.Y, pos.Z, m_tensor);
|
||||
}
|
||||
|
@ -362,7 +362,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
get { return _position; }
|
||||
set
|
||||
{
|
||||
lock (OdeScene.OdeLock)
|
||||
lock (_parent_scene.OdeLock)
|
||||
{
|
||||
d.BodySetPosition(Body, value.X, value.Y, value.Z);
|
||||
_position = value;
|
||||
|
@ -386,7 +386,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
set
|
||||
{
|
||||
m_pidControllerActive = true;
|
||||
lock (OdeScene.OdeLock)
|
||||
lock (_parent_scene.OdeLock)
|
||||
{
|
||||
d.JointDestroy(Amotor);
|
||||
|
||||
|
@ -863,7 +863,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
/// </summary>
|
||||
public void Destroy()
|
||||
{
|
||||
lock (OdeScene.OdeLock)
|
||||
lock (_parent_scene.OdeLock)
|
||||
{
|
||||
// Kill the Amotor
|
||||
d.JointDestroy(Amotor);
|
||||
|
|
|
@ -990,7 +990,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
}
|
||||
|
||||
|
||||
lock (OdeScene.OdeLock)
|
||||
lock (_parent_scene.OdeLock)
|
||||
{
|
||||
CreateGeom(m_targetSpace, _mesh);
|
||||
|
||||
|
|
|
@ -242,7 +242,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
// split static geometry collision handling into spaces of 30 meters
|
||||
public IntPtr[,] staticPrimspace;
|
||||
|
||||
public static Object OdeLock = new Object();
|
||||
public Object OdeLock;
|
||||
|
||||
public IMesher mesher;
|
||||
|
||||
|
@ -259,6 +259,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
/// </summary>
|
||||
public OdeScene(CollisionLocker dode)
|
||||
{
|
||||
OdeLock = new Object();
|
||||
ode = dode;
|
||||
nearCallback = near;
|
||||
triCallback = TriCallback;
|
||||
|
|
Loading…
Reference in New Issue