程序构建后分辨率会发生变化
Resolution changes once program is built
我正在以 1920x1080 分辨率(与我的显示器相同)创建一个 Unity 项目。在 Unity 编辑器中测试程序时一切看起来都很好——但是,一旦构建,分辨率就会变为不可用状态。
我可以选择更改分辨率,但是,我认为这不是问题所在,因为甚至在更改设置之前分辨率就乱七八糟了。
截图:
In Unity , Built
这里有一些代码片段,如果我仔细查看了某些内容,它们可能是问题的原因。代码来自这个tutorial。
void Start ()
{
resolutions = Screen.resolutions;
currentResolutionIndex = PlayerPrefs.GetInt(RESOLUTION_PREF_KEY, 0);
SetResolutionText(resolutions[currentResolutionIndex]);
}
private void SetAndApplyResolution(int newResolutionIndex)
{
currentResolutionIndex = newResolutionIndex;
ApplyCurrentResolution();
}
private void ApplyCurrentResolution()
{
ApplyResolution(resolutions[currentResolutionIndex]);
}
private void ApplyResolution(Resolution resolution)
{
SetResolutionText(resolution);
Screen.SetResolution(resolution.width, resolution.height, Screen.fullScreen);
PlayerPrefs.SetInt(RESOLUTION_PREF_KEY, currentResolutionIndex);
}
您需要在独立播放器设置Resolution and Presentation section中设置分辨率
您将能够设置 window 从独立版本打开时的显示方式。
您可以通过脚本在 Start() 中设置分辨率并写入此行
Screen.SetResolution(1920,1080,false);
这会将您的默认分辨率设置为 1920*1080。
试试这个,希望对你有帮助。
为了解决这个问题,我刚刚使用了 Unity 的内置 'display resolution dialogue'。
这看起来有点偷懒,但是,它完美地解决了问题,并且还提供了图形选项更改。
也许以后我会回来合并分辨率设置,但现在启动游戏前的短弹窗没问题。
我正在以 1920x1080 分辨率(与我的显示器相同)创建一个 Unity 项目。在 Unity 编辑器中测试程序时一切看起来都很好——但是,一旦构建,分辨率就会变为不可用状态。
我可以选择更改分辨率,但是,我认为这不是问题所在,因为甚至在更改设置之前分辨率就乱七八糟了。
截图: In Unity , Built
这里有一些代码片段,如果我仔细查看了某些内容,它们可能是问题的原因。代码来自这个tutorial。
void Start ()
{
resolutions = Screen.resolutions;
currentResolutionIndex = PlayerPrefs.GetInt(RESOLUTION_PREF_KEY, 0);
SetResolutionText(resolutions[currentResolutionIndex]);
}
private void SetAndApplyResolution(int newResolutionIndex)
{
currentResolutionIndex = newResolutionIndex;
ApplyCurrentResolution();
}
private void ApplyCurrentResolution()
{
ApplyResolution(resolutions[currentResolutionIndex]);
}
private void ApplyResolution(Resolution resolution)
{
SetResolutionText(resolution);
Screen.SetResolution(resolution.width, resolution.height, Screen.fullScreen);
PlayerPrefs.SetInt(RESOLUTION_PREF_KEY, currentResolutionIndex);
}
您需要在独立播放器设置Resolution and Presentation section中设置分辨率
您将能够设置 window 从独立版本打开时的显示方式。
您可以通过脚本在 Start() 中设置分辨率并写入此行
Screen.SetResolution(1920,1080,false);
这会将您的默认分辨率设置为 1920*1080。
试试这个,希望对你有帮助。
为了解决这个问题,我刚刚使用了 Unity 的内置 'display resolution dialogue'。
这看起来有点偷懒,但是,它完美地解决了问题,并且还提供了图形选项更改。
也许以后我会回来合并分辨率设置,但现在启动游戏前的短弹窗没问题。