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);