【问题标题】:Faster 2d-Rendering in javajava中更快的二维渲染
【发布时间】:2012-08-07 00:06:49
【问题描述】:

在 java 中渲染 2d 图形的更快方法是什么?我见过的 2 个好方法是双缓冲,您可以在其中创建 BufferStrategy,例如:

JFrame f = new JFrame();
f.setSize()
.....
createBufferStrategy(2);

我见过的另一种方法是使用 createImage 方法。

Image dbimage = createImage(....);
Graphics g = dbimage.getGraphics();
....

这是我见过的两个。哪个最快?有没有更好的方法?请不要告诉我获取附加库,因为我知道它们存在。提前谢谢你...

【问题讨论】:

  • 最重要的是:你测量过吗?哪个最快?
  • 我不知道哪个最快...这就是我问的原因...
  • 我认为您在尝试确定这一点时遇到的最大问题是硬件和操作系统实现的差异。您可以将许多调整传递给 Java2D 渲染引擎(我们使用了一些来纠正 ATI Radeon 卡的问题),因此虽然方法可能适用于特定的硬件组/操作系统,但一般来说它可能不适用于另一个跨度>
  • 响应@Strelok的建议,记录每个操作的开始和结束时间(System.currentTimeMillis())并进行比较。这会给你答案。

标签: java performance swing graphics java-2d


【解决方案1】:

第一个sn-p [BufferStrategy] 是java中最快和推荐的2d渲染方式。有了它,您可以利用硬件渲染或优化的软件渲染。当您进行全屏 2d 渲染时,性能非常显着。例如,您可以通过一个非常简单的操作(包括更改指向缓冲区的指针)来从更新屏幕的页面翻转中受益。另一个好处是在视频内存中有缓冲区。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    相关资源
    最近更新 更多