【问题标题】:LIBGDX drawables on devices with different densities/resolutions具有不同密度/分辨率的设备上的 LIBGDX 可绘制对象
【发布时间】:2015-04-01 12:04:34
【问题描述】:

我是 LIBGDX 游戏开发的新手,我遇到了第一个问题。我使用纹理打包器创建了 9.patch 可绘制对象(按钮)。此可绘制对象可用于低密度和超高密度屏幕,质量相同。

如果我使用桌面项目上的可绘制项目运行我的项目,则显示的图像正常且尺寸完美。如果我在低密度 android 设备上运行项目,drawable 会变得很大(几乎是屏幕的一半)。而且,如果我在超高密度的 android 设备上运行项目,按钮会变得非常小。

所以我的问题是,如何在 LIBGDX 中处理可绘制对象,因此无论分辨率/密度如何,比率(屏幕:图像大小)都保持不变......?

【问题讨论】:

  • 是文字按钮、图片按钮还是其他?

标签: java android libgdx


【解决方案1】:

如果您的按钮是文本按钮。更改文本的字体。

如果您使用的是图片按钮,this 可能会对您有所帮助

【讨论】:

    【解决方案2】:

    这取决于您要绘制的内容...如果您只是绘制图像,我发现在 draw 方法的最后 2 个参数中指定浮点宽度和高度更容易。如果您使用具有固定视口大小的相机,您可以简单地使用相机视口的固定百分比,这样它就始终是相同的尺寸并像这样绘制:

    batch.draw(drawable,x,y,screenwidth * 0.5f,screenheight*0.5f);
    

    但是,如果您在表格中使用按钮或其他小部件,则应指定单元格大小,并且应根据表格单元格的大小自动调整其大小。比如:

    myTable.add(myWidget).width(300).height(200);
    

    如果有机会,请准确发布您需要绘制的内容,这样会更容易弄清楚需要做什么。

    【讨论】:

    • 我目前正在制作菜单。我已将 TextButton 添加到舞台,并将舞台添加到表格并使用“stage.draw()”在屏幕上绘制所有内容。你能告诉我更多关于固定视口大小的信息吗?我认为这是正确的方法,但我不知道该怎么做。谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 2018-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多