Closed. This question needs details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
5年前关闭。
Improve this question
我将
那是我的
我已经借助System.currentTimeMillis()测量了性能,并得到了结果(每帧时间):
9毫秒
9毫秒
11毫秒
10毫秒
0毫秒
21毫秒
10毫秒
一个渲染过程要花0毫秒,而下一个渲染时间是平均时间的两倍,怎么会发生呢?您对改善整体渲染性能有何建议?
//更新
我现在尝试了
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
5年前关闭。
Improve this question
我将
Canvas
包中的java.awt
添加到了JFrame
中。 Canvas
使用双缓冲绘制,并通过canvas.createBufferStrategy(2)
启用。那是我的
render()
方法,应该很快,因为我没有画太多:Graphics g = strategy.getDrawGraphics();
// draw
g.drawImage(...); // Image with a size of 1000x1000
g.drawString(...); // Drawing a short String with the Frames per Second
drawModel(g); // this method draws a rotated game character with the
// help of Gaphics2D (Imagesize: 100x100)
g.dispose();
strategy.show();
我已经借助System.currentTimeMillis()测量了性能,并得到了结果(每帧时间):
9毫秒
9毫秒
11毫秒
10毫秒
0毫秒
21毫秒
10毫秒
一个渲染过程要花0毫秒,而下一个渲染时间是平均时间的两倍,怎么会发生呢?您对改善整体渲染性能有何建议?
//更新
我现在尝试了
JPanel
:它张开了,它比Canvas慢得多。 最佳答案
System.currentTimeMillis()
通常不超过10毫秒。尝试System.nanoTime()
。