Exemplo n.º 1
0
        public void RemoveModule(ProceduralModule module)
        {
            m_modulesToAdd.Remove(module);
            if (!m_modules.Remove(module))
            {
                return;
            }
            var list = m_objectListPool.Get();

            try
            {
                m_tree.GetAll(list, true);
                foreach (var x in list)
                {
                    if (x.Module == module)
                    {
                        x.RaiseRemoved();
                    }
                }
            }
            finally
            {
                m_objectListPool.Return(list);
            }
        }
Exemplo n.º 2
0
        protected override void UnloadData()
        {
            base.UnloadData();

            List <MyPlaceArea> areas = new List <MyPlaceArea>();

            m_aabbTree.GetAll(areas, false);
            foreach (var area in areas)
            {
                area.PlaceAreaProxyId = MyConstants.PRUNING_PROXY_ID_UNITIALIZED;
            }

            Clear();
        }
Exemplo n.º 3
0
 public void GetAllStaticObjects(List <BoundingBoxD> staticObjects)
 {
     m_staticTree.GetAll(m_objectDataResultList, true);
     staticObjects.Clear();
     foreach (var ob in m_objectDataResultList)
     {
         staticObjects.Add(m_objectsData[ob].AABB);
     }
 }
Exemplo n.º 4
0
        protected override void UnloadData()
        {
            MyToolbarComponent.CurrentToolbar.SelectedSlotChanged -= CurrentToolbar_SelectedSlotChanged;
            MyToolbarComponent.CurrentToolbar.SlotActivated       -= CurrentToolbar_SlotActivated;
            MyToolbarComponent.CurrentToolbar.Unselected          -= CurrentToolbar_Unselected;

            base.UnloadData();

            List <MyPlaceArea> areas = new List <MyPlaceArea>();

            m_aabbTree.GetAll(areas, false);
            foreach (var area in areas)
            {
                area.PlaceAreaProxyId = MyVRageConstants.PRUNING_PROXY_ID_UNITIALIZED;
            }

            Clear();
        }
Exemplo n.º 5
0
        public static void DebugDraw()
        {
            var result      = new List <MyPlaceArea>();
            var resultAABBs = new List <BoundingBoxD>();

            m_aabbTree.GetAll(result, true, resultAABBs);
            for (int i = 0; i < result.Count; i++)
            {
                VRageRender.MyRenderProxy.DebugDrawAABB(resultAABBs[i], Vector3.One, 1, 1, false);
            }
        }
Exemplo n.º 6
0
 public override void IterateRoots(Action <IMyReplicable> p)
 {
     using (m_tmp)
     {
         m_rootsAABB.GetAll <IMyReplicable>(m_tmp, false);
         foreach (var replicable in m_tmp)
         {
             p(replicable);
         }
     }
 }
Exemplo n.º 7
0
        public static void DebugDraw()
        {
            var result      = new List <MyRadioBroadcaster>();
            var resultAABBs = new List <BoundingBoxD>();

            m_aabbTree.GetAll(result, true, resultAABBs);
            for (int i = 0; i < result.Count; i++)
            {
                //VRageRender.MyRenderProxy.DebugDrawAABB(resultAABBs[i], Vector3.One, 1, 1, false);
                VRageRender.MyRenderProxy.DebugDrawSphere(result[i].BroadcastPosition, result[i].BroadcastRadius, Color.White, 1, false);
            }
        }
Exemplo n.º 8
0
        public void GetAll(List <MyClusterQueryResult> results)
        {
            m_clusterTree.GetAll(m_resultList, true);

            foreach (var res in m_resultList)
            {
                results.Add(new MyClusterQueryResult()
                {
                    AABB     = res.AABB,
                    UserData = res.UserData
                });
            }
        }
        public static void DebugDraw()
        {
            //BoundingBox box = new BoundingBox(new Vector3(-10000), new Vector3(10000));
            //var ents = GetAllEntitiesInBox(ref box);
            var result      = new List <MyEntity>();
            var resultAABBs = new List <BoundingBoxD>();

            m_aabbTree.GetAll(result, true, resultAABBs);
            for (int i = 0; i < result.Count; i++)
            {
                VRageRender.MyRenderProxy.DebugDrawAABB(resultAABBs[i], Vector3.One, 1, 1, false);
            }
        }
Exemplo n.º 10
0
        public static void DebugDraw()
        {
            //BoundingBox box = new BoundingBox(new Vector3(-10000), new Vector3(10000));
            //var ents = GetAllEntitiesInBox(ref box);
            var result      = new List <MyEntity>();
            var resultAABBs = new List <BoundingBoxD>();

            m_topMostEntitiesTree.GetAll(result, true, resultAABBs);
            using (var batch = VRageRender.MyRenderProxy.DebugDrawBatchAABB(MatrixD.Identity, Color.White, false, false))
            {
                for (int i = 0; i < result.Count; i++)
                {
                    var aabb = resultAABBs[i];
                    batch.Add(ref aabb);
                }
            }
        }
 public void GetAll(List <MyObjectSeed> list, bool clear = true)
 {
     m_tree.GetAll(list, clear);
 }
Exemplo n.º 12
0
 public void GetAllShields(List <DefenseShields> result)
 {
     _aabbTree.GetAll(result, false, null);
 }
 internal void GetAllCells(List <MyProceduralCell> list)
 {
     m_cellsTree.GetAll(list, false);
 }
Exemplo n.º 14
0
 public void GetAllCells(List <MyProceduralCell> list)
 {
     m_cellsTree.GetAll(list, true);
 }