gpt4 book ai didi

Java 2D 游戏 - 定时器与线程?

转载 作者:行者123 更新时间:2023-11-29 07:18:07 26 4
gpt4 key购买 nike

大家好,我正在制作我的第一个 2D Java 游戏,目前我正在使用计时器来控制和更新所有内容。我想知道哪种方法最适合 2D Java 游戏,定时器还是线程?目前我的 gameCanvas 类中有一个 Timer,它渲染/绘制所有内容以及检查碰撞。然后我也有一个 Timer 用于我的播放器,用于移动他。

我使用计时器的唯一原因是因为我是 Java 编程的新手,而且考虑到我必须提出的所有内容,这似乎是当时最简单的方法:

Timer timer = new Timer(5,this);
timer.start();

你们会推荐什么?

最佳答案

pst 关于这两种方法的优缺点的说法是绝对正确的。

不过,我也不推荐。我会使用“专为游戏设计”的游戏引擎,例如 Slick2D ,它将极大地帮助您了解游戏的更新和逻辑、主游戏循环的结构,以及处理您将遇到的许多低级问题。

如果您正在考虑将 Swing 用于游戏,我也会远离它,原因已列明 in my answer here .

Slick2D预先构建来处理计时问题,并计算出渲染帧之间的增量等。您还可以获得很多不必自己构建的好东西,例如输入处理(键盘,鼠标, Controller )、加速图形(您的游戏将自动受益于图形加速,因为引擎会为您处理这件事),当您准备好播放音频时,它还有一个很棒的音频库。

自己写所有这些东西会让你想哭。除非你真的很喜欢构建引擎本身(而不是想花时间构建游戏逻辑本身),否则构建引擎会花费大量时间,而你只能使用现成的成熟工具。

关于Java 2D 游戏 - 定时器与线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7788927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com