我已经创建了自己的画布,已经从JPanel扩展,但是我注意到内容等等,突然间我的FPS受到了打击.我遵循Filthy Rich Clients的swing规则,使用paintComponent,创建剪辑区域,仅重绘已更改的内容,等等.我将FPS设置为恒定的50 FPS,我注意到有时候我的FPS会跳到31/32 FPS然后再回到50 F等等.在运行我的程序时,它只使用大约25MB的RAM和0的CPU,即使在渲染时也是如此.我也有OpenGL设置.
注意:我没有图像,这是严格使用图形中的形状.
在JPanel上绘制所有内容是否会对性能产生重大影响?我应该扩展一个不同的组件(我一直看到Canvas组件)?在JPanel中构建像俄罗斯方块(或任何其他复古游戏)这样的游戏有多"聪明"?
这是一个计时器问题的可能性,因为我刚添加了100个额外的绘画调用,而FPS仍然执行50 32/31的事情.