/// <summary> /// Prepare the renderer for drawing each frame. /// /// Reset settings or prepare batches here. /// </summary> public void Start(Camera2D camera) { spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend, null, null, null, null, camera.Transform); }
/// <summary> /// Allows the game to perform any initialization it needs to before starting to run. /// This is where it can query for any required services and load any non-graphic /// related content. Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); world = new SceneManager(); renderer = new Renderer(spriteBatch); player = new Player() { Name = "Flag1", Position = new Vector2(300, 300), Sprite = Content.Load<Texture2D>("flag") }; SceneNode sn2 = new SceneNode() { Name = "Flag2", Position = new Vector2(200, 300), Sprite = Content.Load<Texture2D>("flag") }; SceneNode sn3 = new SceneNode() { Name = "Flag3", Position = new Vector2(232, 300), Sprite = Content.Load<Texture2D>("flag") }; SceneNode sn4 = new SceneNode() { Name = "Flag4", Position = new Vector2(232, 332), Sprite = Content.Load<Texture2D>("flag") }; world.Add(player); world.Add(sn2); world.Add(sn3); world.Add(sn4); for (int i = 0; i < 100; i++) { world.Add(new SceneNode { Name = "FlagX", Position = new Vector2(232 + i * 32, 332), Sprite = Content.Load<Texture2D>("flag") }); } for (int i = 0; i < 10; i++) { world.Add(new SceneNode { Name = "FlagY" + i.ToString(), Position = new Vector2(232 + 320, 332 - i * 32), Sprite = Content.Load<Texture2D>("flag") }); } List<SceneNode> sns = new List<SceneNode>(world.GetAllNodes()); sns.Remove(player); cr = new CollisionResolver(sns); inputManager = new InputManager(); quadTree = new Quadtree(0, new Rectangle(0, 0, GraphicsDevice.Viewport.Width, GraphicsDevice.Viewport.Height)); inputManager.AddKeyBinding("Exit Game"); inputManager["Exit Game"].Add(Keys.Escape); inputManager["Exit Game"].Add(MouseButton.Right); inputManager.AddKeyBinding("Move Left"); inputManager["Move Left"].Add(Keys.Left); inputManager.AddKeyBinding("Move Right"); inputManager["Move Right"].Add(Keys.Right); inputManager.AddKeyBinding("Move Up"); inputManager["Move Up"].Add(Keys.Up); inputManager.AddKeyBinding("Move Down"); inputManager["Move Down"].Add(Keys.Down); camera = new Camera2D(GraphicsDevice.Viewport); base.Initialize(); }