Beispiel #1
0
 public virtual void RequestViewer(out ViewerSetup viewer)
 {
     viewer = new ViewerSetup();
 }
Beispiel #2
0
 public virtual void RequestViewer(out ViewerSetup viewer)
 {
     viewer = new ViewerSetup();
 }
Beispiel #3
0
        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();
            }
        }
Beispiel #4
0
        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();
            }
        }