我在做一个包括物理和图形引擎的游戏引擎。现在我的图形引擎被设置为60 fps,有时候我发现屏幕上的更新速度很慢。我有一个JFrame,我添加了一个可以移动的JPanel,这意味着图形引擎在每个循环中都执行frame.repaint()。我开始相信在画面上进行重新绘制可以在屏幕上实现小的延迟。JFrame vs JPanel
延迟是这样的,JPanel在一条直线上移动,突然它可以比平常跳得更远。
在JFrame上放一个JPanel“gameField”,然后在gameField中添加一个JPanel“player”并重新绘制gameField会更好吗?或者它与重绘JFrame基本相同?我刚刚听说JFrame应该是一个沉重的组件。
我试过设置更高的fps,它不会改变任何东西。
你看过写入缓冲区然后写入屏幕? – 2012-02-29 21:52:11
你愿意用一个例子来精心设计吗? :)我不是在挥杆 – 2012-02-29 22:02:02
请编辑您的问题,以包括一个[sscce](http://sscce.org/),展示您描述的问题。 ['AnimationTest'](http://stackoverflow.com/a/3256941/230513)可能是一个有用的起点。 – trashgod 2012-02-29 22:06:19