public Scene(PhysicsBase physics, ShaderProgram.ProgramType shaderType) { _gameObjects = new List<GameObject>(); _resources = new List<Resource>(); _triggers = new List<Trigger>(); ComponentCache = new Dictionary<string, GameComponent>(); switch (shaderType) { case ShaderProgram.ProgramType.POINTLIGHT: Shader = new PointLightShader(); break; case ShaderProgram.ProgramType.UI: Shader = new UIShader(); break; } Shader.Load(); DesignShader = new DesignShader(); if (Game.InDesignMode) DesignShader.Load(); Physics = physics; MouseButtonState = new Dictionary<MouseButton, bool>(); MouseButtonState.Add(MouseButton.Button1, false); MouseButtonState.Add(MouseButton.Button2, false); MouseButtonState.Add(MouseButton.ButtonMiddle, false); Physics = physics; AmbientColor = new Vector4(1, 1, 1, 1); Statistics = new Statistics(); MeshBufferCache = new Dictionary<string, int[]>(); Physics.CollisionEvent += new EventHandler<CollisionEvent>(Physics_CollisionEvent); }
public Scene(ShaderProgram.ProgramType shaderType) : this(new PhysicsFarseer(), shaderType) { }