在LibGDX中,我目前正在尝试实现像素化GUI的效果,这意味着按钮是像素化的,就像8位主题一样.
当我制作我的GUI元素(例如TextButton)时,我使用的是较小的图像,例如34×16像素,但我使用像1920×1080这样的大分辨率渲染它们.以高分辨率渲染如此小图像的最佳方法是什么?
我的想法是使用stage.setViewport(WIDTH,HEIGHT),并将宽度和高度设置为按比例缩小的分辨率,因此gui元素不会那么大.这有效,但是当添加元素时出错了.
这是我的舞台/桌子,使用缩小的分辨率.我正在使用这样的表添加小部件:
table.add(playButton);
table.row();
table.add(title);
但正如您所看到的,table.row()会产生一个太大的行,可能是一行适合更大的分辨率.有没有办法改变行所造成的差距?我原本认为差距为零,并且通过使用table.add().pad()你可以改变差距,但我没有做任何事情.
任何帮助将不胜感激.
最佳答案 Ninepatch
这是所有应用中的常见问题.为了克服这个问题,使用可以安全地重新调整大小的图像.他们被称为九个补丁.
这是关于在libgdx中使用它们的一个很好的Tutorial.
距离场字体
虽然你在这里没有提到它,但你也会发现字体大小(像素化字体)是一个问题.因为使用了Distance Field Fonts.
希望这可以帮助.