Esempio n. 1
0
        public void DrawOverlay(Camera camera, Color color, float innerFactor, float outerFactor)
        {
            Vector2     viewportSize = camera.ViewportSize;
            Vector2     vector       = new Vector2(0f, 0f);
            Vector2     vector2      = new Vector2(viewportSize.X, 0f);
            Vector2     vector3      = new Vector2(viewportSize.X, viewportSize.Y);
            Vector2     vector4      = new Vector2(0f, viewportSize.Y);
            Vector2     p            = new Vector2(viewportSize.X / 2f, viewportSize.Y / 2f);
            Color       color2       = color * outerFactor;
            Color       color3       = color * innerFactor;
            FlatBatch2D flatBatch2D  = m_primitivesRenderer2D.FlatBatch(0, DepthStencilState.None, null, BlendState.AlphaBlend);
            int         count        = flatBatch2D.TriangleVertices.Count;

            flatBatch2D.QueueTriangle(vector, vector2, p, 0f, color2, color2, color3);
            flatBatch2D.QueueTriangle(vector2, vector3, p, 0f, color2, color2, color3);
            flatBatch2D.QueueTriangle(vector3, vector4, p, 0f, color2, color2, color3);
            flatBatch2D.QueueTriangle(vector4, vector, p, 0f, color2, color2, color3);
            flatBatch2D.TransformTriangles(camera.ViewportMatrix, count);
            flatBatch2D.Flush();
        }