Experimental locking of taint processing
parent
1c1f308052
commit
83b16612ce
|
@ -143,6 +143,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
|||
// unique UUID of this character object
|
||||
public UUID m_uuid;
|
||||
public bool bad = false;
|
||||
private Object m_syncRoot = new Object();
|
||||
|
||||
public OdeCharacter(String avName, OdeScene parent_scene, Vector3 pos, CollisionLocker dode, Vector3 size, float pid_d, float pid_p, float capsule_radius, float tensor, float density, float height_fudge_factor, float walk_divisor, float rundivisor)
|
||||
{
|
||||
|
@ -1322,6 +1323,8 @@ Console.WriteLine("**** Create {2} Dicts: actor={0} name={1} height={3} ra
|
|||
}
|
||||
|
||||
public void ProcessTaints(float timestep)
|
||||
{
|
||||
lock (m_syncRoot)
|
||||
{
|
||||
|
||||
if (m_tainted_isPhysical != m_isPhysical)
|
||||
|
@ -1370,9 +1373,9 @@ Console.WriteLine("**** Create {2} Dicts: actor={0} name={1} height={3} ra
|
|||
m_log.Error("[PHYSICS]: PrimGeom dead");
|
||||
}
|
||||
// Remove any old entries
|
||||
//string tShell;
|
||||
//_parent_scene.geom_name_map.TryGetValue(Shell, out tShell);
|
||||
//Console.WriteLine("**** Remove {0}", tShell);
|
||||
//string tShell;
|
||||
//_parent_scene.geom_name_map.TryGetValue(Shell, out tShell);
|
||||
//Console.WriteLine("**** Remove {0}", tShell);
|
||||
|
||||
if(_parent_scene.geom_name_map.ContainsKey(Shell)) _parent_scene.geom_name_map.Remove(Shell);
|
||||
if(_parent_scene.actor_name_map.ContainsKey(Shell)) _parent_scene.actor_name_map.Remove(Shell);
|
||||
|
@ -1421,6 +1424,7 @@ Console.WriteLine("**** Create {2} Dicts: actor={0} name={1} height={3} ra
|
|||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
internal void AddCollisionFrameTime(int p)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue