Exemplo n.º 1
0
 public QuadTree(int level, Rectangle bounds)
 {
     Level = level;
     GameObjects = new List<GameObject>();
     Nodes = new QuadTree[4];
     Bounds = bounds;
 }
Exemplo n.º 2
0
        public Level()
        {
            var graphicsDevice = GameServices.GetService<GraphicsDevice>();
            QuadTree = new QuadTree(0, new Rectangle(0, 0, graphicsDevice.Viewport.Width, graphicsDevice.Viewport.Height));
            Spawners = new List<Spawner>();
            SafeToIterate = new List<GameObject>();
            AllDrawableGameObjects = new List<GameObject>();

            StarField = new Starfield();
        }
Exemplo n.º 3
0
        private void split()
        {
            int subWidth = Bounds.Width / 2;
            int subHeight = Bounds.Height / 2;

            Nodes[0] = new QuadTree(Level + 1, new Rectangle(Bounds.Left, Bounds.Top, subWidth, subHeight));
            Nodes[1] = new QuadTree(Level + 1, new Rectangle(Bounds.Left + subWidth, Bounds.Top, subWidth, subHeight));
            Nodes[2] = new QuadTree(Level + 1, new Rectangle(Bounds.Left, Bounds.Top + subHeight, subWidth, subHeight));
            Nodes[3] = new QuadTree(Level + 1, new Rectangle(Bounds.Left + subWidth, Bounds.Top + subHeight, subWidth, subHeight));
        }