直接在屏幕上绘制缓冲图与绘图形状



我正在创建一个游戏,其中涉及在2-10个像素之间的1000个填充圆圈,以50Hz的频率在一个大jpanel之间。

我当前的执行方式是通过通过JPanel本身调用DrawoLAL方法来绘制每个圆圈。但是,这非常慢,并以某种方式设法将游戏运行时间增加了50%。

因此,我想到了使用缓冲图:创建缓冲图像,然后在缓冲图像上绘制填充圆圈。然后一口气将整个缓冲图像绘制到jpanel上。这种方法会比我的原始方法快吗?在两种情况下,在1000左右的1000左右使用绘制本身是否使用?

我怀疑,每当这种像素没有更改颜色时,再次打印相同的像素会浪费很多处理。有没有办法避免重新粉刷如此多余的像素?

如果创建drawpanel,则不需要实例变量。DrawPanel位于Javax.swing软件包中。

创建椭圆形你

  1. 创建一个drawpanel
  2. 将Drawpanel添加到Jframe

示例:

private class MyDrawPanel extends JPanel 
{ 
    public void paintComponent(Graphics g) 
    { 
        g.fillRect(0,0,this.getWidth(),this.getHeight());        
        g.setColor(Color.white); 
        g.fillOval(90,180,150,150) 
    } 
}

相关内容

  • 没有找到相关文章

最新更新