设置Unity单机版Windows构建的最低分辨率。

问题描述 投票:0回答:1

我正在寻找一种整洁的方法来设置Windows下Unity单机构建的最低分辨率。

Unity版本:2019.1.2f1

目前正在使用下面的Update里面。

#if !UNITY_EDITOR
if (Screen.width < 800 || Screen.height < 450)
   Screen.SetResolution(800, 450, false);
#endif
c# unity3d
1个回答
0
投票

你的代码看起来不错。没有其他方法来设置最小分辨率。

但你必须把它从Update循环中移出. 调用所有的帧是不太行得通的,而且我没有看到有效的情况下,一个分辨率可能在运行时自己改变。

我建议把这个脚本放到 AwakeMonoBehaviour 在你游戏的第一个场景中。

public class ResolutionStarer : MonoBehaviour
{
     private void Awake()
     {
#if !UNITY_EDITOR
         if (Screen.width < 800 || Screen.height < 450)
            Screen.SetResolution(800, 450, false);
#endif
     }
}

你也可以看看 此剧本 (麻省理工学院的一个库),处理分辨率,并为你提供更多的选项,如改变分辨率或设置游戏窗口化。

不过,为了这个问题,他们还是使用了同样的检查方法,针对的是 Screen.widthScreen.height 以免低于 _minWidth_minHeight 的决议。而且他们使用同样的方法 Screen.SetResolution 来设置分辨率。

© www.soinside.com 2019 - 2024. All rights reserved.