在当今竞争激烈的游戏市场中,接触尽可能广泛的受众比以往任何时候都更加重要。通过为不同的屏幕尺寸(例如手机、平板电脑、折叠屏和桌面)开发游戏,您可以利用更大的潜在玩家群体,并增加成功的机会。
支持屏幕可调整大小
为了支持不同的屏幕尺寸,您的游戏必须能够调整大小。可调整大小的功能使您的游戏能够支持诸如纵向和横向方向、多窗口模式以及折叠屏设备的折叠和展开状态等设备配置。
如果您的游戏不支持所有窗口大小和方向配置,平台会将您的游戏放在兼容模式中,并在必要时在更改为不支持的配置之前提示玩家。
有关更多信息,请参阅支持大屏幕可调整大小。
多窗口模式
多窗口模式允许多个应用程序同时共享同一屏幕。应用程序可以并排显示或一个在上一个在下(分屏模式)、一个应用程序以小窗口覆盖其他应用程序(画中画模式)或各个应用程序在单独的可移动、可调整大小的窗口中(自由形式模式)。
为了避免在游戏在多窗口模式下运行时进入兼容模式,请声明您的游戏能够处理可调整大小的功能,方法是在Unity构建设置中启用“可调整大小的窗口”选项。
显示缺口
一个显示缺口是某些设备上延伸到显示表面的区域。缺口允许边缘到边缘的体验,同时为设备前部的重要传感器提供空间。
为了为您的游戏带来边缘到边缘的体验,请配置游戏以支持安全区域。查询Unity safeArea API以获取屏幕的安全区域(以像素为单位),并相应地调整您的游戏UI和UX,尤其是用户可以交互的元素。
折叠姿势
折叠屏设备可以处于各种折叠状态,例如FLAT
(完全展开)或HALF_OPENED
(介于完全展开和完全折叠之间)。当设备处于HALF_OPENED
状态时,根据折叠的方向,可能有两种姿势:桌面姿势(水平折叠)和书籍姿势(垂直折叠)。使用桌面姿势来增强玩家的沉浸感和参与度。
要实现桌面姿势,请扩展默认的Unity活动,然后使用Jetpack WindowManager布局库来使您的游戏能够识别折叠。
Unity示例项目
Unity示例项目基于Unity 2D演示项目Lost Crypt。该示例项目演示了如何在Unity中支持大屏幕可调整大小的功能。大屏幕和折叠屏设备支持需要对Unity构建选项进行一些更改,以及在相机和UI画布布局中进行考虑。
该示例项目可供立即下载。该项目包含四个不同的场景
- 原始:支持基本的可调整大小的功能
- 锚定:与“原始”场景相同,但适应各种纵横比并避免显示缺口
- 铰链感知:与“锚定”场景相同,但支持桌面姿势
- 主菜单:起始场景,允许导航到其他场景,并完全支持所有设备方向、折叠、展开和桌面姿势
在构建Android版本时,选择所有场景并将“主菜单”场景设置为起始场景。
从可调整大小的窗口支持开始
在您的Android大屏幕应用程序中实现对各种显示尺寸和纵横比的支持,以确保您的游戏或应用程序在不同的设备上正确显示。通过在Unity构建设置中设置“可调整大小的窗口”属性来启用游戏调整大小和更改纵横比(请参阅“多窗口模式”部分)。调整相机和画布的纵横比以更好地适应不同的屏幕。在构建设置和Plugins/Android/AndroidManifest.xml
文件中查看项目设置。在项目的“原始”场景中体验全屏可调整大小的功能。
在处理显示缺口的同时实现全屏沉浸式
启用您的游戏使用整个屏幕,以使游戏玩法更具沉浸感,从而获得增强的用户体验。更新您的游戏UI锚定和相机设置以自动调整屏幕大小。这允许UI元素保持其相对于屏幕大小的位置。
“锚定”场景使用CameraAspectLock
脚本通过扩展的活动(请参阅Assets/Plugins/Android/LargeScreenPlayableActivity.java
)来响应设备配置更改。Unity的safeArea API在SafeZoneAPI
脚本中进行了演示,该脚本绑定到“锚定”场景中的SafeZone
对象。
针对折叠屏设备进行优化
Unity示例项目的最后一个场景“铰链感知”包含一个ConfigurationManager
对象,该对象通过Jetpack库API和扩展的活动(请参阅Assets/Plugins/Android/LargeScreenPlayableActivity.java
)来响应目标设备的不同折叠状态。该场景使用PanelOnFold
脚本根据设备的折叠状态控制UI,例如,在设备处于桌面姿势时显示底部控制器面板并调整相机。