/// <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() { world = new World(); player1 = new Player(world); player1Renderer = new PlayerRenderer(GraphicsDevice, player1); player1Renderer.Initialize(); hud = new HudRenderer(GraphicsDevice, world, player1Renderer.camera); hud.Initialize(); #region choose renderer renderer = new ThreadedWorldRenderer(GraphicsDevice, player1Renderer.camera, world); // renderer = new SimpleRenderer(GraphicsDevice, player1Renderer.camera, world,player1); diagnosticWorldRenderer = new DiagnosticWorldRenderer(GraphicsDevice, player1Renderer.camera, world); skyDomeRenderer = new SkyDomeRenderer(GraphicsDevice, player1Renderer.camera, world); renderer.Initialize(); diagnosticWorldRenderer.Initialize(); skyDomeRenderer.Initialize(); throwExceptions = false; #endregion //TODO refactor WorldRenderer needs player position + view frustum base.Initialize(); }
public SkyDome(Color vertexColour, Color ambientLightColor, Color diffuseLightColor) { var skyDomeGameObject = GameObjectFactory.CreateSkyDomeObject(vertexColour, 100, 10); skyDomeRenderer = skyDomeGameObject.GetComponent <SkyDomeRenderer>(); skyDomeRenderer.AmbientLightColor = ambientLightColor; skyDomeRenderer.AmbientLightIntensity = 0.2f; skyDomeRenderer.DiffuseLightColor = diffuseLightColor; skyDomeRenderer.DiffuseLightIntensity = 0.3f; skyDomeRenderer.DiffuseLightDirection = Vector3.Forward; SystemCore.GameObjectManager.AddAndInitialiseGameObject(skyDomeGameObject); }