/// <summary> /// Allows the game to perform any initialization it needs to before starting to run. /// This is where it can query for any required services and load any non-graphic /// related content. Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { engineComponents.Add(new DisplayUtilities(this)); EngineComponents.Add(renderer2d = new Renderer2d(this)); EngineComponents.Add(InputManager = new InputManager(this)); engineComponents.Add(new AudioManager(this)); // [FOREACH PERFORMANCE] Should not allocate garbage EngineComponents.AllServices.ForEach(a => a.Initialize()); loadingScene = new LoadingScene(this); loadingScene.Initialize(); base.Initialize(); }
public EntityHandler( MessageHub messageHub, MovementHandler movementHandler, SensorHandler sensorHandler, WeaponHandler weaponHandler, Renderer2d renderer2d, // todo: RenderFactory.GetRenderers? Renderer3d renderer3d, SensorRenderer sensorRenderer) { _messageHub = messageHub; _sensorHandler = sensorHandler; _weaponHandler = weaponHandler; _2dRenderer = renderer2d; _3dRenderer = renderer3d; _sensorRenderer = sensorRenderer; _movementHandler = movementHandler; }
public override void Initialize() { this.renderer2d = this.Entity.Scene.Game.EngineComponents.Get <Renderer2d>(); }