Java me 在j2me中设置图像

Java me 在j2me中设置图像,java-me,sprite,midp,Java Me,Sprite,Midp,我正在用j2me开发一个游戏。我正在使用一个精灵的4组图像,并改变相应的图像精灵使用。我在运行时将图像随机设置为sprite 如何知道精灵在运行时正在使用哪个图像 简短版本:你不能也不应该 长版本:两种常见模式(我将同时使用它们)是: 始终为所有精灵(和瓷砖,以及其他所有内容)使用一个图像。然后通过更改sprite的帧或帧序列来修改sprite 应用基本模型/视图分离。不要把你的观点(SpRITE)当作你游戏状态的知识来源,把它看作是唯一的资源。游戏的状态存在于某个模型类中,该模型类很清楚(可

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


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

简短版本:你不能也不应该

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

  • 始终为所有精灵(和瓷砖,以及其他所有内容)使用一个图像。然后通过更改sprite的帧或帧序列来修改sprite

  • 应用基本模型/视图分离。不要把你的观点(SpRITE)当作你游戏状态的知识来源,把它看作是唯一的资源。游戏的状态存在于某个模型类中,该模型类很清楚(可能在更抽象的层次上)将哪个图像设置为哪个精灵。这种方法将解决更多的问题,其中一些问题在发生之前很难察觉(例如,在失去生命后发生任何动画的情况下,精灵的逻辑和物理位置之间的差异,等等)


    • 简短版本:你不能也不应该这样做

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

      • 始终为所有精灵(和瓷砖,以及其他所有内容)使用一个图像。然后通过更改sprite的帧或帧序列来修改sprite

      • 应用基本模型/视图分离。不要把你的观点(SpRITE)当作你游戏状态的知识来源,把它看作是唯一的资源。游戏的状态存在于某个模型类中,该模型类很清楚(可能在更抽象的层次上)将哪个图像设置为哪个精灵。这种方法将解决更多的问题,其中一些问题在发生之前很难察觉(例如,在失去生命后发生任何动画的情况下,精灵的逻辑和物理位置之间的差异,等等)


      如果所有图像中的帧数都相同,如何区分单个精灵使用的图像?@Andy:就像我的答案的简短版本:你不能。精灵大多只写(这很好)。要么与之抗争(通过自己管理框架),要么通过构建适当的模型来接受它。或者通过构建一个包含图像的Sprites索引的哈希表来进行遍历。构建模型是你无法避免的事情,除非你的游戏是乒乓球,所以这是唯一一个从长远来看不会吃亏的解决方案。如果所有图像中的帧数都相同。如何区分单个精灵使用的图像?@Andy:就像我回答的简短版本:你不能。精灵大多只写(这很好)。要么与之抗争(通过自己管理框架),要么通过构建适当的模型来接受它。或者通过构建一个包含图像的Sprites索引的哈希表来进行遍历。构建模型是你无法避免的事情,除非你的游戏是乒乓球,所以从长远来看,这是唯一不会让你吃亏的解决方案。