public void remActivePrim(OdePrim deactivatePrim)
 {
     lock (_activeprims)
     {
         _activeprims.Remove(deactivatePrim);
     }
 }
 public void remActiveGroup(OdePrim deactivatePrim)
 {
     lock (_activegroups)
     {
         _activegroups.Remove(deactivatePrim);
     }
 }
 public void addActiveGroups(OdePrim activatePrim)
 {
     lock (_activegroups)
     {
         if (!_activegroups.Contains(activatePrim))
             _activegroups.Add(activatePrim);
     }
 }
 private PhysicsActor AddPrim(String name, Vector3 position, Vector3 size, Quaternion rotation,
                              PrimitiveBaseShape pbs, bool isphysical, bool isPhantom, byte shapeType, uint localID)
 {
     OdePrim newPrim;
     lock (OdeLock)
     {
       
         newPrim = new OdePrim(name, this, position, size, rotation, pbs, isphysical, isPhantom, shapeType, localID);
         lock (_prims)
             _prims.Add(newPrim);
     }
     return newPrim;
 }
Exemple #5
0
 public ODEDynamics(OdePrim rootp)
 {
     rootPrim = rootp;
     _pParentScene = rootPrim._parent_scene;
     m_timestep = _pParentScene.ODE_STEPSIZE;
     m_invtimestep = 1.0f / m_timestep;
     m_gravmod = rootPrim.GravModifier;
 }
 public void addActivePrim(OdePrim activatePrim)
 {
     // adds active prim..   
     lock (_activeprims)
     {
         if (!_activeprims.Contains(activatePrim))
             _activeprims.Add(activatePrim);
     }
 }
        public void RemovePrimThreadLocked(OdePrim prim)
        {
            //Console.WriteLine("RemovePrimThreadLocked " +  prim.m_primName);
            lock (prim)
            {
//                RemoveCollisionEventReporting(prim);
                lock (_prims)
                    _prims.Remove(prim);
            }

        }
 public bool havePrim(OdePrim prm)
 {
     lock (_prims)
         return _prims.Contains(prm);
 }