@Override public void renderAffine2(ShapeRenderer renderer, Transform transform) { tmp.set(renderer.getColor()); renderer.setColor(color); affine2.set(transform.affine2); float x = ox + (centre ? -width / 2f : 0); float y = oy + (centre ? -height / 2f : 0); affine2.translate(x, y); Affine2Utils.rectangle(width, height, affine2, rect); if (renderer.getCurrentType() == ShapeRenderer.ShapeType.Filled) { // cant do polygon :/ renderer.triangle(rect[X1], rect[Y1], rect[X2], rect[Y2], rect[X3], rect[Y3]); renderer.triangle(rect[X1], rect[Y1], rect[X3], rect[Y3], rect[X4], rect[Y4]); } else { renderer.polygon(rect); } renderer.setColor(tmp); }