Example #1
0
        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);
        }
Example #2
0
 public Scene(ShaderProgram.ProgramType shaderType)
     : this(new PhysicsFarseer(), shaderType)
 {
 }