在libgdx中按像素绘制形状

时间:2016-05-03 22:07:09

标签: libgdx drawing

我正在尝试在libgdx中绘制不断变化的形状,所以我不认为使用精灵会起作用,我想知道是否可以使用为每个像素调用的函数来绘制形状以确定是否应该画出来。

我需要绘制的是洗衣机的一部分(由两个同心圆和两个半径限定的区域),圆和半径不断变化。

我想知道的是,这里是一种绘制由函数确定的复杂形状的方法(形状由(x,y)组成,而不是图像

2 个答案:

答案 0 :(得分:1)

会使用Pixmap帮助吗?

你可以创建一个像素图:

Pixmap pixmap = new Pixmap(300, 300, Pixmap.Format.RGBA8888);

然后在该像素图上绘制具有特定颜色的像素:

pixmap.drawPixel(x, y, color);

然后,您可以从该像素图创建纹理并绘制纹理。我不确定这种解决方案的性能。

另请参阅libgdx wiki中的Pixmaps

答案 1 :(得分:1)

一切皆有可能。最佳解决方案实际上取决于您要创建的内容的详细信息。也许你可以举例说明你的意思?

如果没有看到示例,您可能希望从ShapeRenderer开始。有关如何使用它的详细信息,请参阅the javadocs。这应该让你开始,如果你发现它在某种程度上是不够的,那么至少你有更多的specific question

顺便说一句,使用@Ludevik建议的Pixmap也是可能的,但是因为你希望它不断变化,这意味着每帧都不能很好地上传整个图像。