在libGDX库中存储资源的最佳实践是什么?我知道我可以使用AssetManager
,例如我可以将 android 文件夹中的资源链接到 iOS,但我不知道它在多平台设备上的行为如何。资源根据屏幕大小/操作系统进行缩放,或者我需要在每个平台资源文件夹中手动设置不同的大小或资源。我想避免任何卵形或拉伸行为。
有很多方法可以解决这个问题,没有"最佳"解决方案。但是,如果您已经为Android构建,只需使用android资产文件夹即可。这是默认值,将用于其他构建(由于默认的 libgdx 项目配置)。
只有当你告诉它们时,资源才会扩展。您可以选择使用视口(适合/填充视口不会拉伸,但可以添加没有默认纵横比的黑色/背景条)。但您也可以选择使用纵横比和比例自行实现屏幕依赖关系。
例如:
1080x1920 手机与 1440x1920 平板电脑 如果您使用合适的视口,则平板电脑上将有未使用的空间。如果您使用填充视口,您可能会丢失手机上的内容。但是,如果您将手机作为默认纵横比并计算平板电脑的宽度偏移量 (1440-1080/2),则可以使用此值选择将演员/精灵放置在俯卧位(通过使用此偏移量)或相对于屏幕边缘(通过使用屏幕尺寸)相同的位置。我个人使用它来放置相对于屏幕和游戏本身的 UI 与手机上相同。您甚至可以根据纵横比选择使用不同的布局。
请注意,通过这种方式,您还必须计算全局比例并在应用程序的各个位置使用它。这可能很乏味,但为您提供了更多的控制!
因此,如果你有一个简单的游戏,你不关心平板电脑或不同的屏幕尺寸,我建议你从一个合适的视口开始。
附言不确定"多平台设备"是什么意思,但正如我所说,默认的libGDX设置在这里完成了繁重的工作,所以我建议您使用它!