public void Draw(RenderComposer composer) { // The vertices were taken from a font, and the polygon is huge. composer.PushModelMatrix(Matrix4x4.CreateScale(0.1f, 0.1f, 1f)); composer.SetStencilTest(true); composer.StencilWindingStart(); composer.ToggleRenderColor(false); // Draw all of them together. Winding will take care of the overlap. var accum = Rectangle.Empty; for (var i = 0; i < _testPolygon.Length; i++) { composer.RenderVertices(_testPolygon[i].Vertices, Color.White); accum = accum.Union(_testPolygon[i].Bounds2D); } composer.StencilWindingEnd(); composer.ToggleRenderColor(true); // You need one quad which covers the bounds of all the polygons. // In this case I added the bounding boxes, but you could just draw a screen sized quad. composer.RenderSprite(accum, Color.Red); composer.SetStencilTest(false); composer.PopModelMatrix(); }