【问题标题】:set image in j2me在 j2me 中设置图像
【发布时间】:2013-02-18 11:49:43
【问题描述】:

我正在用 j2me 开发游戏。我将一个精灵用于 4 组图像,并使用 sprite.setImage() 相应地更改精灵的图像。我在运行时将图像随机设置为精灵。

如何知道精灵在运行时正在使用哪个图像?

【问题讨论】:

    标签: java-me sprite midp


    【解决方案1】:

    短版:你不能也可能不应该。

    长版:两种常见模式(我会同时使用它们)是:

    • 始终为所有精灵(和图块以及其他所有内容)使用一张图像。然后通过改变它的帧或帧序列来修改精灵;

    • 应用基本的模型/视图分离。不要将您的视图(精灵)视为有关游戏状态的知识来源,将其视为只写资源。游戏的状态存在于某个模型类中,该类非常清楚(也许在更抽象的层面上)哪个图像被设置到哪个精灵。这种方法将解决更多的问题,其中一些问题在发生之前很难感知(例如精灵的逻辑和物理位置之间的差异,以防你在失去生命时发生任何动画等)。

    【讨论】:

    • 如果所有图像的帧数相同,如何区分单个精灵使用的图像?
    • @Andy:就像我回答的简短版本一样:你不能。精灵大多是只写的(而且很好)。要么对抗它(通过自己管理框架),要么通过构建适当的模型来接受它。或者通过构建一个由 Sprites 索引的哈希表,其中包含图像。除非您的游戏是乒乓球,否则构建模型是您无法避免的事情,因此从长远来看,这是唯一不会糟糕的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多