LibGDX:如何更改单个精灵颜色?

时间:2017-10-05 10:20:17

标签: java libgdx

我尝试在LibGDX(Java)中更改单个精灵的颜色。例如,我想更改显示蓝色工作表的.png的颜色。像这样:

Sprite sprite = new Sprite(new Texture("blue_sheet.png");
sprite.setColor(Color.RED);

有方法sprite.setColor(Color tint),但它确实没有 :(如果我使用SpriteBatch.setColor(Color.RED)它会工作,但逻辑上会在所有精灵上应用颜色,我不希望来实现这一点。

2 个答案:

答案 0 :(得分:4)

它只有3行代码:)

Sprite sprite = new Sprite(new Texture("blue_sheet.png");

batch.setColor(Color.RED);
sprite.draw(batch);
batch.setColor(Color.WHITE);

答案 1 :(得分:1)

这可以解决您的问题。

Libgdx change color of Texture at runtime

它着眼于根据图像的像素创建一个像素图。根据每个像素的颜色,您可以在像素图上绘制相应的颜色。