【问题标题】:How can I animate a sequence of pictures in Java?如何在 Java 中为一系列图片制作动画?
【发布时间】:2011-04-07 01:48:00
【问题描述】:

好吧,我正在做一个小游戏,我有一个攻击函数来处理角色的实际攻击部分,但我不知道如何制作构成攻击动作的三张图片(一张剑举起,然后对角线,然后直接在前面)动画,所以它实际上看起来像剑在摆动。

另外,我如何做到这一点,以便当角色走出屏幕时,视图会更改以显示新视图。就像我走过屏幕一列,它显示一个新列,屏幕中的第一列现在不在屏幕上?

【问题讨论】:

  • 我建议您使用 Java 游戏库。它们通常支持精灵动画等。看看 Slick 2d、jMonkey、LWJGL。

标签: java animation paint


【解决方案1】:

我会按照本教程进行操作:http://www.tonypa.pri.ee/tbw/start.html

它不适用于 Java,但您可以根据需要调整代码和概念。算法才是最重要的。

对于动画角色,我会创建一个 Sprite 类来存储一组图像。当涉及到绘图时,您只需调用一个 paint(..) 方法并传入 Graphics2D 对象。在这里,根据自上次调用后经过的时间(使用 System.currentTimeMillis())更新 paint(..) 方法中的当前图像,然后使用 Graphics2D 对象绘制该图像。如果你特别聪明,你可以做一个算法来计算精灵所在的帧而不存储任何状态信息(使用模和指定的公共时间分母,比如 2ms - 确保帧时间是 2ms 的倍数) .

如果您正在寻找游戏开发库,那么最近出现了一个相当不错的库——Shaven Puppy Game Library (spgl),它使用了创建者制作的 LWJGL(轻量级 Java 游戏库 - 使用 SDL / OpenGL)泰坦的复仇,一个成功的 2D 游戏,用 Java 编码,使用硬件加速。它有一个巨大的 sprite framework。可能是我见过的最大的。您可以在文本文件中定义精灵以及精灵发出的声音。另一个是Slick。简单的是GTGEJGame

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-08
  • 2021-05-30
  • 1970-01-01
  • 1970-01-01
  • 2017-11-19
  • 1970-01-01
相关资源
最近更新 更多