1

我有一个背景纹理,并想将其更改为其他背景纹理。我已经阅读并测试了一些关于背景纹理的样本,但第二个背景没有显示。

这是我用来尝试更改的最后一个代码......有人可以帮忙吗?谢谢

    Scene scene1 = new Scene();
    ITexture backgroundTexture1 = null;
    try {
        backgroundTexture1 = new BitmapTexture(this.getTextureManager(), new IInputStreamOpener() {
            @Override
            public InputStream open() throws IOException {
                return getAssets().open("gfx/crackedscreen.png");
            }
        });
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    backgroundTexture1.load();
    this.mBackgroundTextureRegion1 = TextureRegionFactory.extractFromTexture(backgroundTexture1);
    Sprite backgroundSprite = new Sprite(0, 0, this.mBackgroundTextureRegion1, getVertexBufferObjectManager());
    scene1.attachChild(backgroundSprite);
    scene1.setBackgroundEnabled(true);
    return scene1;
4

1 回答 1

2

我在使用 Sprites 更改背景时也遇到了一些麻烦。我终于成功使用了 SpriteBackground。只需从您的 Sprite 创建一个:

SpriteBackground background = new SpriteBackground(backgroundSprite);

不要调用 attachchild,而是调用 setBackground:

scene.setBackground(background);
于 2013-04-04T14:14:38.730 回答