/// <summary> /// Setup OpenGL and load resources here. /// </summary> /// <param name="e">Not used.</param> protected override void OnLoad(EventArgs e) { GL.ClearColor(System.Drawing.Color.MidnightBlue); Gwen.Platform.Platform.Init(new Gwen.Platform.Windows.WindowsPlatform()); Gwen.Loader.LoaderBase.Init(new Gwen.Loader.EmbeddedResourceLoader(typeof(GwenNetLua.Sample.Sample).Assembly, typeof(GwenNetLua.Sample.Sample).Namespace + ".Images", typeof(GwenNetLua.Sample.Sample).Namespace + ".Xml")); //m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL10(); //m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL20(); m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL40(); m_Skin = new Gwen.Skin.TexturedBase(m_Renderer, "Skins/DefaultSkin.png"); m_Skin.DefaultFont = new Gwen.Font(m_Renderer, "Arial", 11); m_Canvas = new Gwen.Control.Canvas(m_Skin); m_Input = new Gwen.Renderer.OpenTK.Input.OpenTK(this); m_Input.Initialize(m_Canvas); m_Canvas.SetSize(Width, Height); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = new Gwen.Color(255, 150, 170, 170); if (Configuration.RunningOnMacOS) { m_Canvas.Scale = 1.5f; } m_Stopwatch.Restart(); m_LastTime = 0; luaTest = new GwenNetLua.Sample.Sample(m_Canvas); luaTest.Run(); }
public HUD(RenderWindow window, bool developerConsole) { window.KeyReleased += window_KeyReleased; window.MouseButtonPressed += window_MouseButtonPressed; window.MouseButtonReleased += window_MouseButtonReleased; window.MouseWheelMoved += window_MouseWheelMoved; window.MouseMoved += window_MouseMoved; window.TextEntered += window_TextEntered; gwenRenderer = new Gwen.Renderer.SFML(window); Gwen.Skin.TexturedBase skin = new Gwen.Skin.TexturedBase(gwenRenderer, "./assets/DefaultSkin.png"); defaultFont = new Gwen.Font(gwenRenderer) { Size = 10, FaceName = "./assets/OpenSanss.ttf" }; if (gwenRenderer.LoadFont(defaultFont)) { gwenRenderer.FreeFont(defaultFont); } else // try another { defaultFont.FaceName = "Arial"; if (gwenRenderer.LoadFont(defaultFont)) { gwenRenderer.FreeFont(defaultFont); } else // try default { defaultFont.FaceName = "./assets/OpenSans.ttf"; } } skin.SetDefaultFont(defaultFont.FaceName); defaultFont.Dispose(); // skin has its own _canvas = new Gwen.Control.Canvas(skin); _canvas.SetSize((int)window.Size.X, (int)window.Size.Y); _canvas.ShouldDrawBackground = false; _canvas.KeyboardInputEnabled = true; _input = new Gwen.Input.SFML(); _input.Initialize(_canvas, window); tabControl = new Gwen.Control.TabControl(_canvas); int tabcontrolheight = 150; tabControl.SetBounds(0, window.Size.Y - tabcontrolheight, window.Size.X, tabcontrolheight); //Fixes the cursor flickering //TODO: Is this cross platform? System.Windows.Forms.Cursor.Hide(); Inventory.Init(); if (developerConsole) { HUD.Console.Init(); } }
protected override void OnResize(EventArgs e) { base.OnResize(e); GL.Viewport(0, 0, Width, Height); float aspect = Width / (float)Height; Matrix4 persp = Matrix4.CreatePerspectiveFieldOfView(zoom, aspect, 0.1f, 1000f); GL.MatrixMode(MatrixMode.Projection); GL.LoadMatrix(ref persp); GL.MatrixMode(MatrixMode.Modelview); cam.LoadView(); gwenProjection = Matrix4.CreateOrthographicOffCenter(0, Width, Height, 0, 0, 1); gwenCanvas.SetSize(Width, Height); }
public bool Initialize(int Rows, int Columns) { this.Rows = Rows; this.Columns = Columns; RenderHandler = new Gwen.Renderer.OpenTK(); #if DEBUG BaseSkin = new Gwen.Skin.TexturedBase(RenderHandler, @"../../../Assets/DefaultSkin.png"); #else BaseSkin = new Gwen.Skin.TexturedBase(RenderHandler, @"Assets/DefaultSkin.png"); #endif BaseSkin.DefaultFont = new Gwen.Font(RenderHandler, "Arial", 10); BaseCanvas = new Gwen.Control.Canvas(BaseSkin); BaseCanvas.SetSize(Width, Height); BaseCanvas.ShouldDrawBackground = true; BaseCanvas.BackgroundColor = Color.White; InputHandler = new Gwen.Input.OpenTK(this); InputHandler.Initialize(BaseCanvas); // Setup Generic Window Callbacks Keyboard.KeyDown += Keyboard_KeyDown; Keyboard.KeyUp += Keyboard_KeyUp; Mouse.ButtonDown += Mouse_ButtonDown; Mouse.ButtonUp += Mouse_ButtonUp; Mouse.Move += Mouse_Move; Mouse.WheelChanged += Mouse_Wheel; SetupMenu(); SetupNetworkedSessionMenu(); SetupHighscores(); SetupUsernameMenu(); Ready = true; return(true); }
public void OnLoad(EventArgs e) { Renderer = new Gwen.Renderer.OpenTK(); _skin = new Gwen.Skin.TexturedBase(Renderer, "Content/DefaultSkin.png"); Canvas = new Gwen.Control.Canvas(_skin); _input = new Gwen.Input.OpenTK(Program.Game); _input.Initialize(Canvas); Canvas.SetSize((int)Program.Game.windowSize.X, (int)Program.Game.windowSize.Y); Canvas.ShouldDrawBackground = false; Canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); SetupInputEvents(); _sideMenuBox = new Gwen.Control.GroupBox(_canvas); _sideMenuBox.SetSize(80, 128); _sideMenuBox.Position(Gwen.Pos.Center); _sideMenuBox.Position(Gwen.Pos.Right, 5); LoadElementCatagories(); // Current element text _currentElementLabel = new Gwen.Control.Label(_canvas); _currentElementLabel.SetPosition(10, 10); _currentElementLabel.SetSize(100, 40); _currentElementLabel.SetText(""); // Bottom menu _bottomMenuBox = new Gwen.Control.GroupBox(_canvas); _bottomMenuBox.SetSize(800, 36); _bottomMenuBox.Position(Gwen.Pos.Center); _bottomMenuBox.Position(Gwen.Pos.Bottom); _bottomMenuBox.ShouldDrawBackground = true; }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); InitializeOpenGL(); //LoadLevel(); //LoadDebugMeshes(); gwenRenderer = new Gwen.Renderer.OpenTK(); gwenSkin = new Gwen.Skin.TexturedBase(gwenRenderer, "GwenSkin.png"); gwenCanvas = new Gwen.Control.Canvas(gwenSkin); gwenInput = new Gwen.Input.OpenTK(this); gwenInput.Initialize(gwenCanvas); gwenCanvas.SetSize(Width, Height); gwenCanvas.ShouldDrawBackground = false; gwenProjection = Matrix4.CreateOrthographicOffCenter(0, Width, Height, 0, -1, 1); //InitializeUI(); }
/// <summary> /// Respond to resize events here. /// </summary> /// <param name="e">Contains information on the new GameWindow size.</param> /// <remarks>There is no need to call the base implementation.</remarks> protected override void OnResize(EventArgs e) { m_Renderer.Resize(Width, Height); m_Canvas.SetSize(Width, Height); }