Exemple #1
0
        public static void Render(GameTime gameTime)
        {
            if (Wireframe)
            {
                if (GraphicsDevice.RasterizerState.FillMode != FillMode.WireFrame)
                {
                    RasterizerState rasterizerState = new RasterizerState();
                    rasterizerState.FillMode       = FillMode.WireFrame;
                    GraphicsDevice.RasterizerState = rasterizerState;
                }
            }
            else
            {
                if (GraphicsDevice.RasterizerState.FillMode == FillMode.WireFrame)
                {
                    RasterizerState rasterizerState = new RasterizerState();
                    rasterizerState.FillMode       = FillMode.Solid;
                    GraphicsDevice.RasterizerState = rasterizerState;
                }
            }


            ShadowMapRenderer.PreDraw(gameTime);

            for (int i = 0; i < gameSubSystems.Count; i++)
            {
                if (gameSubSystems[i] is GUIManager)
                {
                    continue;
                }
                if (gameSubSystems[i] is FPSCounter)
                {
                    continue;
                }


                gameSubSystems[i].Render(gameTime);
            }


            ShadowMapRenderer.PostDraw(gameTime);


            for (int i = 0; i < gameSubSystems.Count; i++)
            {
                if (gameSubSystems[i] is GUIManager)
                {
                    continue;
                }

                gameSubSystems[i].Render(gameTime);
            }


            DebugShapeRenderer.Draw(gameTime, ActiveCamera.View, ActiveCamera.Projection);
            GUIManager.Render(gameTime);

            DebugText.Draw(gameTime);
            ScreenManager.RenderSprites(gameTime);
        }