- 1:介绍
- 2:环境
- 3:方法1
- 4:方法2
- 5:方法3
- 6:方法4
- 7:方法5
- 8:参考
介绍
它在 Player of Project Display Resolution Dialog
Settings 中,但从Unity 2019.3 左右消失了。
- 2018.4 手册
https://docs.unity3d.com/ja/2018.4/Manual/class-PlayerSettingsStandalone.html - 2019.4 手册
https://docs.unity3d.com/ja/2019.4/Manual/class-PlayerSettingsStandalone.html
就我个人而言,我经常想稍微调试或更改分辨率,因此我认为我以后必须自己处理它。
以下是我想到的方法。
环境
- Windows10
- Unity 2019.3及以后版本
方法1
实现 UI 和函数来指定 Unity 场景中的分辨率。
UnityEngine.Screen.SetResolution
如果你在它运行时调用它,分辨率就会改变。
但是,实施起来不方便,不够灵活。
Screen-SetResolution --Unity 脚本参考
|
方法2
创建一个显示分辨率对话框(启动器)。
如果您准备将命令行参数传递给 Unity 导出的 exe 的 启动器,它就像以前一样以指定的分辨率启动。
由于可以在启动Unity程序之前指定,所以没有屏幕切换,很流畅。
- -屏幕全屏
- -屏幕高度
- -屏幕宽度
- - 屏幕质量
~~.exe -screen-width 1280 -screen-height 720
但是,需要单独写一个启动器程序。
命令行参数 --Unity 手册
|
方法3
直接传递命令行参数。
方法(2)实现启动器比较困难,所以在Windows的命令提示符或快捷方式中传递参数并立即启动它也是可以的。
如果是快捷方式,则如下所示。
- 为Unity导出的exe创建快捷方式。
- 打开属性并在链接后添加一个参数。
方法4
在第一个场景中写一个设置分辨率的界面,设置好之后再进入main场景。
参考:https://github.com/sitterheim/UnityResolutionDialog
方法5
这个方法是unity官方提供的,我没有亲自尝试过,好像是替换掉打包好的exe文件。 按下面方法
参考:https://github.com/Unity-Technologies/DesktopSamples/tree/master/ScreenSelectorExample
将示例工程下载下来,发现核心代码就两个文件ClosingScript.cs、PostProcessLauncherCopy.cs。
将这两个文件拷贝到自己的工程任意位置(最好归下类scripts)中后,发布前要将LauncherExecutable文件夹也复制到自己的工程assets文件夹同目录下,否则提示错误。
运行程序,就会弹出选择分辨率的对话框了。
2022/08/17