public override void ViewDidLayoutSubviews() { base.ViewDidLayoutSubviews(); m_Renderer.Resize((int)View.Bounds.Size.Width, (int)View.Bounds.Size.Height); m_Canvas.SetSize((int)View.Bounds.Size.Width, (int)View.Bounds.Size.Height); }
/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { SampleLoader loader = new SampleLoader(Content) { Key = "112233445566778899aabbccddeeff" }; Gwen.Platform.Platform.Init(new Gwen.Platform.MonoGame.MonoGamePlatform()); Gwen.Loader.LoaderBase.Init(loader); renderer = new Gwen.Renderer.MonoGame.MonoGame(GraphicsDevice, Content, Content.Load <Effect>("GwenEffect")); renderer.Resize(graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight); skin = new Gwen.Skin.TexturedBase(renderer, "Skins/DefaultSkin"); skin.DefaultFont = new Font(renderer, "Arial", 11); canvas = new Canvas(skin); input = new Gwen.Renderer.MonoGame.Input.MonoGame(this); input.Initialize(canvas); canvas.SetSize(graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = new Color(255, 150, 170, 170); m_Time = 0; script = new Script(CoreModules.Preset_SoftSandbox | CoreModules.LoadMethods); script.Options.ScriptLoader = loader; GwenNetLua.Lua.Init(script); GwenNetLua.Lua.SetCanvas(canvas); DynValue result; try { result = script.DoString("return require 'Sample'"); } catch (ScriptRuntimeException ex) { throw new Exception(String.Format("Runtime error: {0}", ex.DecoratedMessage), ex); } catch (SyntaxErrorException ex) { throw new Exception(String.Format("Syntax error: {0}", ex.DecoratedMessage), ex); } catch (Exception ex) { throw new Exception(String.Format("Error: {0}", ex.Message), ex); } if (result.Type == DataType.UserData) { GwenNetLua.Control.ListBox textOutput = result.UserData.Object as GwenNetLua.Control.ListBox; if (textOutput != null) { script.Options.DebugPrint = t => { textOutput.AddRow(t); textOutput.ScrollToBottom(); } } ; } }
// This gets called when the drawing surface is ready protected override void OnLoad(EventArgs e) { base.OnLoad(e); Platform.Platform.Init(new Platform.Android.AndroidPlatform()); Loader.LoaderBase.Init(new Platform.Android.AssetLoader()); m_Renderer = new Gwen.Renderer.Android.OpenTK.OpenTK(false); m_Skin = new Gwen.Skin.TexturedBase(m_Renderer, "DefaultSkin.png", "DefaultSkinDefinition.xml"); m_Skin.DefaultFont = new Font(m_Renderer, "Arial", 11); m_Canvas = new Canvas(m_Skin); m_Input = new Gwen.Renderer.Android.OpenTK.Input.OpenTK(this); m_Input.Initialize(m_Canvas); m_Canvas.SetSize(Width, Height); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = new Color(255, 150, 170, 170); m_UnitTest = new Gwen.UnitTest.UnitTest(m_Canvas); m_Stopwatch.Restart(); m_LastTime = 0; // Run the render loop Run(); }
static MainCanvas() { Camera = new Camera2D(); GraphicsManager.keyboard.KeyDown += Keyboard_KeyDown; GraphicsManager.keyboard.KeyUp += Keyboard_KeyUp; GraphicsManager.mouse.ButtonDown += Mouse_ButtonDown; GraphicsManager.mouse.ButtonUp += Mouse_ButtonUp; GraphicsManager.mouse.Move += Mouse_Move; GraphicsManager.mouse.WheelChanged += Mouse_Wheel; Camera.OnRender += new GraphicsManager.Renderer(OnRenderFrame); Camera.Layer = 10; GraphicsManager.Update += new GraphicsManager.Updater(OnUpdateFrame); GraphicsManager.OnWindowResize += new GraphicsManager.Resizer(OnWindowResize); GraphicsManager.OnDispose += new GraphicsManager.Disposer(Dispose); Renderer = new Gwen.Renderer.OpenTK(); Skin = new Gwen.Skin.TexturedBase(Renderer, @"Data\DefaultSkin.png"); canvas = new Canvas(Skin); input = new Gwen.Input.OpenTK(GraphicsManager.Instance); input.Initialize(canvas); canvas.SetSize(GraphicsManager.WindowWidth, GraphicsManager.WindowHeight); canvas.ShouldDrawBackground = false; canvas.BackgroundColor = System.Drawing.Color.FromArgb(255, 150, 170, 170); }
// Use this for initialization void Start() { // create GWEN renderer UnityGwenRenderer gwenRenderer = new UnityGwenRenderer(); // Create GWEN skin //Skin.Simple skin = new Skin.Simple(GwenRenderer); Gwen.Skin.TexturedBase skin = new Gwen.Skin.TexturedBase(gwenRenderer, "DefaultSkin"); // set default font skin.DefaultFont = new Gwen.Font(gwenRenderer, "Arvo-Regular", 10); // Create a Canvas (it's root, on which all other GWEN controls are created) m_Canvas = new Gwen.Control.Canvas(skin); m_Canvas.SetSize(width, height); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = new System.Drawing.Color(255, 150, 170, 170); m_Canvas.KeyboardInputEnabled = true; //win = new Gwen.Control.WindowControl(m_Canvas); //win.SetBounds(50, 50, 300, 300); //win.RenderColor = System.Drawing.Color.White; // Create GWEN input processor m_Input = new Gwen.Input.UnityGwenInput(); m_Input.Initialize(m_Canvas); }
static MainCanvas() { GraphicsManager.keyboard.KeyDown += Keyboard_KeyDown; GraphicsManager.keyboard.KeyUp += Keyboard_KeyUp; GraphicsManager.mouse.ButtonDown += Mouse_ButtonDown; GraphicsManager.mouse.ButtonUp += Mouse_ButtonUp; GraphicsManager.mouse.Move += Mouse_Move; GraphicsManager.mouse.WheelChanged += Mouse_Wheel; Camera.OnRender += OnRenderFrame; Camera.Layer = 10; GraphicsManager.Update += OnUpdateFrame; GraphicsManager.OnWindowResize += new GraphicsManager.Resizer(OnWindowResize); GraphicsManager.OnDispose += new GraphicsManager.Disposer(Dispose); renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase(renderer, @"media\DefaultSkin.png"); //skin = new Gwen.Skin.Simple(renderer); //skin.DefaultFont = new Gwen.Font(renderer, "Courier", 10); canvas = new Canvas(skin); input = new Gwen.Input.OpenTK(GraphicsManager.Instance); input.Initialize(canvas); canvas.SetSize(GraphicsManager.WindowWidth, GraphicsManager.WindowHeight); canvas.ShouldDrawBackground = false; canvas.BackgroundColor = System.Drawing.Color.FromArgb(255, 150, 170, 170); //canvas.KeyboardInputEnabled = true; }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); InitializeOpenGL(); if (_level != null) { 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(); if (true && _level == null && clientData == null) { LoadClient(@"C:\Dark Age of Camelot_Latest"); //_levelId = 221; _levelId = 79; } }
void OnGUI() { //GUI.DrawTexture (new Rect (0, 0, Screen.width, Screen.height), guiTex); //GUI.DrawTextureWithTexCoords(new Rect(0, 0, 400, 400), skinTex, new Rect(0, 1f - (126f/512f), .2f,126f/512f)); if (m_Canvas.Width != Screen.width || m_Canvas.Height != Screen.height) { m_Canvas.SetSize(Screen.width, Screen.height); } if (m_UnitTest == null) { //win.Title = "This is a window!"; // create the unit test control m_UnitTest = new UnitTest(m_Canvas); } if (Event.current.mousePosition.x != mousex || Event.current.mousePosition.y != mousey) { mousex = Event.current.mousePosition.x; mousey = Event.current.mousePosition.y; Event tmpevent = new Event(); tmpevent.type = EventType.MouseMove; tmpevent.mousePosition = Event.current.mousePosition; m_Input.ProcessMessage(tmpevent); } if (Event.current.type == EventType.Repaint) { m_Canvas.RenderCanvas(); } else if (Event.current.type == EventType.MouseDown || Event.current.type == EventType.ScrollWheel || Event.current.type == EventType.MouseUp || Event.current.type == EventType.KeyDown || Event.current.type == EventType.KeyUp) { m_Input.ProcessMessage(Event.current); } }
protected override void OnResize(ResizeEventArgs e) { renderer.Resize(e.Width, e.Height); canvas.SetSize(e.Width, e.Height); base.OnResize(e); }
// Use this for initialization void Start () { // create GWEN renderer UnityGwenRenderer gwenRenderer = new UnityGwenRenderer(); // Create GWEN skin //Skin.Simple skin = new Skin.Simple(GwenRenderer); Gwen.Skin.TexturedBase skin = new Gwen.Skin.TexturedBase(gwenRenderer, "DefaultSkin"); // set default font skin.DefaultFont = new Gwen.Font(gwenRenderer, "Arvo-Regular", 10); // Create a Canvas (it's root, on which all other GWEN controls are created) m_Canvas = new Gwen.Control.Canvas(skin); m_Canvas.SetSize(width, height); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = new System.Drawing.Color(255, 150, 170, 170); m_Canvas.KeyboardInputEnabled = true; //win = new Gwen.Control.WindowControl(m_Canvas); //win.SetBounds(50, 50, 300, 300); //win.RenderColor = System.Drawing.Color.White; // Create GWEN input processor m_Input = new Gwen.Input.UnityGwenInput(); m_Input.Initialize(m_Canvas); }
/// <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); Platform.Platform.Init(new Platform.Windows.WindowsPlatform()); Loader.LoaderBase.Init(new Platform.Windows.FileLoader()); //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, "DefaultSkin.png", "DefaultSkinDefinition.xml"); m_Skin.DefaultFont = new Font(m_Renderer, "Arial", 11); m_Canvas = new 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 Color(255, 150, 170, 170); if (Configuration.RunningOnMacOS) { m_Canvas.Scale = 1.5f; } m_UnitTest = new Gwen.UnitTest.UnitTest(m_Canvas); m_Stopwatch.Restart(); m_LastTime = 0; }
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(); //Pre-JIT compile both SharpNav and this project for faster first-time runs. Assembly sharpNavAssebmly = Assembly.Load(Assembly.GetExecutingAssembly().GetReferencedAssemblies().First(n => n.Name == "SharpNav")); PreJITMethods(sharpNavAssebmly); PreJITMethods(Assembly.GetExecutingAssembly()); }
/// <summary> /// Setup OpenGL and load resources here. /// </summary> /// <param name="e">Not used.</param> protected override void OnLoad(EventArgs e) { GL.ClearColor(Color.MidnightBlue); renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase(renderer, "/Users/abo781/Downloads/win_samples_2/OpenTK/gwen.png"); //skin = new Gwen.Skin.Simple(renderer); //skin.DefaultFont = new Font(renderer, "Courier", 10); canvas = new Canvas(skin); input = new Gwen.Input.OpenTK(this); //input = new Gwen.Input.OpenTK(); input.Initialize(canvas); canvas.SetSize(Width, Height); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); //canvas.KeyboardInputEnabled = true; //test = new UnitTest.UnitTest(canvas); stopwatch.Restart(); lastTime = 0; scene.Init(); }
/// <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); Platform.Platform.Init(new Platform.Windows()); //m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL10(); m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL20(); //m_Renderer = new Gwen.Renderer.OpenTK.OpenTKGL42(); m_Skin = new Gwen.Skin.TexturedBase(m_Renderer, Gwen.XmlDesigner.XmlDesigner.Settings.Skin); m_Skin.DefaultFont = new Font(m_Renderer, "Arial", Configuration.RunningOnMacOS ? 20 : 11); m_Canvas = new 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 Color(255, 150, 170, 170); m_XmlDesigner = Gwen.Xml.Component.Create <Gwen.XmlDesigner.XmlDesigner>(m_Canvas); m_XmlDesigner.Exit += OnExit; m_Stopwatch.Restart(); m_LastTime = 0; }
public bool InitContext() { ResetViewport(); string resfile = LuaRuntime.Instance.BootstrapScript.Globals["ResPath_GwenDefaultSkin"] as string; if (string.IsNullOrEmpty(resfile)) { Log.Printf("Error: failed to get global var 'ResPath_GwenDefaultSkin' from script."); Log.Printf("Error: failed to locate the default gwen skin due to error above."); return(false); } m_renderer = new Gwen.Renderer.Tao(); m_skin = new Gwen.Skin.TexturedBase(m_renderer, resfile); m_canvas = new Canvas(m_skin); m_canvas.SetSize(m_maximumWidth, m_maximumHeight); // the size of gwen canvas is now only used to hold maximum possible scene size m_canvas.ShouldDrawBackground = true; m_canvas.BackgroundColor = m_background; m_canvas.KeyboardInputEnabled = true; m_canvas.MouseInputEnabled = true; m_renderContext = new GwenRenderContext(m_canvas, m_renderer); m_renderDevice = new GwenRenderDevice(); SceneEd.Instance.InitSelectionContainer(m_canvas); glControl.Paint += new System.Windows.Forms.PaintEventHandler(this.glControl_Paint); glControl.MouseMove += new System.Windows.Forms.MouseEventHandler(this.OnMouseMove); return(true); }
/// <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) { GL.Viewport(0, 0, Width, Height); GL.MatrixMode(MatrixMode.Projection); GL.LoadIdentity(); GL.Ortho(0, Width, Height, 0, -1, 1); canvas.SetSize(Width, Height); }
/// <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) { GL.Viewport(0, 0, Width, Height); _projectionMatrix = Matrix4.CreateTranslation(new Vector3(-Width / 2.0f, -Height / 2.0f, 0)) * Matrix4.CreateScale(new Vector3(1, -1, 1)) * Matrix4.CreateOrthographic(Width, Height, -1.0f, 1.0f); renderer.Resize(ref _projectionMatrix, Width, Height); canvas.SetSize(Width, Height); }
private void OnClientSizeChanged(object sender, EventArgs e) { m_Graphics.PreferredBackBufferWidth = Window.ClientBounds.Width; m_Graphics.PreferredBackBufferHeight = Window.ClientBounds.Height; m_ChangeGraphicsSettings = true; m_Renderer.Resize(m_Graphics.PreferredBackBufferWidth, m_Graphics.PreferredBackBufferHeight); m_Canvas.SetSize(m_Graphics.PreferredBackBufferWidth, m_Graphics.PreferredBackBufferHeight); }
protected override void OnResize(EventArgs e) { base.OnResize(e); if (m_Renderer != null) { m_Renderer.Resize(Width, Height); m_Canvas.SetSize(Width, Height); } }
private void OnClientSizeChanged(object sender, EventArgs e) { graphics.PreferredBackBufferWidth = Window.ClientBounds.Width; graphics.PreferredBackBufferHeight = Window.ClientBounds.Height; changeGraphicsSettings = true; renderer.Resize(graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight); canvas.SetSize(graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight); }
protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice); renderer = new Gwen.Renderer.Monogame(spriteBatch, Content); skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin"); canvas = new Canvas(skin); canvas.SetSize(graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.Blue.ToGwenColor(); }
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); }
/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { Platform.Platform.Init(new Gwen.Platform.MonoGame.MonoGamePlatform()); Loader.LoaderBase.Init(new Gwen.Loader.MonoGame.MonoGameAssetLoader(Content)); m_Renderer = new Gwen.Renderer.MonoGame.MonoGame(GraphicsDevice, Content, Content.Load <Effect>("GwenEffect")); m_Renderer.Resize(m_Graphics.PreferredBackBufferWidth, m_Graphics.PreferredBackBufferHeight); m_Skin = new Gwen.Skin.TexturedBase(m_Renderer, "Skins/DefaultSkin", "Skins/DefaultSkinDefinition"); m_Skin.DefaultFont = new Font(m_Renderer, "Arial", 11); m_Canvas = new Canvas(m_Skin); m_Input = new Gwen.Renderer.MonoGame.Input.MonoGame(this); m_Input.Initialize(m_Canvas); m_Canvas.SetSize(m_Graphics.PreferredBackBufferWidth, m_Graphics.PreferredBackBufferHeight); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = new Color(255, 150, 170, 170); m_UnitTest = new Gwen.UnitTest.UnitTest(m_Canvas); m_Time = 0; }
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> /// Setup OpenGL and load resources here. /// </summary> /// <param name="e">Not used.</param> protected override void OnLoad(EventArgs e) { GL.ClearColor(Color.MidnightBlue); renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin.png"); skin.DefaultFont = new Font(renderer, "Arial", 10); canvas = new Canvas(skin); input = new Input.OpenTK(this); input.Initialize(canvas); canvas.SetSize (1024, 768); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); //canvas.KeyboardInputEnabled = true; test = new UnitTest.UnitTest(canvas); stopwatch.Restart(); lastTime = 0; }
/// <summary> /// Setup OpenGL and load resources here. /// </summary> /// <param name="e">Not used.</param> protected override void OnLoad(EventArgs e) { GL.ClearColor(Color.MidnightBlue); renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin.png"); //skin = new Gwen.Skin.Simple(renderer); //skin.DefaultFont = new Font(renderer, "Courier", 10); canvas = new Canvas(skin); input = new Gwen.Input.OpenTK(this); input.Initialize(canvas); canvas.SetSize(Width, Height); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); //canvas.KeyboardInputEnabled = true; var d = new DesignerBase(canvas); stopwatch.Restart(); lastTime = 0; }
private void GlForm_Load(object sender, EventArgs e) { glControl.InitializeContexts(); Gl.glClearColor(1f, 0f, 0f, 1f); Gl.glMatrixMode(Gl.GL_PROJECTION); Gl.glLoadIdentity(); Gl.glOrtho(0, glControl.Width, glControl.Height, 0, -1, 1); Gl.glMatrixMode(Gl.GL_MODELVIEW); Gl.glViewport(0, 0, glControl.Width, glControl.Height); renderer = new Gwen.Renderer.Tao(); skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin.png"); canvas = new Canvas(skin); canvas.SetSize(glControl.Width, glControl.Height); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); canvas.KeyboardInputEnabled = true; canvas.MouseInputEnabled = true; test = new UnitTest.UnitTest(canvas); stopwatch.Restart(); lastTime = 0; }
/// <summary> /// Setup OpenGL and load resources here. /// </summary> /// <param name="e">Not used.</param> protected override void OnLoad(EventArgs e) { GL.ClearColor(Color.MidnightBlue); renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin.png"); skin.DefaultFont = new Font(renderer, "Arial", 10); canvas = new Canvas(skin); input = new Input.OpenTK(this); input.Initialize(canvas); canvas.SetSize(Width, Height); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = Color.FromArgb(255, 150, 170, 170); ////canvas.KeyboardInputEnabled = true; //Control.TreeControl ctrl = new Control.TreeControl(canvas); //ctrl.AddNode("Node One"); //ctrl.AddNode("Node Two").AddNode("Node Two Inside"); //ctrl.SetBounds(20, 20, 400, 400); test = new UnitTest.UnitTest(canvas); //var button = new Button(canvas); //button.Font = new Font(renderer, "Times New Roman", 30); //button.AutoSizeToContents = false; //button.Text = "Hello I am a\n test button!"; //button.SetPosition(500, 500); //button.SetSize(200, 30); stopwatch.Restart(); lastTime = 0; }
/// <summary> /// Contains the shared constructor code /// </summary> /// <param name="target"></param> private Gui(RenderTarget target) { _renderer = new Gwen.Renderer.SFML(target); skin = new TexturedBase(_renderer, "DefaultSkin.png"); // load font. TODO: remove hardcoding using (var font = new Gwen.Font(_renderer, "OpenSans.ttf", 14)) { if (_renderer.LoadFont(font)) _renderer.FreeFont(font); else { font.FaceName = "Arial Unicode MS"; if (_renderer.LoadFont(font)) _renderer.FreeFont(font); else { font.FaceName = "Arial"; _renderer.LoadFont(font); } } skin.SetDefaultFont(font.FaceName, 14); } GuiCanvas = new Canvas(skin); GuiCanvas.SetSize((int)target.Size.X, (int)target.Size.Y); GuiCanvas.ShouldDrawBackground = false; GuiCanvas.BackgroundColor = System.Drawing.Color.Black; GuiCanvas.KeyboardInputEnabled = true; _input = new Gwen.Input.SFML(); _input.Initialize(GuiCanvas, target); }
static void Main() { //try { const int width = 1024; const int height = 768; // Create main window m_Window = new RenderWindow(new VideoMode(width, height), "GWEN.Net SFML test", Styles.Titlebar|Styles.Close|Styles.Resize, new ContextSettings(32, 0)); // Setup event handlers m_Window.Closed += OnClosed; m_Window.KeyPressed += OnKeyPressed; m_Window.Resized += OnResized; m_Window.KeyReleased += window_KeyReleased; m_Window.MouseButtonPressed += window_MouseButtonPressed; m_Window.MouseButtonReleased += window_MouseButtonReleased; m_Window.MouseWheelMoved += window_MouseWheelMoved; m_Window.MouseMoved += window_MouseMoved; m_Window.TextEntered += window_TextEntered; //m_Window.SetFramerateLimit(60); const int fps_frames = 50; List<long> ftime = new List<long>(fps_frames); long lastTime = 0; // create GWEN renderer Renderer.SFML gwenRenderer = new Renderer.SFML(m_Window); // Create GWEN skin //Skin.Simple skin = new Skin.Simple(GwenRenderer); Skin.TexturedBase skin = new Skin.TexturedBase(gwenRenderer, "DefaultSkin.png"); // set default font Font defaultFont = new Font(gwenRenderer) {Size = 10, FaceName = "Arial Unicode MS"}; // try to load, fallback if failed 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 = "OpenSans.ttf"; } } skin.SetDefaultFont(defaultFont.FaceName); defaultFont.Dispose(); // skin has its own // Create a Canvas (it's root, on which all other GWEN controls are created) m_Canvas = new Canvas(skin); m_Canvas.SetSize(width, height); m_Canvas.ShouldDrawBackground = true; m_Canvas.BackgroundColor = System.Drawing.Color.FromArgb(255, 150, 170, 170); m_Canvas.KeyboardInputEnabled = true; // create the unit test control m_UnitTest = new UnitTest.UnitTest(m_Canvas); // Create GWEN input processor m_Input = new Input.SFML(); m_Input.Initialize(m_Canvas, m_Window); Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); while (m_Window.IsOpen()) { m_Window.SetActive(); m_Window.DispatchEvents(); m_Window.Clear(); // Clear depth buffer Gl.glClear(Gl.GL_DEPTH_BUFFER_BIT | Gl.GL_COLOR_BUFFER_BIT); if (ftime.Count == fps_frames) ftime.RemoveAt(0); ftime.Add(stopwatch.ElapsedMilliseconds - lastTime); lastTime = stopwatch.ElapsedMilliseconds; if (stopwatch.ElapsedMilliseconds > 1000) { m_UnitTest.Fps = 1000f * ftime.Count / ftime.Sum(); stopwatch.Restart(); } // render GWEN canvas m_Canvas.RenderCanvas(); m_Window.Display(); } // we only need to dispose the canvas, it will take care of disposing all its children m_Canvas.Dispose(); // also dispose of these skin.Dispose(); gwenRenderer.Dispose(); } //catch (Exception e) //{ //String msg = String.Format("Exception: {0}\n{1}", e.Message, e.StackTrace); //MessageBox.Show(msg); //} m_Window.Dispose(); }
public void Init(GameWindow gamewindow) { renderer = new Gwen.Renderer.OpenTK(); skin = new Gwen.Skin.TexturedBase (renderer, "DefaultSkin.png"); canvas = new Gwen.Control.Canvas (skin); canvas.SetSize (gamewindow.Width, gamewindow.Height); canvas.ShouldDrawBackground = true; canvas.BackgroundColor = System.Drawing.Color.FromArgb (255, 225, 225, 225); input = new Gwen.Input.OpenTK (gamewindow); input.Initialize (canvas); gamewindow.Keyboard.KeyDown += (s, e) => { input.ProcessKeyDown (e); }; gamewindow.Keyboard.KeyUp += (s, e) => { input.ProcessKeyUp (e); }; gamewindow.Mouse.ButtonDown += (s, e) => { input.ProcessMouseMessage (e); }; gamewindow.Mouse.ButtonUp += (s, e) => { input.ProcessMouseMessage (e); }; gamewindow.Mouse.Move += (s, e) => { input.ProcessMouseMessage (e); }; gamewindow.Mouse.WheelChanged += (s, e) => { input.ProcessMouseMessage (e); }; gamewindow.Load += (s, e) => { PreLoad(); gamewindow.VSync = VSyncMode.On; PostLoad(); }; gamewindow.Resize += (s, e) => { GL.Viewport (0, 0, gamewindow.Width, gamewindow.Height); GL.MatrixMode (MatrixMode.Projection); GL.LoadIdentity(); GL.Ortho (0, gamewindow.Width, gamewindow.Height, 0, -1, 1); canvas.SetSize (gamewindow.Width, gamewindow.Height); }; gamewindow.UpdateFrame += (s, e) => { PreUpdate(); if (renderer.TextCacheSize > 1000) renderer.FlushTextCache(); PostUpdate(); }; gamewindow.RenderFrame += (s, e) => { gamewindow.MakeCurrent(); PreRender(); canvas.RenderCanvas(); PostRender(); gamewindow.SwapBuffers(); }; }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); InitializeOpenGL(); if (_level != null) 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(); if (true && _level == null && clientData == null) { LoadClient(@"C:\Dark Age of Camelot_Latest"); //_levelId = 221; _levelId = 79; } }
/// <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); }
/// <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> public static void OnResize(EventArgs e) { canvas.SetSize(GraphicsManager.WindowWidth, GraphicsManager.WindowHeight); }
private void setupUi() { renderer = new Gwen.Renderer.OpenTK(); Gwen.Skin.Base skin = new Gwen.Skin.TexturedBase(renderer, "DefaultSkin.png"); canvas = new Canvas(skin); canvas.SetSize(Width, Height); gwenInput = new Gwen.Input.OpenTK(this); gwenInput.Initialize(canvas); Mouse.ButtonDown += Mouse_ButtonDown; Mouse.ButtonUp += Mouse_ButtonUp; Mouse.Move += Mouse_Move; Mouse.WheelChanged += Mouse_Wheel; canvas.ShouldDrawBackground = true; canvas.BackgroundColor = System.Drawing.Color.FromArgb(122, 150, 170, 170); // controls radioCamera = new RadioButtonGroup(canvas); radioCamera.AutoSizeToContents = true; radioCamera.SetText("Тип камеры"); radioCamera.AddOption("Свободная", "free"); radioCamera.AddOption("Привязанная", "bound"); radioCamera.SetSelection(0); radioCamera.SelectionChanged += radioCamera_SelectionChanged; // coord GroupBox posGroup = new GroupBox(canvas); posGroup.SetText("Позиция камеры"); posGroup.SizeToChildren(); posGroup.SetSize(150, 120); Gwen.Align.PlaceDownLeft(posGroup, radioCamera, 45); labelPosX = new Label(posGroup); labelPosY = new Label(posGroup); labelPosZ = new Label(posGroup); labelPosX.SetText("X: 0.0"); labelPosY.SetText("Y: 1.0"); labelPosZ.SetText("Z: 2.0"); Gwen.Align.PlaceDownLeft(labelPosY, labelPosX, 5); Gwen.Align.PlaceDownLeft(labelPosZ, labelPosY, 5); // reset button Button resetCameraButton = new Gwen.Control.Button(posGroup); resetCameraButton.SetText("Сбросить позицию\nкамеры"); resetCameraButton.Clicked += cameraReset_Clicked; resetCameraButton.SizeToContents(); Gwen.Align.PlaceDownLeft(resetCameraButton, labelPosZ, 5); labelSpeed = new Label(canvas); Gwen.Align.PlaceDownLeft(labelSpeed, posGroup, 5); labelTips = new Label(canvas); labelTips.SetText(freeCameraTip + "\n\n" + nodeTransformTip); labelTips.SizeToContents(); Gwen.Align.PlaceDownLeft(labelTips, labelSpeed, 15); statusBar = new Gwen.Control.StatusBar(canvas); statusBar.Dock = Gwen.Pos.Bottom; }