screenDirtyRegions.dirty(dx1, dy1, dx2 - dx1, dy2 - dy1);
backbuffer.drawPicture(source, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2); }
- public void fillRect(int x1, int y1, int x2, int y2, int color) {
- screenDirtyRegions.dirty(x1, y1, x2 - x1, y2 - y1);
- backbuffer.fillRect(x1, y1, x2, y2, color); }
+ public void fillTrapezoid(int x1, int x2, int y1, int x3, int x4, int y2, int color) {
+ screenDirtyRegions.dirty(Math.min(x1, x3), y1, Math.max(x2, x4) - Math.min(x1, x3), y2 - y1);
+ backbuffer.fillTrapezoid(x1, x2, y1, x3, x4, y2, color); }
public void render() {
super.render();
render_();
}
+
public void render_() {
int[][] dirt = screenDirtyRegions.flush();
for(int i = 0; dirt != null && i < dirt.length; i++) {