public StartMenu() : base()
        {
            onGameStartCallback = onGameExitCallback = () => {};

            drawer = new Drawer2D();

            InitFonts();
            InitTitle();
            InitBlackRectangle();

            x          = spriteBlackRectangle.Position.X + 200;
            yStartWord = (int)(spriteBlackRectangle.Position.Y + 10);

            Screen.CenterSprite(title);
            title.Position = new TGCVector2(
                title.Position.X,
                Screen.Height * (1f / 5)
                );

            skyBox        = new TgcSkyBox();
            skyBox.Center = new TGCVector3(0, 500, 0);
            skyBox.Size   = new TGCVector3(10000, 10000, 10000);
            var baseDir = Game.Default.ResDirectory;

            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Up, baseDir + "skybox-up.jpg");
            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Down, baseDir + "skybox-down.jpg");
            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Left, baseDir + "skybox-left.jpg");
            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Right, baseDir + "skybox-right.jpg");
            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Front, baseDir + "skybox-front.jpg");
            skyBox.setFaceTexture(TgcSkyBox.SkyFaces.Back, baseDir + "skybox-back.jpg");
            skyBox.Init();
            Camera = CameraFactory.Create(TGCVector3.Empty, Input);

            pressed[GameInput.Down]   = () => pointer = Pointer.DOWN;
            pressed[GameInput.Up]     = () => pointer = Pointer.UP;
            pressed[GameInput.Right]  = () => Cheats.ActivateNext();
            pressed[GameInput.Left]   = () => Cheats.DesactivateNext();
            pressed[GameInput.Accept] = fireAction;
        }