public void Run() { if (inRun) { throw new InvalidOperationException("Run Method called more than once"); } inRun = true; BeginRun(); gameHost.Initialize(); graphicsManager = (IGraphicsDeviceManager)Services.GetService(typeof(IGraphicsDeviceManager)); if (graphicsManager != null) { graphicsManager.CreateDevice(); } graphicsService = (IGraphicsDeviceService)Services.GetService(typeof(IGraphicsDeviceService)); if (graphicsService != null) { /*graphicsService.DeviceCreated += DeviceCreated; * graphicsService.DeviceResetting += DeviceResetting; * graphicsService.DeviceReset += DeviceReset; * graphicsService.DeviceDisposing += DeviceDisposing;*/ } Initialize(); isActive = true; gameHost.Run(); EndRun(); inRun = false; }