LibGDX - 圆形纹理
问题描述:
我想知道是否有可能在LibGDX中为纹理赋予形状。LibGDX - 圆形纹理
特别是,我有一个纹理,我想制作一个按钮。为此,我想给它一个圆角的形状。
概括地说,我有这样的:
,我想这一点:
我已经阅读过任何明确的答案有些类似的问题。有没有人遇到这个问题,并找到了一个聪明的解决方案?
答
使用波纹管方法创建圆角纹理图像,然后向其添加文本。
public static Texture createPixmapRoundCornerRect(Color color, int width,
int height, int radius) {
Pixmap pixmap = new Pixmap(width, height, Format.RGBA8888);
pixmap.setColor(color);
pixmap.fillCircle(radius, radius, radius);
pixmap.fillCircle(width - radius, radius, radius);
pixmap.fillCircle(width - radius, height - radius, radius);
pixmap.fillCircle(radius, height - radius, radius);
pixmap.fillRectangle(0, radius, width, height - (radius * 2));
pixmap.fillRectangle(radius, 0, width - (radius * 2), height);
Texture pixmaptex = new Texture(pixmap);
pixmap.dispose();
return pixmaptex;
}
的纹理始终是一个矩形,但你可以把透明的源图像(Alpha通道),并具有调开启(SpriteBatch)绘制它让你描述的效果。我认为这是如此基础以至于每个人都知道这一点是理所当然的,所以在任何文档或教程中都没有提到它。 – Tenfour04
我当然知道 - .- –
我想知道我是否可以动态地做到这一点!因为我需要为其他用户使用矩形图像,但我需要将其舍入为菜单 –