TextureRegion拆分不起作用

时间:2014-11-06 21:17:49

标签: java android libgdx

当我尝试分割纹理时,它会起作用,当我在屏幕上绘制时,它会绘制与原始纹理相同的4个纹理。我使用以下代码来分割纹理。

texture = new Texture(Gdx.files.internal("fondo1.png"));
TextureRegion[][] regs = TextureRegion.split(texture, texture.getWidth() / 2, texture.getHeight() / 2);
Random rand = new Random();
        int x,y;
        for (int i=0; i < regs.length; i++){
            for (int j = 0; j < regs[i].length; j++){
                x = rand.nextInt(500);
                y = rand.nextInt(500);
                parts.add(new ImageActor(regs[i][j].getTexture(),x,y, regs[i][j].getRegionWidth(), regs[i][j].getRegionHeight()));
            }
        }

然后将纹理加载到Actor子类中并通过stage进行绘制。

有什么建议吗? 感谢

1 个答案:

答案 0 :(得分:1)

我怀疑你的问题出现在ImageActor构造函数的第一个参数中。您通过调用regs[i][j].getTexture()发送完整纹理。

getTexture()的{​​{1}}方法返回区域引用的完整纹理。

您应该发送TextureRegion,然后修改TextureRegion regs[i][j],以便它可以接收并绘制ImageActor