用textureRegion绘图

时间:2014-04-12 18:05:13

标签: libgdx spritebatch

我想知道如何使用作为组成员的textureRegion绘制actor。

让我说我是一群敌人。

private Group enemies;

private SpriteBatch batcher;

对于一个演员,我就是这样画的。

batcher = new SpriteBatch();
batcher.begin();
batcher.draw(textureRegion, actor position parameters vs vs);
batcher.end();

我想知道如何画这样的整个小组的演员? 绘图有method,但此方法不接受TextureRegion参数。

public void draw(Batch batch,
        float parentAlpha)

我可以像这样使用TextureRegion绘制组吗?

enemies.draw(textureRegion, vs vs);

1 个答案:

答案 0 :(得分:1)

使用scene2D(您的小组来自哪里)的重点是将游戏添加到游戏屏幕中的Stage。在render()方法中,您拨打Stage.act(delta)Stage.draw()。如果你不打算这样做,为什么不简单地使用TextureRegion的ArrayList或者#34; Enemy"类?

如果您坚持使用Group,您可以尝试遍历该组的每个成员并获取其关联的TextureRegion,但大多数Actors都无法直接访问它,除非您尝试强制转换它们{{1进入一个混乱的getDrawable()

我建议你看一下https://github.com/libgdx/libgdx/wiki/Scene2d。如果使用得当,Scene2D可以让您在单独使用TextureRegionDrawable时获得很多力量和便利。