public Scene() { _gameObjects = new List<GameObject>(); ShaderProgram = new PointLightShader(); ShaderProgram.Load(); ShaderProgram.Use(); }
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); }