1
为了清楚起见,我正在寻找最好的替代方案来实现Java中的'游戏循环'(使用Swing)。Java Swing'游戏循环'最佳实践
目前,我使用的是paintComponent()
以下设置在JPanel
类中重写绘制的东西,像这样:
public void run() {
while (running) {
panel.update();
panel.repaint();
try {
sleep(SLEEP_TIME);
} catch (Exception exception) {
exception.printStackTrace();
}
}
}
这种设置似乎整齐的工作,但移动图形和图像好像口吃了像素或两次。换句话说,这个运动并不像我希望的那样流畅。
我想知道是否有办法更有效地完成游戏循环,即避免在运动中出现口吃?
使循环率固定。 – Bubletan
我该怎么做? – noobcoder
'SLEEP_TIME'的价值是什么?摆动通常可以实现非常高的帧速率。口吃可能是由于您的程序编写过程的某种方式,而您提供的小样本不足以确定问题。请参阅http://stackoverflow.com/help/mcve – Radiodef