1
Мое настольное приложение лагов. Я думаю, что что-то не так в java.awt.image.BufferStrategy.BufferStrategy lagging
private void render() {
BufferStrategy bs = this.getBufferStrategy();
if (bs == null) {
this.createBufferStrategy(3);
return;
}
// drawing
Graphics g = bs.getDrawGraphics();
g.dispose();
bs.show();
Toolkit.getDefaultToolkit().sync();
}
Я даже не начал рисовать. Я использовал то же самое в другом проекте, и он работал, например, если метод визуализации выглядит так, он отлично работает.
private void render(){
BufferStrategy bs = this.getBufferStrategy();
if (bs == null){
this.createBufferStrategy(3);
return;
}
// drawing
Graphics g = bs.getDrawGraphics();
g.setColor(Color.GRAY);
g.fillRect(0, 0, getWidth(), getHeight());
int row; // Row number, from 0 to 7
int col; // Column number, from 0 to 7
int x,y; // Top-left corner of square
for (row = 0; row < 8; row++) {
for (col = 0; col < 8; col++) {
x = col * 70;
y = row * 70;
if ((row % 2) == (col % 2))
g.setColor(Color.white);
else
g.setColor(Color.black);
g.fillRect(x, y, 70, 70);
}
}
g.dispose();
bs.show();
Toolkit.getDefaultToolkit().sync();
}
Основные вещи такие же. Почему первая отстает в тех же условиях?
Без 'Toolkit.getDefaultToolkit() синхронизации();. «Я даже не могу закончить свою программу. Мышь начинает медленно двигаться. – Dexxrey