绘制java.awt.graphics对象的有效方法

绘制java.awt.graphics对象的有效方法,java,animation,graphics,rendering,awt,Java,Animation,Graphics,Rendering,Awt,我试图通过在动画的每一步动态生成帧来创建动画。现在我需要运行一个算法逐像素地绘制新帧,我使用一个BuffereImage,通过它的光栅数据访问它。 但是,90%的时间都花在java.awt.graphcis.drawImage()中,我使用它将图像传输到JFrame的内容中 有没有更有效的方法在图形对象内逐像素绘制?尝试使用。比这要快得多是很难做到的。您是否尝试过java.awt.graphics2D.drawImage(buffereImage,null,0,0)?我不知道它是否比另一种画法更

我试图通过在动画的每一步动态生成帧来创建动画。现在我需要运行一个算法逐像素地绘制新帧,我使用一个BuffereImage,通过它的光栅数据访问它。 但是,90%的时间都花在java.awt.graphcis.drawImage()中,我使用它将图像传输到JFrame的内容中


有没有更有效的方法在图形对象内逐像素绘制?

尝试使用。比这要快得多是很难做到的。

您是否尝试过java.awt.graphics2D.drawImage(buffereImage,null,0,0)?我不知道它是否比另一种画法更有效。。。但可能不会。谢谢dacwe,我不清楚如何使用VolatileImage。我应该继续使用BuffereImage并将其从VolatileImage绘制到图形对象中,还是应该放弃BuffereImage并直接绘制到VolatileImage中?我这样问是因为使用gc.drawLine()或gc.fillRect()逐像素绘制比填充BuffereImage数组的计算成本更高。