C# 屏幕分辨率更改后如何刷新屏幕?
我已经设法让我的游戏在运行时/在游戏中(在初始选择之后)更改其分辨率。然而,我注意到,当从1920x1080到800x600时,我在前面的图像/内容的两侧得到了一个边框 例如,“我的菜单”显示在最右侧,当缩小到800x600时,最右侧的菜单仍保留,但不可交互(它只是一个图像),而“实际菜单”则显示在左侧几百个像素C# 屏幕分辨率更改后如何刷新屏幕?,c#,unity3d,resolution,screen-resolution,aspect-ratio,C#,Unity3d,Resolution,Screen Resolution,Aspect Ratio,我已经设法让我的游戏在运行时/在游戏中(在初始选择之后)更改其分辨率。然而,我注意到,当从1920x1080到800x600时,我在前面的图像/内容的两侧得到了一个边框 例如,“我的菜单”显示在最右侧,当缩小到800x600时,最右侧的菜单仍保留,但不可交互(它只是一个图像),而“实际菜单”则显示在左侧几百个像素 我想问的是,有没有一种方法可以让我的比赛在有人改变决断的时候变得黑暗?如果有帮助的话,我可以提供关于我的图片:)解决了它。由于某种原因,我最初尝试用一个黑色的四边形“重置”屏幕的尝试失
我想问的是,有没有一种方法可以让我的比赛在有人改变决断的时候变得黑暗?如果有帮助的话,我可以提供关于我的图片:)解决了它。由于某种原因,我最初尝试用一个黑色的四边形“重置”屏幕的尝试失败了。但在再次尝试之后,这似乎奏效了 通过创建四边形(或纹理)并将颜色设置为黑色(或您希望设置屏幕的任何其他颜色)并将其移出,当调用屏幕分辨率时,我只需变换纹理/四边形的位置以覆盖画布/屏幕,然后重新加载级别,并将分辨率设置为新选择的分辨率,然后重新载入我的菜单。下面的代码显示了它,以防其他人也遇到与我相同的问题 这似乎工作得很好,可以重复多次用户想要的
public void ApplyResolutionChange (GameObject menu)
{
GameObject blank = GameObject.Find ("BlankScreen");
blank.transform.position = new Vector3 (0, 0, 100);
Application.LoadLevel (0);
Screen.SetResolution (resolutionX, resolutionY, isFullscreen);
}