我创建了一个小的screenmanager(用于处理多个场景),其中每个类都从名为Screen的自定义类扩展,并在其加载方法中执行以下操作(例如):
public Scene load() {
BitmapTextureAtlas mBitmapTextureAtlas = new BitmapTextureAtlas(512, 1024, TextureOptions.BILINEAR_PREMULTIPLYALPHA);
SceneManager.loadTexture(mBitmapTextureAtlas);
scene.attachChild(bgSprite);
return scene;
}
问题在于,有时,如果你在屏幕之间快速移动,一些精灵不会被渲染,有时它们是(它取决于我在场景之间切换的速度)。
我想问题可能是我将sprite附加到场景中时它们仍未完全加载到内存中。是真的吗?知道如何解决这个问题吗?
答案 0 :(得分:1)
是的,如果您在场景中移动会发生这种情况,因此您可以为精灵设置布尔标志。如果为true则执行操作。它在执行collisionDetections时特别有用。