public virtual void RequestViewer(out ViewerSetup viewer) { viewer = new ViewerSetup(); }
public void Run() { if (_loaded) { Window.Show(); ViewerSetup viewer = new ViewerSetup(); _lastTime = Stopwatch.GetTimestamp(); while (_running) { Application.DoEvents(); if (!_deactive) { long currentTime = Stopwatch.GetTimestamp(); long elapsed = (currentTime - _lastTime) / Stopwatch.Frequency; _lastTime = currentTime; Input.Update(); if (Input.GetKeyPress(Key.Escape)) { Quit(); } if (CurrentState != null) { CurrentState.RequestViewer(out viewer); } _stateChanged = false; if (CurrentState != null) { CurrentState.Update(elapsed); } if (_stateChanged) { continue; } try { _device.Clear(viewer.ClearFlags, Color.White, 1.0f, 0); } catch (Direct3D9Exception dex) { } if (_device.BeginScene().IsSuccess) { if (CurrentState != null) { CurrentState.Render(); } _device.EndScene(); _device.Present(); if (++_currentBackBuffer == _setup.TotalBackBuffers + 1) { _currentBackBuffer = 0; } } } } Release(); Application.Exit(); } }
public void Run() { if (_loaded) { Window.Show(); ViewerSetup viewer = new ViewerSetup(); _lastTime = Stopwatch.GetTimestamp(); while (_running) { Application.DoEvents(); if (!_deactive) { long currentTime = Stopwatch.GetTimestamp(); long elapsed = (currentTime - _lastTime)/Stopwatch.Frequency; _lastTime = currentTime; Input.Update(); if (Input.GetKeyPress(Key.Escape)) { Quit(); } if (CurrentState != null) { CurrentState.RequestViewer(out viewer); } _stateChanged = false; if (CurrentState != null) { CurrentState.Update(elapsed); } if (_stateChanged) { continue; } try { _device.Clear(viewer.ClearFlags, Color.White, 1.0f, 0); } catch (Direct3D9Exception dex) { } if (_device.BeginScene().IsSuccess) { if (CurrentState != null) { CurrentState.Render(); } _device.EndScene(); _device.Present(); if (++_currentBackBuffer == _setup.TotalBackBuffers + 1) { _currentBackBuffer = 0; } } } } Release(); Application.Exit(); } }