什么是Java2d更快的替代品?

时间:2009-03-02 14:55:04

标签: java performance rendering jogl java-2d

我正在寻找一些物理模拟,我需要用Java快速渲染。

我过去遇到过Java2d的性能问题,那么快速的选择是什么? JOGL明显比Java2d快吗?

4 个答案:

答案 0 :(得分:11)

我对Java2D的体验是,如果遵循规则,它可以非常快。通过改变一些简单的东西,我的应用程序从90%的CPU变为低于5%的CPU。例如,使用大型透明PNG是不行的。

一个非常好的资源是Java-Gaming.org论坛:很多人,包括Sun 2D专家,都在那里,为2D绘图提供了很多关于性能问题的例子和解决方案。

请参阅:http://www.javagaming.org/,然后是“性能调整”主题。

答案 1 :(得分:5)

JOGL可能比Java2D快得多,即使你只使用它来制作2D图形:正如Clayworth所说,它通常取决于你需要做什么。

我的猜测是,对于2D物理模拟,您有(纹理或非纹理)对象旋转和平移2个自由度,JOGL应提供最佳性能,并且还可以轻松地提供可缩放的界面。这是用于2D图形的OpenGL的tutorial(C,但很容易适应JOGL)。

JOGL将比Java2D花费更多的时间来学习,但是实现良好的性能很可能不需要像Java2D那样的专门优化。

答案 2 :(得分:4)

我不知道 - 过去我说过是 - 特别是如果您使用显示列表而不是每次显示屏幕时通过API进行大量调用。但是1.6 JVM的更新10增加了加速的Java2D图形,所以现在可能有优势。真正唯一可以确定的方法是尝试在两者中渲染典型场景并进行测量。

答案 3 :(得分:2)

同时查看Slick,它基于LWJGL,并且在某些方面类似于Java2D。它使用OpenGL,因此速度更快。