//Gwen Low Level Functions public static void InitGwen() { //TODO: Make it easier to modify skin. if (Skin == null) { Skin = new TexturedBase( GwenRenderer, Globals.ContentManager.GetTexture(GameContentManager.TextureType.Gui, "defaultskin.png") ) { DefaultFont = Graphics.UIFont }; } MenuUi?.Dispose(); GameUi?.Dispose(); // Create a Canvas (it's root, on which all other GWEN controls are created) sMenuCanvas = new Canvas(Skin, "MainMenu") { Scale = 1f //(GameGraphics.Renderer.GetScreenWidth()/1920f); }; sMenuCanvas.SetSize( (int)(Graphics.Renderer.GetScreenWidth() / sMenuCanvas.Scale), (int)(Graphics.Renderer.GetScreenHeight() / sMenuCanvas.Scale) ); sMenuCanvas.ShouldDrawBackground = false; sMenuCanvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); sMenuCanvas.KeyboardInputEnabled = true; // Create the game Canvas (it's root, on which all other GWEN controls are created) sGameCanvas = new Canvas(Skin, "InGame"); //_gameCanvas.Scale = (GameGraphics.Renderer.GetScreenWidth() / 1920f); sGameCanvas.SetSize( (int)(Graphics.Renderer.GetScreenWidth() / sGameCanvas.Scale), (int)(Graphics.Renderer.GetScreenHeight() / sGameCanvas.Scale) ); sGameCanvas.ShouldDrawBackground = false; sGameCanvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); sGameCanvas.KeyboardInputEnabled = true; // Create GWEN input processor if (Globals.GameState == GameStates.Intro || Globals.GameState == GameStates.Menu) { GwenInput.Initialize(sMenuCanvas); } else { GwenInput.Initialize(sGameCanvas); } FocusElements = new List <Framework.Gwen.Control.Base>(); InputBlockingElements = new List <Framework.Gwen.Control.Base>(); ErrorMsgHandler = new ErrorHandler(sMenuCanvas, sGameCanvas); if (Globals.GameState == GameStates.Intro || Globals.GameState == GameStates.Menu) { MenuUi = new MenuGuiBase(sMenuCanvas); GameUi = null; } else { GameUi = new GameInterface(sGameCanvas); MenuUi = null; } Globals.OnLifecycleChangeState(); GwenInitialized = true; }