public Game2D()
            : base("Game2D")
        {
            _background = new GameSprite("Game2D/BackGround");
            AddSceneObject(_background);

            _hero = new Hero2D();
            AddSceneObject(_hero);

            _enemy = new Enemy2D();
            AddSceneObject(_enemy);
        }
        public override void Initialize()
        {
            _rockSprite = new GameSprite("Game2D/Rock");
            _rockSprite.PivotPoint = new Vector2(10, 25);
            _rockSprite.CanDraw = false;
            AddChild(_rockSprite);

            _explosionSprite = new GameAnimatedSprite("Game2D/Explosion_Spritesheet", 16, 50, new Point(FrameSize, FrameSize), 4);
            _explosionSprite.PivotPoint = new Vector2(24, 40);
            _explosionSprite.CanDraw = false;
            _explosionSprite.Scale(new Vector2(ScaleFactor, ScaleFactor));
            CanDrop = true;
            AddChild(_explosionSprite);

            base.Initialize();
        }
        public override void Initialize()
        {
            _background = new GameSprite("Game2D/Background");
            _background.DrawInFrontOf3D = false;
            AddSceneObject(_background);

            _hero = new Hero3D();
            AddSceneObject(_hero);

            _enemy = new Enemy3D();
            AddSceneObject(_enemy);

            // Tick the camera
            AddSceneObject(SceneManager.RenderContext.Camera);

            base.Initialize();
        }
        public override void Initialize()
        {
            base.Initialize();

            _enemySprite = new GameSprite("Game2D/Enemy");
            AddChild(_enemySprite);

            _enemyWithoutRockSprite = new GameSprite("Game2D/Enemy_NoRock");
            AddChild(_enemyWithoutRockSprite);
            _enemyWithoutRockSprite.CanDraw = false;

            _rock = new Rock2D();
            _rock.Initialize();

            _wobbleSpeed = (float)(2.0f * Math.PI) / WobbleInterval;
            _rand = new Random();
            _appearDelay = _rand.Next(MinAppearDelay, MaxAppearDelay);
            _dropDelay = _rand.Next(MinDropDelay, MaxDropDelay);
        }
        public override void Initialize()
        {
            _background = new GameSprite("Game2D/Background");
            _background.DrawInFrontOf3D = false;
            AddSceneObject(_background);

            _hero = new Hero3D();
            _hero.DrawBoundingBox = true;
            AddSceneObject(_hero);

            _staticHero = new GameAnimatedModel("Game3D/Vampire");
            _staticHero.CreateBoundingBox(25, 50, 25, new Vector3(0, 25, 0));
            _staticHero.SetAnimationSpeed(1.0f);
            AddSceneObject(_staticHero);
            _staticHero.Translate(150, -147, -100);
            _staticHero.DrawBoundingBox = true;

            // Tick the camera
            AddSceneObject(SceneManager.RenderContext.Camera);

            base.Initialize();
        }
        public override void Initialize()
        {
            _background = new GameSprite("Game2D/Background");
            _background.DrawInFrontOf3D = false;
            AddSceneObject(_background);

            _hero = new Hero2D();
            _hero.DrawBoundingRect = true;
            AddSceneObject(_hero);

            _staticHero = new GameAnimatedSprite("Game2D/Hero_Spritesheet", 8, 80, new Point(32, 39));
            _staticHero.CreateBoundingRect(32,39, Vector2.Zero);
            AddSceneObject(_staticHero);
            _staticHero.Translate(400, 388);
            _staticHero.PivotPoint = new Vector2(16, 39);
            _staticHero.DrawBoundingRect = true;

            _staticHero.PlayAnimation(true);

            // Tick the camera
            AddSceneObject(SceneManager.RenderContext.Camera);

            base.Initialize();
        }