From b2a069f8ab821ecd3db1bb2c923871a3f29c7c4b Mon Sep 17 00:00:00 2001 From: reaperrr Date: Thu, 7 Jun 2018 22:32:34 +0200 Subject: [PATCH] Add FillTriangle support --- OpenRA.Game/Graphics/RgbaColorRenderer.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/OpenRA.Game/Graphics/RgbaColorRenderer.cs b/OpenRA.Game/Graphics/RgbaColorRenderer.cs index 6be20a0e03..7650dbef5c 100644 --- a/OpenRA.Game/Graphics/RgbaColorRenderer.cs +++ b/OpenRA.Game/Graphics/RgbaColorRenderer.cs @@ -200,6 +200,20 @@ namespace OpenRA.Graphics DrawPolygon(new[] { tl, tr, br, bl }, width, color); } + public void FillTriangle(float3 a, float3 b, float3 c, Color color) + { + color = Util.PremultiplyAlpha(color); + var cr = color.R / 255.0f; + var cg = color.G / 255.0f; + var cb = color.B / 255.0f; + var ca = color.A / 255.0f; + + vertices[0] = new Vertex(a + Offset, cr, cg, cb, ca, 0, 0); + vertices[1] = new Vertex(b + Offset, cr, cg, cb, ca, 0, 0); + vertices[2] = new Vertex(c + Offset, cr, cg, cb, ca, 0, 0); + parent.DrawRGBAVertices(vertices); + } + public void FillRect(float3 tl, float3 br, Color color) { var tr = new float3(br.X, tl.Y, tl.Z);