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); } }
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(); }
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); } }
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(); }
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); } }
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); } } }
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); } }
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); } }
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); }
public void GetAllShields(List <DefenseShields> result) { _aabbTree.GetAll(result, false, null); }
internal void GetAllCells(List <MyProceduralCell> list) { m_cellsTree.GetAll(list, false); }
public void GetAllCells(List <MyProceduralCell> list) { m_cellsTree.GetAll(list, true); }