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

问题描述:

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

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

有方法sprite.setColor(颜色色调),但它确实什么 :(如果我用SpriteBatch.setColor(Color.RED),它会工作,但在逻辑上会应用的颜色上的所有精灵,我鸵鸟政策想到archieve这一点。

+0

你试过设置批次色差回白色,当你与你的第一个彩色的精灵呢? – kacpr

这可能会解决你的问题。

Libgdx change color of Texture at runtime

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

它只有3行代码:)

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

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

谢谢,但我已经知道了:D –