Java游戏看起来运行很慢?

发布于 2024-12-08 18:04:59 字数 356 浏览 0 评论 0原文

我正在制作一个涉及使用同一个类的多个“球”的游戏,我让一切都按照我希望的方式使用 ArrayList 工作,但我的问题是我添加的球越多,渲染它们的速度就越慢。这使得游戏看起来速度很慢并且会闪烁,抱歉,我无法提供视频,但我可以提供我正在使用的绘制球的代码:

代码:

for(int i=0;i<balls.size(); i++){
    Ball tmp = (Ball) balls.get(i);
    g2d.drawImage(tmp.getImage(), tmp.getX(),tmp.getY(),null);
}   

您能给我一个更好的示例或方向吗渲染球的方法?

谢谢。

I'm making a game which involves multiple "balls" using the same class, I have everything working the way I want it to using a ArrayList but my problem is that the more of the balls I add the slower it renders them. This makes the game look like it is going slow and it will flicker, I can't provide a video sorry, but I can provide the code I am using the draw the balls:

code:

for(int i=0;i<balls.size(); i++){
    Ball tmp = (Ball) balls.get(i);
    g2d.drawImage(tmp.getImage(), tmp.getX(),tmp.getY(),null);
}   

Could you give me examples or direction for a better way to render the balls?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

单调的奢华 2024-12-15 18:05:00

对于闪烁,您需要了解双缓冲 。如果由于非双缓冲而导致速度缓慢,那么您将必须对其进行分析,或者可能会显示更多代码。

For the flickering, you'll want to learn about double buffering. If the slowness is something aside from perception due to not double buffering, you'll have to profile it or maybe show some more code.

小…楫夜泊 2024-12-15 18:05:00

我不确定速度影响(可能不多),但您应该在使用 ArrayList(即 ArrayList)时指定类型,而不是在获得所有内容时对其进行类型转换。

I'm not sure of the speed ramifications (probably not much), but you should be specifying a type when using an ArrayList (i.e ArrayList<Ball>) instead of typecasting everything as you get it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文