/// <summary> /// Initializes a new instance of the <see cref="Game"/> class. /// </summary> public Game() { // Register the logger backend before anything else logListener = GetLogListener(); if (logListener != null) { GlobalLogger.GlobalMessageLogged += logListener; } // Create all core services, except Input which is created during `Initialize'. // Registration takes place in `Initialize'. Script = new ScriptSystem(Services); Services.AddService(Script); SceneSystem = new SceneSystem(Services); Services.AddService(SceneSystem); Streaming = new StreamingManager(Services); Audio = new AudioSystem(Services); Services.AddService(Audio); Services.AddService <IAudioEngineProvider>(Audio); gameFontSystem = new GameFontSystem(Services); Services.AddService(gameFontSystem.FontSystem); Services.AddService <IFontFactory>(gameFontSystem.FontSystem); SpriteAnimation = new SpriteAnimationSystem(Services); Services.AddService(SpriteAnimation); DebugTextSystem = new DebugTextSystem(Services); Services.AddService(DebugTextSystem); DebugRenderSystem = new DebugRenderSystem(Services); Services.AddService(DebugRenderSystem); ProfilingSystem = new GameProfilingSystem(Services); Services.AddService(ProfilingSystem); VRDeviceSystem = new VRDeviceSystem(Services); Services.AddService(VRDeviceSystem); // Creates the graphics device manager GraphicsDeviceManager = new GraphicsDeviceManager(this); Services.AddService <IGraphicsDeviceManager>(GraphicsDeviceManager); Services.AddService <IGraphicsDeviceService>(GraphicsDeviceManager); AutoLoadDefaultSettings = true; }
public GameSystemLoader(EntityWorld world, // Single LoadButtonConfigurationSystem loadButtonConfigurationSystem, // Update GravitySystem gravitySystem, PhysicsSystem physicsSystem, PlayerStateSystem playerStateSystem, EntityCollisionSystem entityCollisionSystem, LevelCollisionSystem levelCollisionSystem, CameraSystem cameraSystem, SpriteSystem spriteSystem, HeartbeatSystem heartbeatSystem, DebugSystem debugSystem, DebugTextSystem debugTextSystem, // Draw RenderSystem renderSystem, RenderLevelSystem renderLevelSystem, RenderCollisionBoxSystem renderCollisionBoxSystem, RenderTextSystem renderTextSystem, RenderStaticGraphicSystem renderStaticGraphicSystem, RenderLifeBarSystem renderLifeBarSystem) : base(world) { // Single _loadButtonConfigurationSystem = loadButtonConfigurationSystem; // Update _gravitySystem = gravitySystem; _physicsSystem = physicsSystem; _playerStateSystem = playerStateSystem; _entityCollisionSystem = entityCollisionSystem; _levelCollisionSystem = levelCollisionSystem; _cameraSystem = cameraSystem; _spriteSystem = spriteSystem; _heartbeatSystem = heartbeatSystem; _debugSystem = debugSystem; _debugTextSystem = debugTextSystem; // Draw _renderSystem = renderSystem; _renderLevelSystem = renderLevelSystem; _renderCollisionBoxSystem = renderCollisionBoxSystem; _renderTextSystem = renderTextSystem; _renderStaticGraphicSystem = renderStaticGraphicSystem; _renderLifeBarSystem = renderLifeBarSystem; }