Java Slick 2D让图像像素变慢,任何优化?

时间:2011-07-29 14:33:34

标签: java performance

在使用Slick 2D API的Java中,我构建了一个以位图为世界的游戏。如果位图的像素的alpha为0,则认为角色可以自由漫游的空气;否则,它是坚实的,他们无法通过。

在我的电脑上,我以1%的CPU使用率运行它。然后,当我尝试在我的笔记本电脑上运行它时,它的核心达到顶峰并以我的CPU使用率的50%运行。

在做完测试后,我发现扩展函数调用是获取图像的像素Image.getColor(x, y)。这是有趣的部分。我使用Allegro 5在C ++中重建了这个相同的例子,在我的笔记本电脑上它以3%而不是50%运行。

是否有更有效的方法从Slick 2D中的Image获取像素?

1 个答案:

答案 0 :(得分:1)

Image对象转换为像素值数组,并从数组中获取值。过多的方法调用会大大减慢您的程序。