private void Keyboard_OnChar(char keyChar) { if (!TopGui.OnChar(keyChar)) { OnChar(keyChar); } }
private void Keyboard_OnKey(Key key, bool pressed) { if (!TopGui.OnKey(key, pressed)) { OnKey(key, pressed); } }
private void Mouse_OnMouse(Purple.Math.Vector3 position, MouseButton button, bool pressed) { if (this.mouseCursor != null) { mouseCursor.Position = new Vector2(position.X, position.Y); } if (!TopGui.OnMouse(position, button, pressed)) { OnMouse(position, button, pressed); } }
/// <summary> /// Initializes the InputEngine. /// </summary> public void InitInputEngine() { InputEngine.Instance.Init(this.Control); mouseCursor = InputEngine.Instance.StandardMouseCursor; TopGui.Add(mouseCursor); InputEngine.Instance.Keyboard.OnKey += new KeyHandler(Keyboard_OnKey); InputEngine.Instance.Keyboard.OnChar += new CharHandler(Keyboard_OnChar); InputEngine.Instance.Mouse.OnMouse += new MouseHandler(Mouse_OnMouse); this.mouse = InputEngine.Instance.Mouse; }
/// <summary> /// Renders one frame of the game. /// </summary> /// <param name="deltaTime">The time since the last <c>OnRender</c> call.</param> void IRender.OnRender(float deltaTime) { // Pre this.PreRender(deltaTime); Device.Instance.BeginScene(); // On this.OnRender(deltaTime); if (TopGui.Children.Count != 0) { TopGui.OnRender(deltaTime); } Device.Instance.EndScene(); Purple.Profiling.Profiler.Instance.Begin("Present"); Device.Instance.Present(); Purple.Profiling.Profiler.Instance.End("Present"); // Post this.PostRender(deltaTime); }