配置 Google Play 游戏在 PC 上的图形

Google Play 游戏在 PC 上需要你更新游戏的图形功能并添加对大屏幕的支持。本主题介绍这些要求和相关建议。

以下是本页面要求和建议的摘要

纹理压缩

由于 Google Play 游戏在 PC 上尽可能地通过压缩纹理,因此你应该使用 DXTCBPTC 来利用 PC 硬件。有时如果需要模拟 OpenGL 功能以确保兼容性,这些纹理仍然需要解压缩,因此你应始终分析游戏。

诸如 ETC1ETC2 等格式在发送到原生图形堆栈之前,由 OpenGL 转换层解压缩。这些格式将继续工作,但不会像在移动硬件上预期的那样具有相同的内存或运行时效率优势。

图形 API

我们建议在 Google Play 游戏在 PC 上使用 Vulkan API 以获得最佳性能。

如果无法使用 Vulkan,请使用下面列出的 OpenGL ES 版本。

OpenGL ES 版本

Google Play 游戏在 PC 上支持 OpenGL ES 3.1。

为了保持与 Google Play 游戏在 PC 上的兼容性,请确保你在 AndroidManifest.xml 文件中未指定高于 OpenGL ES 3.1 的版本。

Vulkan 版本

Google Play 游戏在 PC 上支持 Vulkan 1.1。为了保持与 Google Play 游戏在 PC 上的兼容性,请确保你的游戏不需要高于 Vulkan 1.1 的版本。

提高最大帧率限制

一些玩家能够在 PC 上以比移动设备高得多的帧率运行你的游戏。为了给你的玩家带来最佳体验,我们建议确保帧率上限至少为 60 fps 或完全移除帧率限制。

大屏幕优化

Google Play 游戏在 PC 上需要以下大屏幕优化

高分辨率资产和纹理

Google Play 游戏在 PC 上支持高达 4k 的分辨率,并且你可以期望其性能水平与过去 12 个月发布的高端 Android 设备相匹配。为较小的手机屏幕设计的纹理和资产在 PC 上的 4k 大显示器上查看时会降低玩家对游戏的感知。如果可能,请确保在首次启动时提供高分辨率资产。

如果你正在使用 不透明二进制 Blob OBB 文件(也称为 APK 扩展文件)来提供资产,则其他高分辨率资产可能会导致总大小超过 2 GB 主文件加 2 GB 修补程序的 OBB 限制)。在这种情况下,请考虑使用 Play Asset Delivery 来提供你的资产。

使用 Play Asset Delivery,你可以自动提供与设备最佳支持的纹理压缩格式匹配的纹理,而不会增加游戏大小。你还可以根据设备的性能水平定位设备,并相应地自动提供更高或更低分辨率的纹理。

Play Asset Delivery 在 Unity 5.6 及更高版本(通过 Play Asset Delivery Unity 插件)和 虚幻引擎 4.25 上受支持。对于其他引擎,我们提供 Java 和原生 SDK

UI 缩放

在大屏幕上,你可能需要调整游戏的 UI 以确保所有元素都具有适当的大小。我们建议 HUD 占用屏幕面积不超过 20%。

长宽比

Google Play 游戏在 PC 上需要支持 16:9 的长宽比。为了获得理想的玩家体验,游戏还应支持 21:9、16:10 和 3:2。

纵向模式

纵向模式游戏只需要支持 9:16 的长宽比。如果你的游戏缺乏横向支持,则 Google Play 游戏在 PC 上将在全屏模式下渲染黑边。

动态显示

Google Play 游戏在 PC 上在游戏启动后永远不会更改游戏的逻辑分辨率、显示密度或长宽比。尽管如此,玩家可以在全屏和窗口模式之间切换游戏。在窗口模式下,玩家还可以自由地以保持固定长宽比的方式对角调整窗口大小。这意味着你的游戏不必处理调整大小事件以适应典型的桌面窗口化范例,但也意味着你不能依赖显示密度作为游戏内元素易读性的指标。

选择分辨率

Google Play 游戏在 PC 上为你的游戏提供与玩家的主显示器和你在 应用清单 中宣传的支持之间最接近匹配的长宽比。默认分辨率是使用内部启发式算法选择的,以提供尽可能好的玩家体验。

玩家可以在他们的机器上覆盖游戏的默认分辨率。长宽比计算不会更改,但你在两次启动游戏之间渲染的像素数可能会有所不同。如果你依赖游戏启动之间报告的分辨率(例如在确定要缓存和渲染哪些资产时),这一点很重要。Google Play 游戏在 PC 上的开发者模拟器在用户更改分辨率后会重新启动,因此你无需在运行时处理此更改。

最佳实践

为了给您的玩家带来最佳体验,请执行以下操作

  • 如果您的游戏在纵向模式下运行效果最佳,并且玩家可能在多任务处理时玩游戏,请设置 android:screenOrientation="portrait"。这将确保您的游戏窗口始终保持纵向。
  • 使用 android:minAspectRatioandroid:maxAspectRatio 指定支持的最小和最大纵横比,以将您的游戏限制在经过验证的纵横比范围内。在该范围内彻底测试您的游戏,并特别注意极宽、正方形和高纵横比下的情况。
  • 尽管 Google Play 游戏在 PC 上会报告 DPI,但在游戏活动期间该值不会发生变化。因此,无法确定游戏内元素的物理尺寸,最好根据屏幕尺寸的比例来放置游戏元素,而不是尝试 匹配基于物理的尺寸单位
  • 测试您的游戏元素在笔记本电脑屏幕上以及窗口模式下的可读性。
  • 让玩家在游戏中控制 UI 缩放,以便他们可以调整游戏内元素或文本的大小,以满足其个人喜好或环境需求。这有助于避免玩家仅为了放大文本而降低游戏分辨率(从而降低可见质量)。

动态显示测试

Google Play 游戏在 PC 上的开发者模拟器没有用于验证分辨率和纵横比的每个潜在组合的广泛的基于 GUI 的控件。要模拟以特定分辨率运行您的游戏,请在您的 adb shell 中使用 wm size 命令。例如,要以 4K 测试游戏,请使用以下命令

adb shell wm size 3840x2160

您可以使用以下命令重置显示比例

adb shell wm size reset